Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Phase 1 state machines #2829

Merged
merged 36 commits into from
Sep 19, 2024
Merged

Phase 1 state machines #2829

merged 36 commits into from
Sep 19, 2024

Conversation

garthwatney
Copy link
Contributor

@garthwatney garthwatney commented Aug 13, 2024

Change Description

Add FPP support for state machine phase 1

  • Update requirements.txt to support updated FPP version
  • Add a new FPP type in Fw for state machine signals
  • Added new unit test in FppTest/state_machine
  • New key words need the $ escape

Rationale

Support state machines in the FPP

Testing/Review Recommendations

Run the unit tests in FppTest

Future Work

state machine phase 2 is coming which supports the full specification of state machines in FPP

Check list

@bocchino bocchino changed the title Sm test Phase 1 state machines Aug 14, 2024
@thomas-bc thomas-bc added this to the Release v3.5.0 milestone Aug 21, 2024
@garthwatney garthwatney marked this pull request as ready for review September 5, 2024 20:24
@thomas-bc
Copy link
Collaborator

thomas-bc commented Sep 5, 2024

The LedBlinker tests are failing because the external repository hasn't been updated to take into account the new reserved keyword state

I created a branch https://github.com/fprime-community/fprime-workshop-led-blinker/tree/pr-2829

Changes need to be pushed there so that the build (and CI) can succeed

Copy link
Collaborator

@LeStarch LeStarch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good. Will confirm comments were addressed.


namespace Fw {

SmSignalBuffer::SmSignalBuffer(const U8 *args, Serializable::SizeType size) : m_bufferData{} {

Check notice

Code scanning / CodeQL

Use of basic integral type Note

size uses the basic integral type unsigned long rather than a typedef with size and signedness.
@bocchino bocchino self-requested a review September 19, 2024 18:40
Copy link
Collaborator

@bocchino bocchino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! I see my comments were addressed.

@LeStarch LeStarch merged commit d2bcd0e into nasa:devel Sep 19, 2024
46 of 48 checks passed
@LeStarch
Copy link
Collaborator

Merging in-lieu of known CI failures.

thomas-bc added a commit to fprime-community/fprime-workshop-led-blinker that referenced this pull request Sep 19, 2024
@LeStarch LeStarch added the Update Instructions Needed Need to add instructions in the release notes for updates. label Sep 19, 2024
kevin-f-ortega pushed a commit to fprime-community/fprime-workshop-led-blinker that referenced this pull request Oct 10, 2024
LeStarch added a commit to fprime-community/fprime-workshop-led-blinker that referenced this pull request Oct 16, 2024
* Update fpp model (#56)

* Fixing changes to OSAL Tasks (#65)

Co-authored-by: Michael D Starch <Michael.D.Starch@jpl.nasa.gov>

* Update hpp copy paste code to include the override keyword to match the generated code (#68)

* Update instructions to reference install guide (#57)

* Update pre-requisites (#59)

* Update project name (#60)

* Add override to parameterUpdated (#63)

* Fix typos in requirements.md (#64)

* Update fprime git submodule to use https (#66)

* update hpp copy paste code to include the override keyword to match the generated code

---------

Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
Co-authored-by: Nate Gay <email@n8.gay>
Co-authored-by: Roberto Valenzuela <valenzuelarober@gmail.com>
Co-authored-by: Joshua Anderson <joshua.l.anderson@jpl.nasa.gov>
Co-authored-by: crsmith <celeste.r.smith@jpl.nasa.gov>

* Fixes for nasa/fprime#2831  (#71)

* Fixes for nasa/fprime#2831

* Missing logger import

* Fixes for nasa/fprime#2823 (#73)

* update for compatibility with fpp #349

* update integration tests

---------

Co-authored-by: jawest <justine.a.west@jpl.nasa.gov>

* Update LedBlinkerPackets.xml (#74)

Remove systemResources TLM channels from deployment so pr-2866 can run successfully

Co-authored-by: Shivaly-Reddy <164100839+Shivaly-Reddy@users.noreply.github.com>

* Phase 1 State Machine changes (nasa/fprime#2829) (#75)

* Reworking tutorial to match improved workflow

reordering the sections so they better match best software engineering practices
updated parameterUpdated to use a switch statement
formatting
enum argument checking happens under the hood; so, removing the check from command handler. Also removing the EVR from fpp
marking which portion of the documentation needs to be updated to remove non-existing evr
using async instead of sync. No real good reason to use sync here, and async makes the code implementation issuer (avoid using mutex)
removing mutex and its use since we switch run handler to async port
updating documentation to remove mutex/lock
using member variable convention
updated member variables to use correct name. also fixed formatting
updated documentation to use new member variables
updated documentation to use new member variables
updated documentation to use new member variables
Adding formatting file from fprime
added missing step
Added clarifying note
updated day of component implementation
typo
using async port. improving parameterUpdated function
Added sequence diagram explaining blink command
removed unneeded tlm xml section. cleaned up code to use switch statement
adding missing dodispatch now that the run port in an async port
Having this parameter is critical for the unit test portion. Add it here and not leave it up to the students to add
Updating uts so they don't depend on 'try it yourself' activity
updated UT doc
fixed typos
fixed markdown formatting
making comments and signatures consistent with latest fprime-util
formatting
adding default value to parameter
adding default value to parameter
typo
Readding param get try-it-yourself task. It's a good exercise for the students to have
Readding since it's better for the reader to exercise these aspects
simplified run handler
Updated documentation so that all design for day 1 is together and all initial implementation for day 2 is together. This better follows the design and implementation workflow that we use when developing software
minor format updates
Updating words per review
Updated documentation so that all design for day 2 is together and all continued implementation for day 2 is together. This better follows the design and implementation workflow that we use when developing software
Using event instead of EVR since the word event is more consitent throughout the tutorial
Formatting
Formatting
Fixing title
giving member variable a better name and updating code in tutorial to match latest code
Updated documents per review
Adding spoiler tags around answers
fixing camelcase and comments
fixed code formatting to match fprime's formatting
fixing formatting
Updating per review.
fixing. want to use camel case
fixed formatting of UTs

* fixing formatting of code

* updated fprime pointer to point to latest in devel

* updated to work with packet tlm xml commented out. Also loading parameters as we should be

* Updated pointer to use latest fprime tag 3.5.0

* Escaping key word

* typo

* fixing gpio configuration to match with fprime 3.5.0

* fixed code for config of gpio

* updated led blinker for fprime 3.5.0

* Adding answer so tut flows better

---------

Co-authored-by: Rob Bocchino <bocchino@icloud.com>
Co-authored-by: Thomas Boyer-Chammard <49786685+thomas-bc@users.noreply.github.com>
Co-authored-by: Michael D Starch <Michael.D.Starch@jpl.nasa.gov>
Co-authored-by: csmith608 <63731123+csmith608@users.noreply.github.com>
Co-authored-by: Nate Gay <email@n8.gay>
Co-authored-by: Roberto Valenzuela <valenzuelarober@gmail.com>
Co-authored-by: Joshua Anderson <joshua.l.anderson@jpl.nasa.gov>
Co-authored-by: crsmith <celeste.r.smith@jpl.nasa.gov>
Co-authored-by: M Starch <LeStarch@googlemail.com>
Co-authored-by: Justine West <35715959+jwest115@users.noreply.github.com>
Co-authored-by: jawest <justine.a.west@jpl.nasa.gov>
Co-authored-by: Shivaly-Reddy <164100839+Shivaly-Reddy@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Update Instructions Needed Need to add instructions in the release notes for updates.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants