Skip to main content
Firmware Stable

Safety features

Lynx implements multiple functions to enhance operational safety.

safetyopts parameter​

This bitwise parameter controls the enabling/disabling of safety features.

/safetyopts
ValueNameDescription
1ACC NaN disarms forever**Permanently** disarms when the accelerator input is invalid (NaN at /acc/asc/out). Without this setting, an invalid accelerator input still disarms but allows rearming once the input is valid again. /sig_acc itself reads 0 while disarmed.
2Brake NaN disarmsDisarms from brake signal (sig_brake) if NaN
4Brake NaN STOPsForces brake mode and prevents acceleration if sig_brake is NaN
8No 0x5FF recoveryPrevents recovery from timeout on CAN msg 0x5FF
16Disable 0x5FF timeout**Disables timeout** on CAN msg 0x5FF

Disarming Block​

The built-in safety system monitors various inputs and can disable the accelerator signal path (before entering the driver) and cruise function when safety risks are detected. This ensures the motor won't accelerate from accelerator input and cruise remains deactivated during potential safety risks. The system structure is illustrated below.

disarming.jpg

Disarm Reasons​

Various sources can trigger safety risk conditions, resulting in device disarming. The following list details potential sources:

  • Positive values: Device will recover from disarm state
  • Negative values: Device remains disarmed until reboot
disarm_reason valueDescription
0Device armed
1Initial state after device boot
2Accelerator input invalid (NaN at /acc/asc/out)
10Seat switch activated
11Reverse activation disarm
12Map change disarm (mapopts&4)
13BMS state disarm (undervoltage and others)
14BMS charging indication
15BMS error
16Device shutdown in progress
17Identrun in progress
18Accelerator input invalid (NaN at /acc/asc/out) - permanent disarm (safetyopts value 1). Shown as -18: a negative value persists until reboot
19Geofence message timeout
20Geofence message disarm command
21/mode was in a mode that blocks driving (error, power-up initialisation, BMS error or charging, invalid inputs, CAN timeout, identification); it stays until the device arms again
23Step-up charging active
24Device in slave configuration
25Accelerator disarm braking (drvopts&128)
26Brake signal (sig_brake) NaN (safetyopts&2)
27Brake signal disarm !(drvopts&1)
28Driver override
29Device locked

While most input reactions are hardcoded, the disarming block can be customized through the safetyopts, drvopts, and mapopts parameters.