Reduce `HEIGHT_SENSOR_MAX_LOOPS` from 100 to 50
This seems to be enough for the sensor to write its data to the register.
Maybe this fix some height issues.
Add new event `EVENT_SENSOR_SWITCH_R`
This event is triggered when the token leaves the switch's lightbarrier.
The FSM now listen on this additional event from `b1_metal_detection`. The reaction
to the event is handled in `b1_metal_detection::dispatched_event_sensor_switch_rising`,
which closes the switch. `dispatcher_test` has beed adapted to the new state.
Also cleaned the FSM and `token` code. (This requires some more work)
Add `token::pretty_print()` and comments to `token` class
Call `token::pretty_print()` in `b1_token_ready_for_b2`
Update comment above `event_values` enum
Fix `dispatcher::direct_call_event()` access modifier to private
Fix compile warnings
Fix/Implement `FR-026`
This commit implements Functional Requirement 26 (FR-026)
The motor run slow while the token drive through the height measurement.
Add missing `LOG_TRACE` calls
Streamline includes
Implement E-Stop functionality
The e-stop put system into safe state. This introduce a new event `EVENT_BUTTON_E_STOP_R`,
which is triggered when the e-stop is released. Also there is a new `motor_modes` enum literal
`MOTOR_RESUME` which remove the stop bit. `token_mgr` class has new member functions `reregister_e_stop()`,
`reregister_e_stop()` to re-register the `e_stop_listener` on dispatcher events.
Improve documentation of `token_mgr`
Fix minor issue in test suite
The `dispatcher` now use a `map` for its event mapping
Add small workaround for an not handled event
Update `Uml.vpp`
Add `token_mgr`to system diagramm.
Move updated images to correct folder
Add Handbuch.tex and Handbuch.pdf
Add `singleton_mgr::force_initialization()`
This function force a initialization of the requested module. If the module is already
initialized, this function has no effect. This is recommended for modules which
has its own thread running (e.g. `SERIAL_PLUGIN`).
Add check for correct defines in `config.h`