Skip to content

Conversation

@moisesmata
Copy link
Collaborator

@moisesmata moisesmata commented Aug 21, 2025

  • Remove Led Blinking Command, parameter storing for blink interval
  • renamed to signify watchdog component
  • Provides a port and command to stop watchdog petting
  • Integration Test through GDS API included
  • Connected to 1hz rategroup

Known Issues:

  • When using stop watchdog command, order of EVRs is slightly wrong -- event emitted, then command dispatch, then command assertion.

@moisesmata moisesmata changed the title Update Led Component To Use Parameters Update Led -> Dedicated Watchdog Petter Aug 23, 2025
@moisesmata moisesmata changed the title Update Led -> Dedicated Watchdog Petter Add Watchdog Petter Component Aug 23, 2025
@moisesmata moisesmata requested a review from Mikefly123 August 23, 2025 02:25
@Mikefly123
Copy link
Contributor

I think this is looking great @moisesmata! Let's take the time to do a review when you're in the lab on Wednesday and if all looks good then I think we can go ahead and get this merged in

@moisesmata
Copy link
Collaborator Author

Thanks, sounds good!

Copy link
Collaborator

@nateinaction nateinaction left a comment

Choose a reason for hiding this comment

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

@Mikefly123 @moisesmata We mentioned in the meeting with @LeStarch that we want to require unit tests. Is that something we can set up with this PR?

namespace ReferenceDeployment_rateGroup1Hz {
enum { WARN = 3, FATAL = 5 };
}
namespace ReferenceDeployment_prmDb {
Copy link
Collaborator

Choose a reason for hiding this comment

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

What does prmDb stand for?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

prmDb is the parameter database component needed by default to use parameters in F'. When this was strictly an LED component, it used a parameter to vary the interval (like the tutorial). Now we just tick every rategroup and use no parameter, but will probably use parameters later on in the project, so I'd just keep this component in.

Copy link
Collaborator

Choose a reason for hiding this comment

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

How did you generate this svg?

Copy link
Contributor

Choose a reason for hiding this comment

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

I think this is now natively a part of the fprime-fpp extension on vscode!

fprime-community/vscode-fpp#12

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yeah! The vscode extension can now visualize topologies and components on the fly with real time updates! I can do a demo on Wednesday if we want! @nateinaction @Mikefly123

@Mikefly123
Copy link
Contributor

@Mikefly123 @moisesmata We mentioned in the meeting with @LeStarch that we want to require unit tests. Is that something we can set up with this PR?

Oh yeah, I hadn't thought about that since this is such a simple component, but it would be nice to get that going as soon as we can!

@nateinaction
Copy link
Collaborator

Any thoughts on keeping the LED component? I've been showing it to my team as we go through the fprime docs and playing in the GDS. Totally fine if we want to keep it on a branch. Just wanted to ask for thoughts. Thoughts?

@moisesmata
Copy link
Collaborator Author

@Mikefly123 @moisesmata We mentioned in the meeting with @LeStarch that we want to require unit tests. Is that something we can set up with this PR?

Oh yeah, I hadn't thought about that since this is such a simple component, but it would be nice to get that going as soon as we can!

Down to make a unit test for this, discuss more on Wednesday?

@moisesmata
Copy link
Collaborator Author

Any thoughts on keeping the LED component? I've been showing it to my team as we go through the fprime docs and playing in the GDS. Totally fine if we want to keep it on a branch. Just wanted to ask for thoughts. Thoughts?

I'm open to this! We can just assign it to a different led and keep it as a good way to test commands and get instant feedback.

@Mikefly123
Copy link
Contributor

Mikefly123 commented Aug 26, 2025

Any thoughts on keeping the LED component? I've been showing it to my team as we go through the fprime docs and playing in the GDS. Totally fine if we want to keep it on a branch. Just wanted to ask for thoughts. Thoughts?

I'm open to this! We can just assign it to a different led and keep it as a good way to test commands and get instant feedback.

At the moment there actually aren't any additional LEDs that won't have another purpose in flight (the UART line has status LEDs, the white ones on the back of the board!). Maybe a good way to do this is to split the LED blinker component into its own LED tutorial deployment and abstract it into a GPIO manipulator component?

Not sure how possible this is with the current Zephyr setup (since I think I remember you saying you were using the Zephyr LED type as a basis for this component) but the idea is you can add to the component a parameter that lets you select from a list of options all of the GPIO on the RP2350 then set any of them to be on/off/blinking. That way it can also be used as a more general hardware tutorial as well or a middleware for controlling GPIO if we want to overcomplicate the downstream code lol

@Mikefly123 Mikefly123 added the enhancement New feature or request label Aug 28, 2025
Copy link
Contributor

@Mikefly123 Mikefly123 left a comment

Choose a reason for hiding this comment

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

LGTM!

Great work on this, an awesome template to jump off into the rest of the development! 🚀

@moisesmata moisesmata merged commit 60a83cd into main Aug 28, 2025
2 checks passed
@moisesmata moisesmata deleted the more-led-blinker branch August 28, 2025 02:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants