A very small framework for embedded applications. Can be used for Arduino applications. Currently containing
- Very simple logical state machine implementation with timer functionality.
- Clean up workflow
- Start state and end state
- Check transition before entering
- Run step after entering
- Multiple chained transitions
- Events for transition (is valid only for one step)
- MQTT wrapper
- JSON constructor and parser wrapper
- Filter function based on time
- Arduino implementations
@startuml
state NoExtraction {
Idle : Entry: display off / reset saved time
Paused : Entry: save extraction time
Paused --> Idle : delay
}
Extraction --> Paused : EvPumpOff
NoExtraction --> Extraction : EvPumpOn
Extraction : Entry: resume with saved time
Extraction : Step: display Time
[*] --> Idle
@enduml