Commit Graph

6 Commits

Author SHA1 Message Date
Glenn Andrews
94084e5aba Lib: SMF: Add return code to signal event propagation
See Discussion https://github.com/zephyrproject-rtos/zephyr/discussions/83659
for information about the purpose of this change.

Modifies run actions of hierarchical state machines
to return a value indicating if the event was handled
by the run action or should be propagated up to the
parent run action. Flat state machines are not affected,
and their run action returns void.

smf_set_handled() has been removed and replaced by
this return value. smf_set_state() will not propagate
events regardless of the return value as the transition
is considered to have occurred.

Documentation, tests, samples, has been updated.
USB-C and hawkBit use SMF and have been updated to use
the new return codes.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-06-17 16:04:04 +02:00
Benjamin Cabé
a43009079f boards: st: adopt new zephyr:board directive and role
This updates the documentation of all the STM32 boards to use
the new `zephyr:board::` directive.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-24 17:51:15 +02:00
Benjamin Cabé
1db9b009a7 doc: samples: Adopt code-sample-category across tree
This commit uses the new .. zephyr:code-sample-category directive to
categorize code samples across the tree.
Updates existing legacy references to manually defined targets to now
use :zephyr:code-sample-category: role instead.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-23 12:00:00 +02:00
Benjamin Cabé
25fa25a5a9 doc: :zephyr-app: should point to existing in-tree folders
As there is no check (yet!) in the directive, many
.. zephyr-app-commands:: in the documentation are pointing to
non-existing sample applications, which is problematic for users who
typically expect to just copy-paste the commands and have them work.

This commit fixes all offending references to point to existing samples,
or converts them to simple ":app:" instead of ":zephyr-app:" when the
intent wasn't to refer to in-tree samples.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-09 13:53:47 -04:00
Glenn Andrews
15db23223a samples: SMF: LVGL: SMF-based Calculator
This sample crates a touchscreen desk calculator based on
the sample state machine in _Practical UML Statecharts in
C/C++_ by Miro Samek.

Sample should build and run on any touchscreen-enabled
board with sufficient resources.

Tested on `disco_l475_iot1` board with
`adafruit_2_8_tft_touch_v2` touchscreen.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2024-08-07 19:02:15 -04:00
Glenn Andrews
69fa94f761 Samples: SMF: Add sample for SMF framework
This PR adds a sample demonstrating the use of the
State Machine Framework (SMF)

Instructions are in the README.rst for the sample.

Miro Samek was contacted and gave approval to use the state
diagram in this demo.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2024-05-10 18:13:08 -04:00