Input Configuration
FALCON supports two input sources for throttle control: servo PWM capture and analog input. The system uses whichever input has a valid signal, with PWM taking priority when both are valid.
All input configuration parameters are located in the /io/ folder.
Parameters
in_analog
GPIO ID of the analog throttle input. Set to 0 to disable.
in_ppm_ch
Servo PWM input channel number. Set to -1 to disable.
The default value is pre-configured for the primary PWM input pin of your hardware variant — in most cases you should leave it at the default and simply wire your servo PWM signal to that pin.
The channel-to-pin mapping is hardware-specific. See the "PWM/PPM capture input pins channel mapping" section in your controller's hardware IO documentation for the exact pin assignment and any constraints.
If unsure, leave in_ppm_ch at the default and verify by checking the sig_pwm stat — it should respond to your throttle input with values between -1 and 1.
in_estop
GDIN or DIN ID for the emergency stop input. Set to 0 to disable.
in_quick_setup
GDIN ID for the Quick-setup pad button input. Set to 0 to disable.
in_btemp1
GPIO ID for battery temperature sensor 1. Set to 0 to disable.
in_btemp2
GPIO ID for battery temperature sensor 2. Set to 0 to disable.
Signal Conditioning
Both input sources are normalized to a unified [-1, 1] range and then merged into a single command signal:
PWM pulse --> /pwm_input/ --+
|--> /csc/ --> sig_throttle
GPIO mV --> /analog_input/-+
If both inputs produce a valid signal, PWM has priority. If the PWM signal becomes invalid (NaN), the analog signal is used as a fallback.
/pwm_input/ — PWM Signal Conditioner
Converts the captured pulse width (in µs) from in_ppm_ch into a normalized sig_pwm value, with timeout-based loss-of-signal detection.
/analog_input/ — ASC (Analog Signal Conditioner)
Converts the raw mV reading from in_analog into a normalized sig_analog value, with out-of-range detection for broken/shorted sensors.
/csc/ — CSC (Control Signal Conditioner)
Applies the final deadzone, hysteresis and low-pass filtering on the selected throttle signal before it reaches the arming logic and motor command.
States
| State | Unit | Description |
|---|---|---|
sig_pwm | - | Normalized signal from PWM capture (-1~1) |
sig_analog | - | Normalized signal from analog input (-1~1) |
sig_throttle | - | Final throttle signal used by the app |