LED Output¶
The LED output of the BMS firmware is defined in the BMDLed class. This class gets periodic called to update the displayed color and brightness of the LEDs. It is implemented by a MEALY state machine, dependent on the current state of the FSM and some further inputs.
Specials (not displayed in Error, Init, Shutdown):
- if DFU is active, the State LED is blinking blue - green
- if ExecuteCommand received a LED command, this one is displayed (with timeout)
| State | LED Display Pattern (5 LEDs) |
|---|---|
Init |
All LEDs off Special: Depending on location, show SoCFeedback or State LED white (button pressed) |
Idle |
All LEDs off Special: When button is pressed: State LED white |
Shutdown |
All LEDs off |
SoCFeedback |
State LED off Other LEDs show State of Charge |
HotSwapCharge |
State LED orange Other LEDs off |
Copter or COPTER_WARMUP |
State LED green after CONFIG_SET_INCOMPLETE_ENGAGE_COPTER_ORANGE_LED_TIMEOUT_MS timeout with set incomplete in Copter or set complete, else state LED is orangeOther LEDs show State of Charge |
ChargerIdle |
All LEDs off When button is pressed: State LED white |
ChargerWaiting |
State LED orange Other LEDs show State of Charge |
ChargerHS |
State LED orange Other LEDs show State of Charge Special: Button Engaged BMS has brighter orange State LED |
ChargerCHG_DSG |
State LED green Other LEDs show State of Charge |
Error |
LEDs red according to the dected Error pattern |