Index
a
B
c
d
f
h
i
k
l
m
p
r
s
t
u
v
activeMarker
The Active Marker deck is mainly designed for Qualisys mocap systems and supports Qualisys Active markers, but it can also be used with other systems in a simplified mode. The deck has 4 arms with one IR LED on the tip of each arm and a light sensor in the center of the deck.
The deck is configured using the parameter sub system, for details on which parameter to use, see below.
Variables
Name | Core | Type | Description |
---|---|---|---|
activeMarker.front | Core | PARAM_UINT8, PARAM_PERSISTENT | Qualisys id of marker for front (default: 1) |
activeMarker.back | Core | PARAM_UINT8, PARAM_PERSISTENT | Qualisys id of marker for back (default: 3) |
activeMarker.left | Core | PARAM_UINT8, PARAM_PERSISTENT | Qualisys id of marker for left (default: 4) |
activeMarker.right | Core | PARAM_UINT8, PARAM_PERSISTENT | Qualisys id of marker for right (default: 2) |
activeMarker.mode | Core | PARAM_UINT8, PARAM_PERSISTENT | Off(0), pwm(1), modulated(2) or qualisys(3) |
activeMarker.poll | PARAM_UINT8 |
Detailed Variable Information
activeMarker.front
src/deck/drivers/src/activeMarkerDeck.c (L232)
Qualisys id of marker for front (default: 1)
In Qualisys mode the front LED act as an Active marker with IDs that are in the range 0 - 170.
activeMarker.back
src/deck/drivers/src/activeMarkerDeck.c (L240)
Qualisys id of marker for back (default: 3)
In Qualisys mode the back LED act as an Active marker with IDs that are in the range 0 - 170.
activeMarker.left
src/deck/drivers/src/activeMarkerDeck.c (L248)
Qualisys id of marker for left (default: 4)
In Qualisys mode the left LED act as an Active marker with IDs that are in the range 0 - 170.
activeMarker.right
src/deck/drivers/src/activeMarkerDeck.c (L256)
Qualisys id of marker for right (default: 2)
In Qualisys mode the right LED act as an Active marker with IDs that are in the range 0 - 170.
activeMarker.mode
src/deck/drivers/src/activeMarkerDeck.c (L291)
Off(0), pwm(1), modulated(2) or qualisys(3)
Mode | Value | Comment |
---|---|---|
OFF | 0 | Always off |
PWM | 1 | Always on, PWM modulated |
MODULATED | 2 | Switching |
QUALISYS | 3 (default) | Qualisys Active Marker mode |
Off mode
All marker LEDs are turned off.
PWM mode
The marker LEDs are turned on and PWM modulated. The brightness of each LED is controlled by the marker parameters below, in the range 0 - 255.
Modulated mode
The LEDs are switched on and off at around 42 kHz (24 micro seconds cycle). The brightness of the LEDs during the “on” part of the cycle is controlled by the marker parameters below, in the range 0 - 255.
Qualisys mode
In this mode the LEDs act as Active markers with IDs that are identified by the Qualisys system and used for better 6-dof identification and tracking. The IDs are controlled by the marker parameters. The Qualisys systems and the deck currently supports IDs in the range [0 - 170]
activeMarker.poll
src/deck/drivers/src/activeMarkerDeck.c (L293)
amarkUartTest
Variables
Name | Core | Type | Description |
---|---|---|---|
amarkUartTest.trigger | PARAM_UINT8 |
Detailed Variable Information
amarkUartTest.trigger
src/deck/drivers/src/test/activeMarkerUartTest.c (L101)
BigQuadTest
Variables
Name | Core | Type | Description |
---|---|---|---|
BigQuadTest.pass | PARAM_UINT8 |
Detailed Variable Information
BigQuadTest.pass
src/deck/drivers/src/test/bigquadtest.c (L142)
cmdrCPPM
The CPPM (Combined Pulse Position Modulation) commander packet contains an emulation of CPPM channels transmitted in a CRTP packet that can be sent from e.g. a RC Transmitter. Often running custom firmware such as Deviation.
Channels have a range of 1000-2000 with a midpoint of 1500 Supports the ordinary RPYT channels plus up to MAX_AUX_RC_CHANNELS auxiliary channels. Auxiliary channels are optional and transmitters do not have to transmit all the data unless a given channel is actually in use (numAuxChannels must be set accordingly)
Current aux channel assignments: AuxChannel0: set high to enable self-leveling, low to disable
The scaling can be configured using the parameters, setting the maximum angle/rate output given a maximum stick input (1000 or 2000).
Variables
Name | Core | Type | Description |
---|---|---|---|
cmdrCPPM.rateRoll | PARAM_FLOAT, PARAM_PERSISTENT | Config of max roll rate at max stick input [DPS] (default: 720) | |
cmdrCPPM.ratePitch | PARAM_FLOAT, PARAM_PERSISTENT | Config of max pitch rate at max stick input [DPS] (default: 720) | |
cmdrCPPM.angPitch | PARAM_FLOAT, PARAM_PERSISTENT | Config of max pitch angle at max stick input [DEG] (default: 50) | |
cmdrCPPM.angRoll | PARAM_FLOAT, PARAM_PERSISTENT | Config of max roll angle at max stick input [DEG] (default: 50) | |
cmdrCPPM.rateYaw | PARAM_FLOAT, PARAM_PERSISTENT | Config of max yaw rate at max stick input [DPS] (default: 400) |
Detailed Variable Information
cmdrCPPM.rateRoll
src/modules/src/crtp_commander_generic.c (L423)
Config of max roll rate at max stick input [DPS] (default: 720)
cmdrCPPM.ratePitch
src/modules/src/crtp_commander_generic.c (L427)
Config of max pitch rate at max stick input [DPS] (default: 720)
cmdrCPPM.angPitch
src/modules/src/crtp_commander_generic.c (L431)
Config of max pitch angle at max stick input [DEG] (default: 50)
cmdrCPPM.angRoll
src/modules/src/crtp_commander_generic.c (L435)
Config of max roll angle at max stick input [DEG] (default: 50)
cmdrCPPM.rateYaw
src/modules/src/crtp_commander_generic.c (L439)
Config of max yaw rate at max stick input [DPS] (default: 400)
commander
The high level commander handles the setpoints from within the firmware based on a predefined trajectory. This was merged as part of the Crazyswarm project of the USC ACT lab (see this blogpost). The high-level commander uses a planner to generate smooth trajectories based on actions like ‘take off’, ‘go to’ or ‘land’ with 7th order polynomials. The planner generates a group of setpoints, which will be handled by the High level commander and send one by one to the commander framework.
It is also possible to upload your own custom trajectory to the memory of the Crazyflie, which you can try out with the script examples/autonomous_sequence_high_level of.py
in the Crazyflie python library repository.
Variables
Name | Core | Type | Description |
---|---|---|---|
commander.enHighLevel | Core | PARAM_UINT8 | Enable high level commander. |
Detailed Variable Information
commander.enHighLevel
src/modules/src/commander.c (L171)
Enable high level commander.
cpu
This parameter group contain read-only parameters pertaining to the CPU in the Crazyflie.
These could be used to identify an unique quad.
Variables
Name | Core | Type | Description |
---|---|---|---|
cpu.flash | Core | PARAM_UINT16, PARAM_RONLY | Size in kB of the device flash memory. |
cpu.id0 | Core | PARAM_UINT32, PARAM_RONLY | Byte 0 - 3 of device unique id. |
cpu.id1 | Core | PARAM_UINT32, PARAM_RONLY | Byte 4 - 7 of device unique id. |
cpu.id2 | Core | PARAM_UINT32, PARAM_RONLY | Byte 8 - 11 of device unique id. |
Detailed Variable Information
cpu.flash
src/modules/src/system.c (L419)
Size in kB of the device flash memory.
cpu.id0
src/modules/src/system.c (L424)
Byte 0 - 3
of device unique id.
cpu.id1
src/modules/src/system.c (L429)
Byte 4 - 7
of device unique id.
cpu.id2
src/modules/src/system.c (L434)
Byte 8 - 11
of device unique id.
crtpsrv
Variables
Name | Core | Type | Description |
---|---|---|---|
crtpsrv.echoDelay | PARAM_UINT16 |
Detailed Variable Information
crtpsrv.echoDelay
src/modules/src/crtpservice.c (L102)
ctrlINDI
Tuning settings for INDI controller for the attitude and accelerations of the Crazyflie
Variables
Name | Core | Type | Description |
---|---|---|---|
ctrlINDI.thrust_threshold | PARAM_FLOAT | INDI Minimum thrust threshold [motor units]. | |
ctrlINDI.bound_ctrl_input | PARAM_FLOAT | INDI bounding for control input [motor units]. | |
ctrlINDI.g1_p | PARAM_FLOAT | INDI Controller effeciveness G1 p. | |
ctrlINDI.g1_q | PARAM_FLOAT | INDI Controller effectiveness G1 q. | |
ctrlINDI.g1_r | PARAM_FLOAT | INDI Controller effectiveness G1 r. | |
ctrlINDI.g2 | PARAM_FLOAT | INDI Controller effectiveness G2. | |
ctrlINDI.ref_err_p | PARAM_FLOAT | INDI proportional gain, attitude error p. | |
ctrlINDI.ref_err_q | PARAM_FLOAT | INDI proportional gain, attitude error q. | |
ctrlINDI.ref_err_r | PARAM_FLOAT | INDI proportional gain, attitude error r. | |
ctrlINDI.ref_rate_p | PARAM_FLOAT | INDI proportional gain, attitude rate error p. | |
ctrlINDI.ref_rate_q | PARAM_FLOAT | INDI proportional gain, attitude rate error q. | |
ctrlINDI.ref_rate_r | PARAM_FLOAT | INDI proportional gain, attitude rate error r. | |
ctrlINDI.act_dyn_p | PARAM_FLOAT | INDI actuator dynamics parameter p. | |
ctrlINDI.act_dyn_q | PARAM_FLOAT | INDI actuator dynamics parameter q. | |
ctrlINDI.act_dyn_r | PARAM_FLOAT | INDI actuator dynamics parameter r. | |
ctrlINDI.filt_cutoff | PARAM_FLOAT | INDI Filtering for the raw angular rates [Hz]. | |
ctrlINDI.filt_cutoff_r | PARAM_FLOAT | INDI Filtering for the raw angular rates [Hz]. | |
ctrlINDI.outerLoopActive | PARAM_UINT8 | Activate INDI for position control. |
Detailed Variable Information
ctrlINDI.thrust_threshold
src/modules/src/controller_indi.c (L344)
INDI Minimum thrust threshold [motor units].
ctrlINDI.bound_ctrl_input
src/modules/src/controller_indi.c (L348)
INDI bounding for control input [motor units].
ctrlINDI.g1_p
src/modules/src/controller_indi.c (L353)
INDI Controller effeciveness G1 p.
ctrlINDI.g1_q
src/modules/src/controller_indi.c (L357)
INDI Controller effectiveness G1 q.
ctrlINDI.g1_r
src/modules/src/controller_indi.c (L361)
INDI Controller effectiveness G1 r.
ctrlINDI.g2
src/modules/src/controller_indi.c (L365)
INDI Controller effectiveness G2.
ctrlINDI.ref_err_p
src/modules/src/controller_indi.c (L370)
INDI proportional gain, attitude error p.
ctrlINDI.ref_err_q
src/modules/src/controller_indi.c (L374)
INDI proportional gain, attitude error q.
ctrlINDI.ref_err_r
src/modules/src/controller_indi.c (L378)
INDI proportional gain, attitude error r.
ctrlINDI.ref_rate_p
src/modules/src/controller_indi.c (L383)
INDI proportional gain, attitude rate error p.
ctrlINDI.ref_rate_q
src/modules/src/controller_indi.c (L387)
INDI proportional gain, attitude rate error q.
ctrlINDI.ref_rate_r
src/modules/src/controller_indi.c (L391)
INDI proportional gain, attitude rate error r.
ctrlINDI.act_dyn_p
src/modules/src/controller_indi.c (L396)
INDI actuator dynamics parameter p.
ctrlINDI.act_dyn_q
src/modules/src/controller_indi.c (L400)
INDI actuator dynamics parameter q.
ctrlINDI.act_dyn_r
src/modules/src/controller_indi.c (L404)
INDI actuator dynamics parameter r.
ctrlINDI.filt_cutoff
src/modules/src/controller_indi.c (L409)
INDI Filtering for the raw angular rates [Hz].
ctrlINDI.filt_cutoff_r
src/modules/src/controller_indi.c (L413)
INDI Filtering for the raw angular rates [Hz].
ctrlINDI.outerLoopActive
src/modules/src/controller_indi.c (L418)
Activate INDI for position control.
ctrlMel
Variables
Name | Core | Type | Description |
---|---|---|---|
ctrlMel.kp_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kd_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.ki_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.i_range_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kp_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kd_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.ki_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.i_range_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.mass | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.massThrust | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kR_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kR_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kw_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kw_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.ki_m_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.ki_m_z | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.kd_omega_rp | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.i_range_m_xy | PARAM_FLOAT, PARAM_PERSISTENT | ||
ctrlMel.i_range_m_z | PARAM_FLOAT, PARAM_PERSISTENT |
Detailed Variable Information
ctrlMel.kp_xy
src/modules/src/controller_mellinger.c (L325)
ctrlMel.kd_xy
src/modules/src/controller_mellinger.c (L326)
ctrlMel.ki_xy
src/modules/src/controller_mellinger.c (L327)
ctrlMel.i_range_xy
src/modules/src/controller_mellinger.c (L328)
ctrlMel.kp_z
src/modules/src/controller_mellinger.c (L329)
ctrlMel.kd_z
src/modules/src/controller_mellinger.c (L330)
ctrlMel.ki_z
src/modules/src/controller_mellinger.c (L331)
ctrlMel.i_range_z
src/modules/src/controller_mellinger.c (L332)
ctrlMel.mass
src/modules/src/controller_mellinger.c (L333)
ctrlMel.massThrust
src/modules/src/controller_mellinger.c (L334)
ctrlMel.kR_xy
src/modules/src/controller_mellinger.c (L335)
ctrlMel.kR_z
src/modules/src/controller_mellinger.c (L336)
ctrlMel.kw_xy
src/modules/src/controller_mellinger.c (L337)
ctrlMel.kw_z
src/modules/src/controller_mellinger.c (L338)
ctrlMel.ki_m_xy
src/modules/src/controller_mellinger.c (L339)
ctrlMel.ki_m_z
src/modules/src/controller_mellinger.c (L340)
ctrlMel.kd_omega_rp
src/modules/src/controller_mellinger.c (L341)
ctrlMel.i_range_m_xy
src/modules/src/controller_mellinger.c (L342)
ctrlMel.i_range_m_z
src/modules/src/controller_mellinger.c (L343)
deck
The deck parameter group tells us which decks are connected. There is one parameter per official deck and the parameter is nonzero if the deck is connected.
Variables
Name | Core | Type | Description |
---|---|---|---|
deck.bcActiveMarker | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Active Marker deck is attached. |
deck.bcAI | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if AI deck is attached. |
deck.bcBuzzer | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Buzzer deck is attached. |
deck.bcCPPM | PARAM_UINT8, PARAM_RONLY | ||
deck.cpxOverUART2 | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if CRTP over UART has been forced. |
deck.bcFlow | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Flow deck v1 is attached. |
deck.bcFlow2 | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Flow deck v2 is attached. |
deck.bcGTGPS | PARAM_UINT8, PARAM_RONLY | ||
deck.bcLedRing | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if LED-ring deck is attached. |
deck.bcLhTester | PARAM_UINT8, PARAM_RONLY | ||
deck.bcLighthouse4 | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Lighthouse positioning deck is attached. |
deck.bcDWM1000 | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Loco positioning deck is attached. |
deck.bcMultiranger | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Multi-ranger deck is attached. |
deck.bcOA | PARAM_UINT8, PARAM_RONLY | ||
deck.bcUSD | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if SD-card deck is attached. |
deck.bcZRanger | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Z-ranger deck is attached. |
deck.bcZRanger2 | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if Z-ranger deck v2 is attached. |
Detailed Variable Information
deck.bcActiveMarker
src/deck/drivers/src/activeMarkerDeck.c (L311)
Nonzero if Active Marker deck is attached.
deck.bcAI
src/deck/drivers/src/aideck.c (L379)
Nonzero if AI deck is attached.
deck.bcBuzzer
src/deck/drivers/src/buzzdeck.c (L85)
Nonzero if Buzzer deck is attached.
deck.bcCPPM
src/deck/drivers/src/cppmdeck.c (L76)
deck.cpxOverUART2
src/deck/drivers/src/cpx-host-on-uart2.c (L78)
Nonzero if CRTP over UART has been forced.
deck.bcFlow
src/deck/drivers/src/flowdeck_v1v2.c (L327)
Nonzero if Flow deck v1 is attached.
deck.bcFlow2
src/deck/drivers/src/flowdeck_v1v2.c (L332)
Nonzero if Flow deck v2 is attached.
deck.bcGTGPS
src/deck/drivers/src/gtgps.c (L316)
deck.bcLedRing
src/deck/drivers/src/ledring12.c (L1262)
Nonzero if LED-ring deck is attached.
deck.bcLhTester
src/deck/drivers/src/lhtesterdeck.c (L167)
deck.bcLighthouse4
src/deck/drivers/src/lighthouse.c (L109)
Nonzero if Lighthouse positioning deck is attached.
deck.bcDWM1000
src/deck/drivers/src/locodeck.c (L597)
Nonzero if Loco positioning deck is attached.
deck.bcMultiranger
src/deck/drivers/src/multiranger.c (L215)
Nonzero if Multi-ranger deck is attached.
deck.bcOA
src/deck/drivers/src/oa.c (L183)
deck.bcUSD
src/deck/drivers/src/usddeck.c (L1083)
Nonzero if SD-card deck is attached.
deck.bcZRanger
src/deck/drivers/src/zranger.c (L134)
Nonzero if Z-ranger deck is attached.
deck.bcZRanger2
src/deck/drivers/src/zranger2.c (L166)
Nonzero if Z-ranger deck v2 is attached.
firmware
Read-only parameters that describe the current quad firmware.
Variables
Name | Core | Type | Description |
---|---|---|---|
firmware.revision0 | Core | PARAM_UINT32, PARAM_RONLY | Byte 0 - 7 of firmware revision. |
firmware.revision1 | Core | PARAM_UINT16, PARAM_RONLY | Byte 8 - 11 of firmware revision. |
firmware.modified | Core | PARAM_UINT8, PARAM_RONLY | Nonzero if firmware has local changes. |
Detailed Variable Information
firmware.revision0
src/utils/src/version.vtpl (L51)
Byte 0 - 7
of firmware revision.
firmware.revision1
src/utils/src/version.vtpl (L56)
Byte 8 - 11
of firmware revision.
firmware.modified
src/utils/src/version.vtpl (L61)
Nonzero if firmware has local changes.
flightmode
There are 2 levels to control: Position (X, Y, Z) and Attitude (pitch, roll, yaw or in quaternions)
These can be controlled in different modes: Absolute mode, Velocity mode or Disabled
These parameters have impact on which level and mode to use.
Variables
Name | Core | Type | Description |
---|---|---|---|
flightmode.althold | Core | PARAM_UINT8 | Keeps the quad at its current altitude automatically. |
flightmode.poshold | Core | PARAM_UINT8 | Keeps the quad at its current 3D position. |
flightmode.posSet | Core | PARAM_UINT8 | Set to nonzero to select absolute mode for positioning. |
flightmode.yawMode | PARAM_UINT8 | Carefree(0), plusmode(1), xmode(2) | |
flightmode.stabModeRoll | Core | PARAM_UINT8 | Stabilization type for roll: rate(0) or angle(1) |
flightmode.stabModePitch | Core | PARAM_UINT8 | Stabilization type for pitch: rate(0) or angle(1) |
flightmode.stabModeYaw | Core | PARAM_UINT8 | Stabilization type for yaw: rate(0) or angle(1) |
Detailed Variable Information
flightmode.althold
src/modules/src/crtp_commander_rpyt.c (L240)
Keeps the quad at its current altitude automatically.
Thrust control becomes height velocity control.
flightmode.poshold
src/modules/src/crtp_commander_rpyt.c (L248)
Keeps the quad at its current 3D position.
Pitch/Roll/Thrust control becomes X/Y/Z velocity control. X and U
flightmode.posSet
src/modules/src/crtp_commander_rpyt.c (L253)
Set to nonzero to select absolute mode for positioning.
flightmode.yawMode
src/modules/src/crtp_commander_rpyt.c (L258)
Carefree(0), plusmode(1), xmode(2)
flightmode.stabModeRoll
src/modules/src/crtp_commander_rpyt.c (L263)
Stabilization type for roll: rate(0) or angle(1)
flightmode.stabModePitch
src/modules/src/crtp_commander_rpyt.c (L268)
Stabilization type for pitch: rate(0) or angle(1)
flightmode.stabModeYaw
src/modules/src/crtp_commander_rpyt.c (L273)
Stabilization type for yaw: rate(0) or angle(1)
health
Health modules that is trying to find problems such as unbalanced propellers or a bad power path/battery.
Variables
Name | Core | Type | Description |
---|---|---|---|
health.startPropTest | Core | PARAM_UINT8 | Set nonzero to initiate test of propellers. |
health.startBatTest | Core | PARAM_UINT8 | Set nonzero to initiate test of battery. |
health.propTestPWMRatio | Core | PARAM_UINT16 | PWM ratio to use when testing propellers. Required for brushless motors. [0 - UINT16_MAX]. |
Detailed Variable Information
health.startPropTest
src/modules/src/health.c (L327)
Set nonzero to initiate test of propellers.
health.startBatTest
src/modules/src/health.c (L332)
Set nonzero to initiate test of battery.
health.propTestPWMRatio
src/modules/src/health.c (L337)
PWM ratio to use when testing propellers. Required for brushless motors. [0 - UINT16_MAX].
hlCommander
computes smooth setpoints based on high-level inputs such as: take-off, landing, polynomial trajectories.
Variables
Name | Core | Type | Description |
---|---|---|---|
hlCommander.vtoff | Core | PARAM_FLOAT | Default take off velocity (m/s) |
hlCommander.vland | Core | PARAM_FLOAT | Default landing velocity (m/s) |
Detailed Variable Information
hlCommander.vtoff
src/modules/src/crtp_commander_high_level.c (L833)
Default take off velocity (m/s)
hlCommander.vland
src/modules/src/crtp_commander_high_level.c (L838)
Default landing velocity (m/s)
imu_sensors
An inertial measurement unit (IMU) is an electronic device that measures and reports a body’s specific force, angular rate, and sometimes the orientation of the body, using a combination of accelerometers, gyroscopes, and sometimes magnetometers.
Variables
Name | Core | Type | Description |
---|---|---|---|
imu_sensors.BMP388 | PARAM_UINT8, PARAM_RONLY | Nonzero if BMP388 barometer is present. | |
imu_sensors.BoschGyrSel | PARAM_UINT8 | ||
imu_sensors.BoschAccSel | PARAM_UINT8 | ||
imu_sensors.BMM150 | PARAM_UINT8, PARAM_RONLY | ||
imu_sensors.BMP285 | PARAM_UINT8, PARAM_RONLY | ||
imu_sensors.AK8963 | PARAM_UINT8, PARAM_RONLY | Nonzero if AK8963 magnetometer is present. | |
imu_sensors.LPS25H | PARAM_UINT8, PARAM_RONLY | Nonzero if LPS25H barometer is present. |
Detailed Variable Information
imu_sensors.BMP388
src/hal/src/sensors_bmi088_bmp388.c (L994)
Nonzero if BMP388 barometer is present.
imu_sensors.BoschGyrSel
src/hal/src/sensors_bosch.c (L962)
imu_sensors.BoschAccSel
src/hal/src/sensors_bosch.c (L963)
imu_sensors.BMM150
src/hal/src/sensors_bosch.c (L964)
imu_sensors.BMP285
src/hal/src/sensors_bosch.c (L965)
imu_sensors.AK8963
src/hal/src/sensors_mpu9250_lps25h.c (L964)
Nonzero if AK8963 magnetometer is present.
imu_sensors.LPS25H
src/hal/src/sensors_mpu9250_lps25h.c (L969)
Nonzero if LPS25H barometer is present.
imu_tests
Variables
Name | Core | Type | Description |
---|---|---|---|
imu_tests.MPU6500 | PARAM_UINT8, PARAM_RONLY | Nonzero if the MPU6500 self-test passes. | |
imu_tests.AK8963 | PARAM_UINT8, PARAM_RONLY | Nonzero if the AK8963 self-test passes. | |
imu_tests.LPS25H | PARAM_UINT8, PARAM_RONLY | Nonzero if the LPS25H self-test passes. |
Detailed Variable Information
imu_tests.MPU6500
src/hal/src/sensors_mpu9250_lps25h.c (L978)
Nonzero if the MPU6500 self-test passes.
imu_tests.AK8963
src/hal/src/sensors_mpu9250_lps25h.c (L983)
Nonzero if the AK8963 self-test passes.
imu_tests.LPS25H
src/hal/src/sensors_mpu9250_lps25h.c (L988)
Nonzero if the LPS25H self-test passes.
kalman
Tuning parameters for the Extended Kalman Filter (EKF) estimator
Variables
Name | Core | Type | Description |
---|---|---|---|
kalman.resetEstimation | Core | PARAM_UINT8 | Reset the kalman estimator. |
kalman.quadIsFlying | PARAM_UINT8 | ||
kalman.robustTdoa | Core | PARAM_UINT8 | Nonzero to use robust TDOA method (default: 0) |
kalman.robustTwr | Core | PARAM_UINT8 | Nonzero to use robust TWR method (default: 0) |
kalman.pNAcc_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Process noise for x and y acceleration. |
kalman.pNAcc_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Process noise for z acceleration. |
kalman.pNVel | Core | PARAM_FLOAT, PARAM_PERSISTENT | Process noise for velocity. |
kalman.pNPos | Core | PARAM_FLOAT, PARAM_PERSISTENT | Process noise for position. |
kalman.pNAtt | Core | PARAM_FLOAT, PARAM_PERSISTENT | Process noise for attitude. |
kalman.mNBaro | Core | PARAM_FLOAT, PARAM_PERSISTENT | Measurement noise for barometer. |
kalman.mNGyro_rollpitch | Core | PARAM_FLOAT, PARAM_PERSISTENT | Measurement noise for roll/pitch gyros. |
kalman.mNGyro_yaw | Core | PARAM_FLOAT, PARAM_PERSISTENT | Measurement noise for yaw gyro. |
kalman.initialX | Core | PARAM_FLOAT | Initial X after reset [m]. |
kalman.initialY | Core | PARAM_FLOAT | Initial Y after reset [m]. |
kalman.initialZ | Core | PARAM_FLOAT | Initial Z after reset [m]. |
kalman.initialYaw | Core | PARAM_FLOAT | Initial yaw after reset [rad]. |
kalman.maxPos | Core | PARAM_FLOAT | Maximum accepted coordinate before kalman supervisor resets estimator. |
kalman.maxVel | Core | PARAM_FLOAT | Maximum accepted velocity before kalman supervisor resets estimator. |
Detailed Variable Information
kalman.resetEstimation
src/modules/src/estimator_kalman.c (L593)
Reset the kalman estimator.
kalman.quadIsFlying
src/modules/src/estimator_kalman.c (L594)
kalman.robustTdoa
src/modules/src/estimator_kalman.c (L598)
Nonzero to use robust TDOA method (default: 0)
kalman.robustTwr
src/modules/src/estimator_kalman.c (L602)
Nonzero to use robust TWR method (default: 0)
kalman.pNAcc_xy
src/modules/src/estimator_kalman.c (L606)
Process noise for x and y acceleration.
kalman.pNAcc_z
src/modules/src/estimator_kalman.c (L610)
Process noise for z acceleration.
kalman.pNVel
src/modules/src/estimator_kalman.c (L614)
Process noise for velocity.
kalman.pNPos
src/modules/src/estimator_kalman.c (L618)
Process noise for position.
kalman.pNAtt
src/modules/src/estimator_kalman.c (L622)
Process noise for attitude.
kalman.mNBaro
src/modules/src/estimator_kalman.c (L626)
Measurement noise for barometer.
kalman.mNGyro_rollpitch
src/modules/src/estimator_kalman.c (L630)
Measurement noise for roll/pitch gyros.
kalman.mNGyro_yaw
src/modules/src/estimator_kalman.c (L634)
Measurement noise for yaw gyro.
kalman.initialX
src/modules/src/estimator_kalman.c (L638)
Initial X after reset [m].
kalman.initialY
src/modules/src/estimator_kalman.c (L642)
Initial Y after reset [m].
kalman.initialZ
src/modules/src/estimator_kalman.c (L646)
Initial Z after reset [m].
kalman.initialYaw
src/modules/src/estimator_kalman.c (L650)
Initial yaw after reset [rad].
kalman.maxPos
src/modules/src/kalman_supervisor.c (L64)
Maximum accepted coordinate before kalman supervisor resets estimator.
kalman.maxVel
src/modules/src/kalman_supervisor.c (L69)
Maximum accepted velocity before kalman supervisor resets estimator.
led
Parameters governing the onboard LEDs
Variables
Name | Core | Type | Description |
---|---|---|---|
led.bitmask | PARAM_UINT8 | Control onboard LEDs using a bitmask. Enabling it will override the led sequencer. |
Detailed Variable Information
led.bitmask
Control onboard LEDs using a bitmask. Enabling it will override the led sequencer.
| 7:ENABLE | 6:N/A | 5:BLUE_R | 4:RED_R | 3:GREEN_R | 2:RED_L | 1:GREEN_L | 0:BLUE_L |
lighthouse
Parameters and settings for the Lighthouse positioning system
Variables
Name | Core | Type | Description |
---|---|---|---|
lighthouse.method | Core | PARAM_UINT8 | Estimation Method: 0:CrossingBeam, 1:Sweep in EKF (default: 1) |
lighthouse.bsCalibReset | Core | PARAM_UINT8 | Reset calibration data status. |
lighthouse.systemType | Core | PARAM_UINT8 | Lighthouse baseStation version: 1: LighthouseV1, 2:LighthouseV2 (default: 2) |
lighthouse.bsAvailable | Core | PARAM_UINT16, PARAM_RONLY | Bit field that indicates which base stations that are supported by the system. |
lighthouse.sweepStd | Core | PARAM_FLOAT | Standard deviation Sweep angles Lighthouse V1. |
lighthouse.sweepStd2 | Core | PARAM_FLOAT | Standard deviation Sweep angles Lighthouse V2. |
lighthouse.enLhRawStream | PARAM_UINT8 |
Detailed Variable Information
lighthouse.method
src/modules/src/lighthouse/lighthouse_core.c (L880)
Estimation Method: 0:CrossingBeam, 1:Sweep in EKF (default: 1)
lighthouse.bsCalibReset
src/modules/src/lighthouse/lighthouse_core.c (L884)
Reset calibration data status.
lighthouse.systemType
src/modules/src/lighthouse/lighthouse_core.c (L889)
Lighthouse baseStation version: 1: LighthouseV1, 2:LighthouseV2 (default: 2)
lighthouse.bsAvailable
src/modules/src/lighthouse/lighthouse_core.c (L898)
Bit field that indicates which base stations that are supported by the system.
The lowest bit maps to base station channel 1 and the highest to channel 16.
Deprecated since 2022-08-15
lighthouse.sweepStd
src/modules/src/lighthouse/lighthouse_position_est.c (L493)
Standard deviation Sweep angles Lighthouse V1.
lighthouse.sweepStd2
src/modules/src/lighthouse/lighthouse_position_est.c (L497)
Standard deviation Sweep angles Lighthouse V2.
lighthouse.enLhRawStream
src/modules/src/lighthouse/lighthouse_transmit.c (L177)
loco
The Loco Positioning System implements three different positioning modes: Two Way Ranging (TWR), Time Difference of Arrival 2 (TDoA 2) and Time Difference of Arrival 3 (TDoA 3)
TWR mode
In this mode, the tag pings the anchors in sequence, this allows it to measure the distance between the tag and the anchors. Using this information a theoretical minimum of 4 Anchors is required to calculate the 3D position of a Tag, but a more realistic number is 6 to add redundancy and accuracy. This mode is the most accurate mode and also works when the tag or quad leaves the space delimited by the anchors. The tag is actively communicating with the anchors in a time slotted fashion and in this mode only one tag or quad can be positioned with a maximum of 8 anchors.
TDoA 2 mode
In TDoA 2 mode, the anchor system is continuously sending synchronization packets. A tag listening to these packets can calculate the relative distance to two anchors by measuring the time difference of arrival of the packets. From the TDoA information it is possible to calculate the 3D position in space. In this mode the tag is only passively listening, so new tags do not add any load to the system which makes it possible to position any number of tags or quads simultaneously. This makes it a perfect mode for swarming.
Compared to TWR, TDoA 2 is more restrictive when it comes to the space where positioning works, ideally the tag should be within, or very close to, the space delimited by the anchor system. This means that TDoA 2 works best with 8 anchors placed in the corners of the flying space. In this space the accuracy and precision is comparable to TWR.
In this mode the anchor system is time slotted and synchronized and the number of anchors is limited to 8.
TDoA 3 mode
The TDoA 3 mode has many similarities with TDoA 2 and supports any number of tags or quads. The main difference is that the time slotted scheme of TDoA 2 has been replaced by a randomized transmission schedule which makes it possible to add more anchors. By adding more anchors the system can be scaled to larger spaces or span multiple rooms without line of sight between all anchors. It also makes it more robust and can handle loss or addition of anchors dynamically. The estimated position in this mode might be slightly more noisy compared to TDoA 2.
Variables
Name | Core | Type | Description |
---|---|---|---|
loco.mode | Core | PARAM_UINT8 | The Loco positioning mode to use (default: 0) |
Detailed Variable Information
loco.mode
src/deck/drivers/src/locodeck.c (L683)
The Loco positioning mode to use (default: 0)
Value | Mode |
---|---|
0 | Auto |
1 | TWR |
2 | TDoA 2 |
3 | TDoA 3 |
locSrv
Service parameters for (external) positioning data stream through ctrp
Variables
Name | Core | Type | Description |
---|---|---|---|
locSrv.enRangeStreamFP32 | Core | PARAM_UINT8 | Enable CRTP stream of Loco node distance. |
locSrv.enLhAngleStream | Core | PARAM_UINT8 | Enable CRTP stream of Lighthouse sweep angles. |
locSrv.extPosStdDev | Core | PARAM_FLOAT | Standard deviation of external position. |
locSrv.extQuatStdDev | Core | PARAM_FLOAT | Standard deviation of the quarternion data to kalman filter. |
Detailed Variable Information
locSrv.enRangeStreamFP32
src/modules/src/crtp_localization_service.c (L451)
Enable CRTP stream of Loco node distance.
locSrv.enLhAngleStream
src/modules/src/crtp_localization_service.c (L455)
Enable CRTP stream of Lighthouse sweep angles.
locSrv.extPosStdDev
src/modules/src/crtp_localization_service.c (L459)
Standard deviation of external position.
locSrv.extQuatStdDev
src/modules/src/crtp_localization_service.c (L463)
Standard deviation of the quarternion data to kalman filter.
memTst
Variables
Name | Core | Type | Description |
---|---|---|---|
memTst.resetW | PARAM_UINT8 |
Detailed Variable Information
memTst.resetW
motion
Settings and parameters for handling of the flowdecks measurments
Variables
Name | Core | Type | Description |
---|---|---|---|
motion.disable | PARAM_UINT8 | Nonzero to not push the flow measurement in the EKF (default: 0) | |
motion.adaptive | PARAM_UINT8 | Nonzero to turn on adaptive standard devivation estimation (default: 0) | |
motion.flowStdFixed | Core | PARAM_FLOAT | Set standard devivation flow measurement (default: 2.0f) |
Detailed Variable Information
motion.disable
src/deck/drivers/src/flowdeck_v1v2.c (L311)
Nonzero to not push the flow measurement in the EKF (default: 0)
motion.adaptive
src/deck/drivers/src/flowdeck_v1v2.c (L315)
Nonzero to turn on adaptive standard devivation estimation (default: 0)
motion.flowStdFixed
src/deck/drivers/src/flowdeck_v1v2.c (L319)
Set standard devivation flow measurement (default: 2.0f)
motorPowerSet
Override power distribution to motors.
Variables
Name | Core | Type | Description |
---|---|---|---|
motorPowerSet.enable | Core | PARAM_UINT8 | Nonzero to override controller with set values. |
motorPowerSet.m1 | Core | PARAM_UINT16 | motor power for m1: 0 - UINT16_MAX |
motorPowerSet.m2 | Core | PARAM_UINT16 | motor power for m2: 0 - UINT16_MAX |
motorPowerSet.m3 | Core | PARAM_UINT16 | motor power for m3: 0 - UINT16_MAX |
motorPowerSet.m4 | Core | PARAM_UINT16 | motor power for m4: 0 - UINT16_MAX |
Detailed Variable Information
motorPowerSet.enable
src/drivers/src/motors.c (L687)
Nonzero to override controller with set values.
motorPowerSet.m1
src/drivers/src/motors.c (L692)
motor power for m1: 0 - UINT16_MAX
motorPowerSet.m2
src/drivers/src/motors.c (L697)
motor power for m2: 0 - UINT16_MAX
motorPowerSet.m3
src/drivers/src/motors.c (L702)
motor power for m3: 0 - UINT16_MAX
motorPowerSet.m4
src/drivers/src/motors.c (L707)
motor power for m4: 0 - UINT16_MAX
multiranger
Variables
Name | Core | Type | Description |
---|---|---|---|
multiranger.filterMask | PARAM_UINT16 | Filter mask determining which range measurements is to be let through based on the range status of the VL53L1 chip. |
Detailed Variable Information
multiranger.filterMask
src/deck/drivers/src/multiranger.c (L223)
Filter mask determining which range measurements is to be let through based on the range status of the VL53L1 chip.
pid_attitude
Tuning settings for the gains of the PID controller for the attitude of the Crazyflie which consists of the Yaw Pitch and Roll
Variables
Name | Core | Type | Description |
---|---|---|---|
pid_attitude.roll_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID roll controller. | |
pid_attitude.roll_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID roll controller. | |
pid_attitude.roll_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID roll controller. | |
pid_attitude.pitch_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID pitch controller. | |
pid_attitude.pitch_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID pitch controller. | |
pid_attitude.pitch_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID pitch controller. | |
pid_attitude.yaw_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID yaw controller. | |
pid_attitude.yaw_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID yaw controller. | |
pid_attitude.yaw_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID yaw controller. |
Detailed Variable Information
pid_attitude.roll_kp
src/modules/src/attitude_pid_controller.c (L287)
Proportional gain for the PID roll controller.
pid_attitude.roll_ki
src/modules/src/attitude_pid_controller.c (L291)
Integral gain for the PID roll controller.
pid_attitude.roll_kd
src/modules/src/attitude_pid_controller.c (L295)
Derivative gain for the PID roll controller.
pid_attitude.pitch_kp
src/modules/src/attitude_pid_controller.c (L299)
Proportional gain for the PID pitch controller.
pid_attitude.pitch_ki
src/modules/src/attitude_pid_controller.c (L303)
Integral gain for the PID pitch controller.
pid_attitude.pitch_kd
src/modules/src/attitude_pid_controller.c (L307)
Derivative gain for the PID pitch controller.
pid_attitude.yaw_kp
src/modules/src/attitude_pid_controller.c (L311)
Proportional gain for the PID yaw controller.
pid_attitude.yaw_ki
src/modules/src/attitude_pid_controller.c (L315)
Integral gain for the PID yaw controller.
pid_attitude.yaw_kd
src/modules/src/attitude_pid_controller.c (L319)
Derivative gain for the PID yaw controller.
pid_rate
Tuning settings for the gains of the PID controller for the rate angles of the Crazyflie, which consists of the yaw, pitch and roll rates
Variables
Name | Core | Type | Description |
---|---|---|---|
pid_rate.roll_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID roll rate controller. | |
pid_rate.roll_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID roll rate controller. | |
pid_rate.roll_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID roll rate controller. | |
pid_rate.pitch_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID pitch rate controller. | |
pid_rate.pitch_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID pitch rate controller. | |
pid_rate.pitch_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID pitch rate controller. | |
pid_rate.yaw_kp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the PID yaw rate controller. | |
pid_rate.yaw_ki | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the PID yaw rate controller. | |
pid_rate.yaw_kd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the PID yaw rate controller. |
Detailed Variable Information
pid_rate.roll_kp
src/modules/src/attitude_pid_controller.c (L330)
Proportional gain for the PID roll rate controller.
pid_rate.roll_ki
src/modules/src/attitude_pid_controller.c (L334)
Integral gain for the PID roll rate controller.
pid_rate.roll_kd
src/modules/src/attitude_pid_controller.c (L338)
Derivative gain for the PID roll rate controller.
pid_rate.pitch_kp
src/modules/src/attitude_pid_controller.c (L342)
Proportional gain for the PID pitch rate controller.
pid_rate.pitch_ki
src/modules/src/attitude_pid_controller.c (L346)
Integral gain for the PID pitch rate controller.
pid_rate.pitch_kd
src/modules/src/attitude_pid_controller.c (L350)
Derivative gain for the PID pitch rate controller.
pid_rate.yaw_kp
src/modules/src/attitude_pid_controller.c (L354)
Proportional gain for the PID yaw rate controller.
pid_rate.yaw_ki
src/modules/src/attitude_pid_controller.c (L358)
Integral gain for the PID yaw rate controller.
pid_rate.yaw_kd
src/modules/src/attitude_pid_controller.c (L362)
Derivative gain for the PID yaw rate controller.
pm
Power management parameters.
Variables
Name | Core | Type | Description |
---|---|---|---|
pm.lowVoltage | Core | PARAM_FLOAT, PARAM_PERSISTENT | At what voltage power management will indicate low battery. |
pm.criticalLowVoltage | Core | PARAM_FLOAT, PARAM_PERSISTENT | At what voltage power management will indicate critical low battery. |
Detailed Variable Information
pm.lowVoltage
src/hal/src/pm_stm32f4.c (L527)
At what voltage power management will indicate low battery.
pm.criticalLowVoltage
src/hal/src/pm_stm32f4.c (L531)
At what voltage power management will indicate critical low battery.
posCtlPid
Tuning settings for the gains of the PID controller for the position of the Crazyflie ¨ in the body-yaw-aligned X & Y and global Z directions.
Variables
Name | Core | Type | Description |
---|---|---|---|
posCtlPid.xKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the position PID in the body-yaw-aligned X direction. | |
posCtlPid.xKi | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the position PID in the body-yaw-aligned X direction. | |
posCtlPid.xKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the position PID in the body-yaw-aligned X direction. | |
posCtlPid.yKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the position PID in the body-yaw-aligned Y direction. | |
posCtlPid.yKi | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the position PID in the body-yaw-aligned Y direction. | |
posCtlPid.yKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the position PID in the body-yaw-aligned Y direction. | |
posCtlPid.zKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the position PID in the global Z direction. | |
posCtlPid.zKi | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the position PID in the global Z direction. | |
posCtlPid.zKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the position PID in the global Z direction. | |
posCtlPid.thrustBase | PARAM_UINT16, PARAM_PERSISTENT | Approx. thrust needed for hover. | |
posCtlPid.thrustMin | PARAM_UINT16, PARAM_PERSISTENT | Min. thrust value to output. | |
posCtlPid.rLimit | PARAM_FLOAT, PARAM_PERSISTENT | Roll absolute limit. | |
posCtlPid.pLimit | PARAM_FLOAT, PARAM_PERSISTENT | Pitch absolute limit. | |
posCtlPid.xVelMax | PARAM_FLOAT, PARAM_PERSISTENT | Maximum body-yaw-aligned X velocity. | |
posCtlPid.yVelMax | PARAM_FLOAT, PARAM_PERSISTENT | Maximum body-yaw-aligned Y velocity. | |
posCtlPid.zVelMax | PARAM_FLOAT, PARAM_PERSISTENT | Maximum Z Velocity. |
Detailed Variable Information
posCtlPid.xKp
src/modules/src/position_controller_pid.c (L462)
Proportional gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.xKi
src/modules/src/position_controller_pid.c (L466)
Proportional gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.xKd
src/modules/src/position_controller_pid.c (L470)
Derivative gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.yKp
src/modules/src/position_controller_pid.c (L475)
Proportional gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.yKi
src/modules/src/position_controller_pid.c (L479)
Integral gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.yKd
src/modules/src/position_controller_pid.c (L483)
Derivative gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.zKp
src/modules/src/position_controller_pid.c (L488)
Proportional gain for the position PID in the global Z direction.
posCtlPid.zKi
src/modules/src/position_controller_pid.c (L492)
Integral gain for the position PID in the global Z direction.
posCtlPid.zKd
src/modules/src/position_controller_pid.c (L496)
Derivative gain for the position PID in the global Z direction.
posCtlPid.thrustBase
src/modules/src/position_controller_pid.c (L501)
Approx. thrust needed for hover.
posCtlPid.thrustMin
src/modules/src/position_controller_pid.c (L505)
Min. thrust value to output.
posCtlPid.rLimit
src/modules/src/position_controller_pid.c (L510)
Roll absolute limit.
posCtlPid.pLimit
src/modules/src/position_controller_pid.c (L514)
Pitch absolute limit.
posCtlPid.xVelMax
src/modules/src/position_controller_pid.c (L518)
Maximum body-yaw-aligned X velocity.
posCtlPid.yVelMax
src/modules/src/position_controller_pid.c (L522)
Maximum body-yaw-aligned Y velocity.
posCtlPid.zVelMax
src/modules/src/position_controller_pid.c (L526)
Maximum Z Velocity.
posCtrlIndi
Tuning settings for the gains of the INDI controller for the position and velocity of the Crazyflie in the X, Y and Z direction in the global coordinate system.
Variables
Name | Core | Type | Description |
---|---|---|---|
posCtrlIndi.K_xi_x | PARAM_FLOAT | INDI position controller X proportional gain. | |
posCtrlIndi.K_xi_y | PARAM_FLOAT | INDI position controller Y proportional gain. | |
posCtrlIndi.K_xi_z | PARAM_FLOAT | INDI position controller Z proportional gain. | |
posCtrlIndi.K_dxi_x | PARAM_FLOAT | INDI velocity controller X proportional gain. | |
posCtrlIndi.K_dxi_y | PARAM_FLOAT | INDI velocity controller Y proportional gain. | |
posCtrlIndi.K_dxi_z | PARAM_FLOAT | INDI velocity controller Z proportional gain. | |
posCtrlIndi.pq_clamping | PARAM_FLOAT | INDI Clamping value for the INDI roll and pitch command to inner loop [degrees]. |
Detailed Variable Information
posCtrlIndi.K_xi_x
src/modules/src/position_controller_indi.c (L282)
INDI position controller X proportional gain.
posCtrlIndi.K_xi_y
src/modules/src/position_controller_indi.c (L286)
INDI position controller Y proportional gain.
posCtrlIndi.K_xi_z
src/modules/src/position_controller_indi.c (L290)
INDI position controller Z proportional gain.
posCtrlIndi.K_dxi_x
src/modules/src/position_controller_indi.c (L295)
INDI velocity controller X proportional gain.
posCtrlIndi.K_dxi_y
src/modules/src/position_controller_indi.c (L299)
INDI velocity controller Y proportional gain.
posCtrlIndi.K_dxi_z
src/modules/src/position_controller_indi.c (L303)
INDI velocity controller Z proportional gain.
posCtrlIndi.pq_clamping
src/modules/src/position_controller_indi.c (L308)
INDI Clamping value for the INDI roll and pitch command to inner loop [degrees].
posEstAlt
Tuning setttings for the altitude estimator/filtering
Variables
Name | Core | Type | Description |
---|---|---|---|
posEstAlt.estAlphaAsl | Core | PARAM_FLOAT, PARAM_PERSISTENT | parameter alpha IIR Filter above sea level/true altitude (baro) |
posEstAlt.estAlphaZr | Core | PARAM_FLOAT, PARAM_PERSISTENT | parameter alpha IIR Filter Height (zranger) |
posEstAlt.velFactor | PARAM_FLOAT, PARAM_PERSISTENT | Multiplying factor for adding velocity. | |
posEstAlt.velZAlpha | PARAM_FLOAT, PARAM_PERSISTENT | Blendning factor to avoid accumulate error. | |
posEstAlt.vAccDeadband | Core | PARAM_FLOAT, PARAM_PERSISTENT | Vertical acceleration deadband. |
Detailed Variable Information
posEstAlt.estAlphaAsl
src/modules/src/position_estimator_altitude.c (L137)
parameter alpha IIR Filter above sea level/true altitude (baro)
posEstAlt.estAlphaZr
src/modules/src/position_estimator_altitude.c (L141)
parameter alpha IIR Filter Height (zranger)
posEstAlt.velFactor
src/modules/src/position_estimator_altitude.c (L145)
Multiplying factor for adding velocity.
posEstAlt.velZAlpha
src/modules/src/position_estimator_altitude.c (L149)
Blendning factor to avoid accumulate error.
posEstAlt.vAccDeadband
src/modules/src/position_estimator_altitude.c (L153)
Vertical acceleration deadband.
powerDist
Power distribution parameters
Variables
Name | Core | Type | Description |
---|---|---|---|
powerDist.idleThrust | Core | PARAM_UINT32, PARAM_PERSISTENT | Motor thrust to set at idle (default: 0) |
Detailed Variable Information
powerDist.idleThrust
src/modules/src/power_distribution_quadrotor.c (L90)
Motor thrust to set at idle (default: 0)
This is often needed for brushless motors as it takes time to start up the motor. Then a common value is between 3000 - 6000.
ring
The LED ring expansion deck contains two powerful front-facing white LEDs and 12 bottom-facing RGB individually addressable LEDs (it uses the same LEDs as used in the NeoPixel products by Adafruit).
The deck is designed to be installed as the last deck on the bottom of the quad. It does not have pass-through holes for the expansion port connector.
Variables
Name | Core | Type | Description |
---|---|---|---|
ring.effect | Core | PARAM_UINT8, PARAM_PERSISTENT | Id of effect to use (default: 6) |
ring.neffect | Core | PARAM_UINT32, PARAM_RONLY | Number of effects available. |
ring.solidRed | Core | PARAM_UINT8 | Intensity of Red for Solid color effect (default: 20) |
ring.solidGreen | Core | PARAM_UINT8 | Intensity of Green for solid color effect (default: 20) |
ring.solidBlue | Core | PARAM_UINT8 | Intensity of Blue for solid color effect (default: 20) |
ring.headlightEnable | Core | PARAM_UINT8 | Nonzero to Enable headlights (default: 0) |
ring.emptyCharge | Core | PARAM_FLOAT | At what volt the Battery effect indicates empty. |
ring.fullCharge | Core | PARAM_FLOAT | At what volt the battery effect indicates full. |
ring.fadeColor | Core | PARAM_UINT32 | Color to fade to for Fade color effect. |
ring.fadeTime | Core | PARAM_FLOAT | The time for face effect to complete. |
Detailed Variable Information
ring.effect
src/deck/drivers/src/ledring12.c (L1178)
Id of effect to use (default: 6)
Id | Effect |
---|---|
0 | Off |
1 | White spinner |
2 | Color spinner |
3 | Tilt |
4 | Brightness |
5 | Color spinner 2 |
6 | Double spinner |
7 | Solid color effect |
8 | Factory test |
9 | Battery status |
10 | Boat lights |
11 | Alert |
12 | Gravity |
13 | Virtual Memory |
14 | Fade color |
15 | Communication Signal Strength |
16 | Status Localization Service |
17 | LED timing from memory |
18 | Lighthouse Positioning |
ring.neffect
src/deck/drivers/src/ledring12.c (L1183)
Number of effects available.
ring.solidRed
src/deck/drivers/src/ledring12.c (L1188)
Intensity of Red for Solid color effect (default: 20)
ring.solidGreen
src/deck/drivers/src/ledring12.c (L1193)
Intensity of Green for solid color effect (default: 20)
ring.solidBlue
src/deck/drivers/src/ledring12.c (L1198)
Intensity of Blue for solid color effect (default: 20)
ring.headlightEnable
src/deck/drivers/src/ledring12.c (L1203)
Nonzero to Enable headlights (default: 0)
ring.emptyCharge
src/deck/drivers/src/ledring12.c (L1208)
At what volt the Battery effect indicates empty.
ring.fullCharge
src/deck/drivers/src/ledring12.c (L1214)
At what volt the battery effect indicates full.
ring.fadeColor
src/deck/drivers/src/ledring12.c (L1224)
Color to fade to for Fade color effect.
Encoded as:
bit 32 0 00000000 RRRRRRRR GGGGGGGG BBBBBBBB
ring.fadeTime
src/deck/drivers/src/ledring12.c (L1229)
The time for face effect to complete.
sensfusion6
Sensor fusion is the process of combining sensory data or data derived from disparate sources such that the resulting information has less uncertainty than would be possible when these sources were used individually.
The sensfusion6 module uses an 3 axis accelerometer and a 3 axis gyro to get accurate attitude measurements.
Variables
Name | Core | Type | Description |
---|---|---|---|
sensfusion6.kp | Core | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain (default: 0.002) |
sensfusion6.ki | Core | PARAM_FLOAT, PARAM_PERSISTENT | Propotional gain (default: 0.8) |
sensfusion6.baseZacc | PARAM_FLOAT |
Detailed Variable Information
sensfusion6.kp
src/modules/src/sensfusion6.c (L376)
Integral gain (default: 0.002)
sensfusion6.ki
src/modules/src/sensfusion6.c (L381)
Propotional gain (default: 0.8)
sensfusion6.baseZacc
src/modules/src/sensfusion6.c (L383)
sound
The buzzer deck contains a low profile piezo buzzer.
Variables
Name | Core | Type | Description |
---|---|---|---|
sound.effect | Core | PARAM_UINT8, PARAM_PERSISTENT | Id of effect to use (default: 0) |
sound.neffect | Core | PARAM_UINT32, PARAM_RONLY | Number of effects available. |
sound.freq | Core | PARAM_UINT16 | Frequency to use for Bypass effect. |
Detailed Variable Information
sound.effect
src/modules/src/sound_cf2.c (L397)
Id of effect to use (default: 0)
Id | Effect |
---|---|
0 | Off |
1 | Factory test |
2 | USB connected |
3 | USB disconnected |
4 | Charging done |
5 | Low battery |
6 | Startup |
7 | Calibrated |
8 | Range slow |
9 | Range fast |
10 | Star Wars Imperial March |
11 | Bypass |
12 | Siren |
13 | Tilt quad to play sound |
sound.neffect
src/modules/src/sound_cf2.c (L402)
Number of effects available.
sound.freq
src/modules/src/sound_cf2.c (L407)
Frequency to use for Bypass effect.
stabilizer
Parameters to set the estimator and controller type for the stabilizer module, or to do an emergency stop
Variables
Name | Core | Type | Description |
---|---|---|---|
stabilizer.estimator | Core | PARAM_UINT8 | Estimator type Any(0), complementary(1), kalman(2) (Default: 0) |
stabilizer.controller | Core | PARAM_UINT8 | Controller type Any(0), PID(1), Mellinger(2), INDI(3) (Default: 0) |
stabilizer.stop | Core | PARAM_UINT8 | If set to nonzero will turn off power. |
Detailed Variable Information
stabilizer.estimator
src/modules/src/stabilizer.c (L344)
Estimator type Any(0), complementary(1), kalman(2) (Default: 0)
stabilizer.controller
src/modules/src/stabilizer.c (L348)
Controller type Any(0), PID(1), Mellinger(2), INDI(3) (Default: 0)
stabilizer.stop
src/modules/src/stabilizer.c (L352)
If set to nonzero will turn off power.
syslink
Variables
Name | Core | Type | Description |
---|---|---|---|
syslink.probe | PARAM_UINT8 | Trigger syslink debug probe in the NRF by setting to 1. |
Detailed Variable Information
syslink.probe
Trigger syslink debug probe in the NRF by setting to 1.
system
Variables
Name | Core | Type | Description |
---|---|---|---|
system.highlight | Core | PARAM_UINT8 | Highlight quad. |
system.taskDump | Core | PARAM_UINT8 | Set to nonzero to dump CPU and stack usage to console. |
system.selftestPassed | Core | PARAM_INT8, PARAM_RONLY | All tests passed when booting. |
system.forceArm | PARAM_INT8, PARAM_PERSISTENT | Set to nonzero to force system to be armed. | |
system.assertInfo | PARAM_UINT8 | Set to nonzero to trigger dump of assert information to the log. |
Detailed Variable Information
system.highlight
src/deck/drivers/src/ledring12.c (L1241)
Highlight quad.
Uses functionality available, such as LEDs to highlight a quad, useful for swarms.
system.taskDump
src/modules/src/sysload.c (L126)
Set to nonzero to dump CPU and stack usage to console.
system.selftestPassed
src/modules/src/system.c (L443)
All tests passed when booting.
system.forceArm
src/modules/src/system.c (L448)
Set to nonzero to force system to be armed.
system.assertInfo
src/modules/src/system.c (L453)
Set to nonzero to trigger dump of assert information to the log.
tdoa2
Variables
Name | Core | Type | Description |
---|---|---|---|
tdoa2.stddev | PARAM_FLOAT | The measurement noise to use when sending TDoA measurements to the estimator. |
Detailed Variable Information
tdoa2.stddev
src/deck/drivers/src/lpsTdoa2Tag.c (L404)
The measurement noise to use when sending TDoA measurements to the estimator.
tdoa3
Variables
Name | Core | Type | Description |
---|---|---|---|
tdoa3.stddev | PARAM_FLOAT | The measurement noise to use when sending TDoA measurements to the estimator. |
Detailed Variable Information
tdoa3.stddev
src/deck/drivers/src/lpsTdoa3Tag.c (L334)
The measurement noise to use when sending TDoA measurements to the estimator.
tdoaEngine
The TDoA engine processes TDoA data from the Loco Positioning System.
Variables
Name | Core | Type | Description |
---|---|---|---|
tdoaEngine.logId | Core | PARAM_UINT8 | Id of anchor used for logging, primary anchor. |
tdoaEngine.logOthrId | Core | PARAM_UINT8 | Id of anchor used for logging, secondary anchor. |
tdoaEngine.matchAlgo | PARAM_UINT8 |
Detailed Variable Information
tdoaEngine.logId
src/modules/src/tdoaEngineInstance.c (L107)
Id of anchor used for logging, primary anchor.
tdoaEngine.logOthrId
src/modules/src/tdoaEngineInstance.c (L111)
Id of anchor used for logging, secondary anchor.
tdoaEngine.matchAlgo
src/modules/src/tdoaEngineInstance.c (L116)
usd
The micro SD card deck is used for on-board logging of data to a micro SD card.
Variables
Name | Core | Type | Description |
---|---|---|---|
usd.canLog | Core | PARAM_UINT8, PARAM_RONLY | Non zero if logging is possible, 0 indicates there might be a problem with the logging configuration. |
usd.logging | Core | PARAM_UINT8 | Controls if logging to the SD-card is active. Set to 1 to start logging, set to 0 to stop logging (default). |
Detailed Variable Information
usd.canLog
src/deck/drivers/src/usddeck.c (L1094)
Non zero if logging is possible, 0 indicates there might be a problem with the logging configuration.
usd.logging
src/deck/drivers/src/usddeck.c (L1099)
Controls if logging to the SD-card is active. Set to 1 to start logging, set to 0 to stop logging (default).
velCtlPid
Tuning settings for the gains of the PID controller for the velocity of the Crazyflie ¨ in the body-yaw-aligned X & Y and global Z directions.
Variables
Name | Core | Type | Description |
---|---|---|---|
velCtlPid.vxKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the velocity PID in the body-yaw-aligned X direction. | |
velCtlPid.vxKi | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the velocity PID in the body-yaw-aligned X direction. | |
velCtlPid.vxKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the velocity PID in the body-yaw-aligned X direction. | |
velCtlPid.vyKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the velocity PID in the body-yaw-aligned Y direction. | |
velCtlPid.vyKi | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the velocity PID in the body-yaw-aligned Y direction. | |
velCtlPid.vyKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the velocity PID in the body-yaw-aligned Y direction. | |
velCtlPid.vzKp | PARAM_FLOAT, PARAM_PERSISTENT | Proportional gain for the velocity PID in the global Z direction. | |
velCtlPid.vzKi | PARAM_FLOAT, PARAM_PERSISTENT | Integral gain for the velocity PID in the global Z direction. | |
velCtlPid.vzKd | PARAM_FLOAT, PARAM_PERSISTENT | Derivative gain for the velocity PID in the global Z direction. | |
velCtlPid.vxKFF | PARAM_FLOAT, PARAM_PERSISTENT | Feed-forward gain for the velocity PID in the body-yaw-aligned X direction (in degrees per m/s) | |
velCtlPid.vyKFF | PARAM_FLOAT, PARAM_PERSISTENT | Feed-forward gain for the velocity PID in the body-yaw-aligned Y direction (in degrees per m/s) |
Detailed Variable Information
velCtlPid.vxKp
src/modules/src/position_controller_pid.c (L407)
Proportional gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vxKi
src/modules/src/position_controller_pid.c (L411)
Integral gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vxKd
src/modules/src/position_controller_pid.c (L415)
Derivative gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vyKp
src/modules/src/position_controller_pid.c (L420)
Proportional gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vyKi
src/modules/src/position_controller_pid.c (L424)
Integral gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vyKd
src/modules/src/position_controller_pid.c (L428)
Derivative gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vzKp
src/modules/src/position_controller_pid.c (L433)
Proportional gain for the velocity PID in the global Z direction.
velCtlPid.vzKi
src/modules/src/position_controller_pid.c (L437)
Integral gain for the velocity PID in the global Z direction.
velCtlPid.vzKd
src/modules/src/position_controller_pid.c (L441)
Derivative gain for the velocity PID in the global Z direction.
velCtlPid.vxKFF
src/modules/src/position_controller_pid.c (L445)
Feed-forward gain for the velocity PID in the body-yaw-aligned X direction (in degrees per m/s)
velCtlPid.vyKFF
src/modules/src/position_controller_pid.c (L449)
Feed-forward gain for the velocity PID in the body-yaw-aligned Y direction (in degrees per m/s)