Skip to main content
Firmware Stable

State Machine

The system always operates within one of the defined states, also known as modes, represented internally as numerical values. The state machine implements priority-based ordering — lower numbers indicate higher priority. This ensures deterministic behavior in all situations.

Mode Descriptions​

Modes represent the operational states of the FALCON application, determined by the state machine. These modes aid in debugging by indicating the controller's current status.

The mode value is accessible via the /mode state variable and is broadcast periodically over CAN in the 0x600 - FALCON status message.

/mode
ValueMode nameDescription
0MODE_STOPDriver or common block error detected. Verify /driver/error and /common/error.
10MODE_NOCONFIGParameter configured is 0 or -1. Set configured to 1 to proceed.
90MODE_INVALID_SIGNALsig_throttle is NaN. Input signal is out of range or invalid.
94MODE_FREEWHEELFreewheel mode engaged via CAN control message (control_mode = 0).
95MODE_ESTOPEmergency stop is activated.
96MODE_DOCKINGProp docking in progress. Motor is homing toward the dock position.
97MODE_DOCKEDProp is docked. Motor is held in short-circuit brake at the dock position.
100MODE_IDLEController is idle. Throttle command is at zero.
110MODE_ACCController is accelerating. Throttle command is positive.
115MODE_REVERSEController is reversing. Throttle command is negative.
120MODE_BRAKEController is braking (combined brake and reverse mode).
200MODE_OVERRIDENDriver is overridden via Driver API or the run command.