pbio/sys: Status cleanups.#382
Merged
Merged
Conversation
This is part of the status, so it should be managed here rather than in the hmi.
This animation runs in user space, so it doesn't belong with the status event code. It used to be closely tied to the event messages since this used to be the only way to know that a program was started. Now we can just start the animation when the program starts. This will also allow the light instance to reset the light to the default behavior.
This was passed to the light status update function, but it does the same regardless of setting or clearing. This is not related to the pbsys_status_set function, which takes a bool for set/clear. So pbsys_status_change_t made things a bit confusing now that it is no longer used.
The status used to be just flags, but contains other statuses too now. Rename the flag part to pbio_pybricks_status_flags_t to make this a bit clearer.
This is a protocol constant, so we don't need to hardcode something of the same value elsewhere and then statically assert equality.
Not just status flags, but emit changes to slot and programs too.
Having the light matrix for the UI is useful for now, but we don't need the animation, which gets in the way of other developments. The hub light serves as an indicator that the program is running.
476e262 to
19d921b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
While working on the revised bluetooth system code, there were a couple of cleanups that needed to be done first.
This also sets the stage for handling the status update via
pbio/sys/host, so that when implemented we don't need to poll for changes in individual status fields like we are currently doing in both usb drivers and in pbio/sys/bluetooth.See also moves the breathing pattern to pbio, since it is a (predefined) user space animation that isn't governed by a
pbsysbackground process. We can group this with some kind ofpbsys_hmi_prepare_before_program, which will also start the animations on the light matrix and display (we can do this next @schodet).