Index
a
B
c
d
f
h
i
k
l
m
p
q
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)
asc37800
Variables
Name | Core | Type | Description |
---|---|---|---|
asc37800.currZtrim | PARAM_UINT16 | ||
asc37800.writeTrim | PARAM_UINT8 |
Detailed Variable Information
asc37800.currZtrim
src/deck/drivers/src/acs37800.c (L332)
asc37800.writeTrim
src/deck/drivers/src/acs37800.c (L333)
BigQuadTest
Variables
Name | Core | Type | Description |
---|---|---|---|
BigQuadTest.pass | PARAM_UINT8 |
Detailed Variable Information
BigQuadTest.pass
src/deck/drivers/src/test/bigquadtest.c (L142)
colAv
Onboard collision avoidance algorithm.
Buffered Voronoi collision avoidance (BVCA) is a reactive multi-robot collision avoidance method [1]. It is suitable for scenarios with low to medium spatial contention
We obtain the positions of neighbors on the same radio channel from the
BVCA acts by modifying the setpoints sent from the commander to the controller. The new setpoint will be as close as possible to the original while respecting the buffered Voronoi cell constraint. Our motion within the cell also depends on a planning horizon (longer horizon will lead to more conservative behavior) and a maximum speed. The commander and controller do not need to know if BVCA is enabled.
BVCA does not attempt to smooth the modified setpoints, so the output may be discontinuous or far from the current robot state. The controller must be able to handle this kind of input. Currently, only the PID controller is confirmed to work with BVCA. High-gain controllers like Mellinger may become unstable.
The volume for collision checking is a tall ellipsoid. This accounts for the downwash effect: Due to the fast-moving stream of air produced by the rotors, the safe distance to pass underneath another rotorcraft is much further than the safe distance to pass to the side. The radii of the ellipsoid can be set by using the parameters below.
A bounding box may be specified, for example when using a motion capture system. The box is applied to the Crazyflie’s center point only; the ellipsoid collision volume is ignored. The box can be set to +/- infinity if the flight space is unbounded.
[1] Zhou, Dingjiang, et al. “Fast, on-line collision avoidance for dynamic vehicles using buffered voronoi cells.” IEEE Robotics and Automation Letters 2.2 (2017): 1047-1054.
Variables
Name | Core | Type | Description |
---|---|---|---|
colAv.enable | Core | PARAM_UINT8 | Nonzero to enable collision avoidance. |
colAv.ellipsoidX | Core | PARAM_FLOAT | The x radius of the ellipsoid collision volume. |
colAv.ellipsoidY | Core | PARAM_FLOAT | The y radius of the ellipsoid collision volume. |
colAv.ellipsoidZ | Core | PARAM_FLOAT | The z radius of the ellipsoid collision volume. |
colAv.bboxMinX | PARAM_FLOAT | ||
colAv.bboxMinY | PARAM_FLOAT | ||
colAv.bboxMinZ | PARAM_FLOAT | ||
colAv.bboxMaxX | PARAM_FLOAT | ||
colAv.bboxMaxY | PARAM_FLOAT | ||
colAv.bboxMaxZ | PARAM_FLOAT | ||
colAv.horizon | PARAM_FLOAT | ||
colAv.maxSpeed | PARAM_FLOAT | ||
colAv.sidestepThrsh | PARAM_FLOAT | ||
colAv.maxPeerLocAge | PARAM_INT32 | ||
colAv.vorTol | PARAM_FLOAT | ||
colAv.vorIters | PARAM_INT32 |
Detailed Variable Information
colAv.enable
src/modules/src/collision_avoidance.c (L398)
Nonzero to enable collision avoidance.
Used to enable or disable the collision avoidance module.
colAv.ellipsoidX
src/modules/src/collision_avoidance.c (L403)
The x radius of the ellipsoid collision volume.
colAv.ellipsoidY
src/modules/src/collision_avoidance.c (L408)
The y radius of the ellipsoid collision volume.
colAv.ellipsoidZ
src/modules/src/collision_avoidance.c (L413)
The z radius of the ellipsoid collision volume.
colAv.bboxMinX
src/modules/src/collision_avoidance.c (L415)
colAv.bboxMinY
src/modules/src/collision_avoidance.c (L416)
colAv.bboxMinZ
src/modules/src/collision_avoidance.c (L417)
colAv.bboxMaxX
src/modules/src/collision_avoidance.c (L419)
colAv.bboxMaxY
src/modules/src/collision_avoidance.c (L420)
colAv.bboxMaxZ
src/modules/src/collision_avoidance.c (L421)
colAv.horizon
src/modules/src/collision_avoidance.c (L423)
colAv.maxSpeed
src/modules/src/collision_avoidance.c (L424)
colAv.sidestepThrsh
src/modules/src/collision_avoidance.c (L425)
colAv.maxPeerLocAge
src/modules/src/collision_avoidance.c (L426)
colAv.vorTol
src/modules/src/collision_avoidance.c (L427)
colAv.vorIters
src/modules/src/collision_avoidance.c (L428)
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 - deprecated (removed after August 2023) |
Detailed Variable Information
commander.enHighLevel
src/modules/src/commander.c (L157)
Enable high level commander - deprecated (removed after August 2023)
This parameter does not change anything and does not provide any functionality. There is no need to set it before using the high level commander. See https://github.com/bitcraze/crazyflie-firmware/pull/903
cppm
The CPPM (Combined Pulse Position Modulation) parameters configure the maximum angle/rate output given a maximum stick input for CRTP packets with emulated CPPM channels (e.g. RC transmitters connecting directly to the NRF radio, often with a 4-in-1 Multimodule), or for CPPM channels from an external receiver.
Variables
Name | Core | Type | Description |
---|---|---|---|
cppm.rateRoll | PARAM_FLOAT, PARAM_PERSISTENT | Config of max roll rate at max stick input [DPS] (default: 720) | |
cppm.ratePitch | PARAM_FLOAT, PARAM_PERSISTENT | Config of max pitch rate at max stick input [DPS] (default: 720) | |
cppm.angPitch | PARAM_FLOAT, PARAM_PERSISTENT | Config of max pitch angle at max stick input [DEG] (default: 50) | |
cppm.angRoll | PARAM_FLOAT, PARAM_PERSISTENT | Config of max roll angle at max stick input [DEG] (default: 50) | |
cppm.rateYaw | PARAM_FLOAT, PARAM_PERSISTENT | Config of max yaw rate at max stick input [DPS] (default: 400) |
Detailed Variable Information
cppm.rateRoll
src/modules/src/crtp_commander_generic.c (L446)
Config of max roll rate at max stick input [DPS] (default: 720)
cppm.ratePitch
src/modules/src/crtp_commander_generic.c (L450)
Config of max pitch rate at max stick input [DPS] (default: 720)
cppm.angPitch
src/modules/src/crtp_commander_generic.c (L454)
Config of max pitch angle at max stick input [DEG] (default: 50)
cppm.angRoll
src/modules/src/crtp_commander_generic.c (L458)
Config of max roll angle at max stick input [DEG] (default: 50)
cppm.rateYaw
src/modules/src/crtp_commander_generic.c (L462)
Config of max yaw rate at max stick input [DPS] (default: 400)
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 (L429)
Size in kB of the device flash memory.
cpu.id0
src/modules/src/system.c (L434)
Byte 0 - 3
of device unique id.
cpu.id1
src/modules/src/system.c (L439)
Byte 4 - 7
of device unique id.
cpu.id2
src/modules/src/system.c (L444)
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)
ctrlAtt
Variables
Name | Core | Type | Description |
---|---|---|---|
ctrlAtt.tau_xy | PARAM_FLOAT | ||
ctrlAtt.zeta_xy | PARAM_FLOAT | ||
ctrlAtt.tau_z | PARAM_FLOAT | ||
ctrlAtt.zeta_z | PARAM_FLOAT | ||
ctrlAtt.tau_rp | PARAM_FLOAT | ||
ctrlAtt.mixing_factor | PARAM_FLOAT | ||
ctrlAtt.coll_fairness | PARAM_FLOAT |
Detailed Variable Information
ctrlAtt.tau_xy
src/modules/src/controller/controller_brescianini.c (L411)
ctrlAtt.zeta_xy
src/modules/src/controller/controller_brescianini.c (L412)
ctrlAtt.tau_z
src/modules/src/controller/controller_brescianini.c (L413)
ctrlAtt.zeta_z
src/modules/src/controller/controller_brescianini.c (L414)
ctrlAtt.tau_rp
src/modules/src/controller/controller_brescianini.c (L415)
ctrlAtt.mixing_factor
src/modules/src/controller/controller_brescianini.c (L416)
ctrlAtt.coll_fairness
src/modules/src/controller/controller_brescianini.c (L417)
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/controller_indi.c (L345)
INDI Minimum thrust threshold [motor units].
ctrlINDI.bound_ctrl_input
src/modules/src/controller/controller_indi.c (L349)
INDI bounding for control input [motor units].
ctrlINDI.g1_p
src/modules/src/controller/controller_indi.c (L354)
INDI Controller effeciveness G1 p.
ctrlINDI.g1_q
src/modules/src/controller/controller_indi.c (L358)
INDI Controller effectiveness G1 q.
ctrlINDI.g1_r
src/modules/src/controller/controller_indi.c (L362)
INDI Controller effectiveness G1 r.
ctrlINDI.g2
src/modules/src/controller/controller_indi.c (L366)
INDI Controller effectiveness G2.
ctrlINDI.ref_err_p
src/modules/src/controller/controller_indi.c (L371)
INDI proportional gain, attitude error p.
ctrlINDI.ref_err_q
src/modules/src/controller/controller_indi.c (L375)
INDI proportional gain, attitude error q.
ctrlINDI.ref_err_r
src/modules/src/controller/controller_indi.c (L379)
INDI proportional gain, attitude error r.
ctrlINDI.ref_rate_p
src/modules/src/controller/controller_indi.c (L384)
INDI proportional gain, attitude rate error p.
ctrlINDI.ref_rate_q
src/modules/src/controller/controller_indi.c (L388)
INDI proportional gain, attitude rate error q.
ctrlINDI.ref_rate_r
src/modules/src/controller/controller_indi.c (L392)
INDI proportional gain, attitude rate error r.
ctrlINDI.act_dyn_p
src/modules/src/controller/controller_indi.c (L397)
INDI actuator dynamics parameter p.
ctrlINDI.act_dyn_q
src/modules/src/controller/controller_indi.c (L401)
INDI actuator dynamics parameter q.
ctrlINDI.act_dyn_r
src/modules/src/controller/controller_indi.c (L405)
INDI actuator dynamics parameter r.
ctrlINDI.filt_cutoff
src/modules/src/controller/controller_indi.c (L410)
INDI Filtering for the raw angular rates [Hz].
ctrlINDI.filt_cutoff_r
src/modules/src/controller/controller_indi.c (L414)
INDI Filtering for the raw angular rates [Hz].
ctrlINDI.outerLoopActive
src/modules/src/controller/controller_indi.c (L419)
Activate INDI for position control.
ctrlMel
Tunning variables for the full state Mellinger Controller
Variables
Name | Core | Type | Description |
---|---|---|---|
ctrlMel.kp_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position P-gain (horizontal xy plane) |
ctrlMel.kd_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position D-gain (horizontal xy plane) |
ctrlMel.ki_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position I-gain (horizontal xy plane) |
ctrlMel.i_range_xy | PARAM_FLOAT, PARAM_PERSISTENT | Attitude maximum accumulated error (roll and pitch) | |
ctrlMel.kp_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position P-gain (vertical z plane) |
ctrlMel.kd_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position D-gain (vertical z plane) |
ctrlMel.ki_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Position I-gain (vertical z plane) |
ctrlMel.i_range_z | PARAM_FLOAT, PARAM_PERSISTENT | Position maximum accumulated error (vertical z plane) | |
ctrlMel.mass | Core | PARAM_FLOAT, PARAM_PERSISTENT | total mass [kg] |
ctrlMel.massThrust | Core | PARAM_FLOAT, PARAM_PERSISTENT | Force to PWM stretch factor. |
ctrlMel.kR_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude P-gain (roll and pitch) |
ctrlMel.kR_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude P-gain (yaw) |
ctrlMel.kw_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude D-gain (roll and pitch) |
ctrlMel.kw_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude D-gain (yaw) |
ctrlMel.ki_m_xy | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude I-gain (roll and pitch) |
ctrlMel.ki_m_z | Core | PARAM_FLOAT, PARAM_PERSISTENT | Attitude I-gain (yaw) |
ctrlMel.kd_omega_rp | Core | PARAM_FLOAT, PARAM_PERSISTENT | Angular velocity D-Gain (roll and pitch) |
ctrlMel.i_range_m_xy | PARAM_FLOAT, PARAM_PERSISTENT | Attitude maximum accumulated error (roll and pitch) | |
ctrlMel.i_range_m_z | PARAM_FLOAT, PARAM_PERSISTENT | Attitude maximum accumulated error (yaw) |
Detailed Variable Information
ctrlMel.kp_xy
src/modules/src/controller/controller_mellinger.c (L345)
Position P-gain (horizontal xy plane)
ctrlMel.kd_xy
src/modules/src/controller/controller_mellinger.c (L349)
Position D-gain (horizontal xy plane)
ctrlMel.ki_xy
src/modules/src/controller/controller_mellinger.c (L353)
Position I-gain (horizontal xy plane)
ctrlMel.i_range_xy
src/modules/src/controller/controller_mellinger.c (L357)
Attitude maximum accumulated error (roll and pitch)
ctrlMel.kp_z
src/modules/src/controller/controller_mellinger.c (L361)
Position P-gain (vertical z plane)
ctrlMel.kd_z
src/modules/src/controller/controller_mellinger.c (L365)
Position D-gain (vertical z plane)
ctrlMel.ki_z
src/modules/src/controller/controller_mellinger.c (L369)
Position I-gain (vertical z plane)
ctrlMel.i_range_z
src/modules/src/controller/controller_mellinger.c (L373)
Position maximum accumulated error (vertical z plane)
ctrlMel.mass
src/modules/src/controller/controller_mellinger.c (L377)
total mass [kg]
ctrlMel.massThrust
src/modules/src/controller/controller_mellinger.c (L381)
Force to PWM stretch factor.
ctrlMel.kR_xy
src/modules/src/controller/controller_mellinger.c (L385)
Attitude P-gain (roll and pitch)
ctrlMel.kR_z
src/modules/src/controller/controller_mellinger.c (L389)
Attitude P-gain (yaw)
ctrlMel.kw_xy
src/modules/src/controller/controller_mellinger.c (L393)
Attitude D-gain (roll and pitch)
ctrlMel.kw_z
src/modules/src/controller/controller_mellinger.c (L397)
Attitude D-gain (yaw)
ctrlMel.ki_m_xy
src/modules/src/controller/controller_mellinger.c (L401)
Attitude I-gain (roll and pitch)
ctrlMel.ki_m_z
src/modules/src/controller/controller_mellinger.c (L405)
Attitude I-gain (yaw)
ctrlMel.kd_omega_rp
src/modules/src/controller/controller_mellinger.c (L409)
Angular velocity D-Gain (roll and pitch)
ctrlMel.i_range_m_xy
src/modules/src/controller/controller_mellinger.c (L413)
Attitude maximum accumulated error (roll and pitch)
ctrlMel.i_range_m_z
src/modules/src/controller/controller_mellinger.c (L417)
Attitude maximum accumulated error (yaw)
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.bcACS37800 | PARAM_UINT8, PARAM_RONLY | ||
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.bcFlapperDeck | Core | PARAM_UINT8, PARAM_RONLY | |
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.bcLoadcell | PARAM_UINT8, PARAM_RONLY | ||
deck.bcDWM1000 | Core | PARAM_UINT8, PARAM_RONLY | Deprecated (removed after August 2023). Use the “deck.bcLoco” parameter instead. |
deck.bcLoco | 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.bcServo | Core | 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.bcACS37800
src/deck/drivers/src/acs37800.c (L328)
deck.bcActiveMarker
src/deck/drivers/src/activeMarkerDeck.c (L311)
Nonzero if Active Marker deck is attached.
deck.bcAI
src/deck/drivers/src/aideck.c (L396)
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.bcFlapperDeck
src/deck/drivers/src/flapperdeck.c (L132)
deck.bcFlow
src/deck/drivers/src/flowdeck_v1v2.c (L329)
Nonzero if Flow deck v1 is attached.
deck.bcFlow2
src/deck/drivers/src/flowdeck_v1v2.c (L334)
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.bcLoadcell
src/deck/drivers/src/loadcell.c (L197)
deck.bcDWM1000
src/deck/drivers/src/locodeck.c (L608)
Deprecated (removed after August 2023). Use the “deck.bcLoco” parameter instead.
Nonzero if Loco positioning deck is attached
deck.bcLoco
src/deck/drivers/src/locodeck.c (L613)
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.bcServo
src/deck/drivers/src/servo.c (L230)
deck.bcUSD
src/deck/drivers/src/usddeck.c (L1093)
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.
flapper
Current sensor parameters
Flapper Drone configration parameters
Variables
Name | Core | Type | Description |
---|---|---|---|
flapper.ampsPerVolt | PARAM_FLOAT, PARAM_PERSISTENT | Current sensor constant (A/V) | |
flapper.filtAlpha | PARAM_FLOAT, PARAM_PERSISTENT | Current filter parameter <0; 1), set 0 to disable, 0.9999 for max effect. | |
flapper.motBiasRoll | PARAM_INT8, PARAM_PERSISTENT | Roll bias <-25%; 25%> (default 0%) | |
flapper.servPitchNeutr | PARAM_UINT8, PARAM_PERSISTENT | Pitch servo neutral <25%; 75%> (default 50%) | |
flapper.servYawNeutr | PARAM_UINT8, PARAM_PERSISTENT | Yaw servo neutral <25%; 75%> (default 50%) | |
flapper.flapperMaxThrust | PARAM_UINT16, PARAM_PERSISTENT | Yaw servo neutral <25%; 75%> (default 50%) |
Detailed Variable Information
flapper.ampsPerVolt
src/deck/drivers/src/flapperdeck.c (L150)
Current sensor constant (A/V)
flapper.filtAlpha
src/deck/drivers/src/flapperdeck.c (L154)
Current filter parameter <0; 1), set 0 to disable, 0.9999 for max effect.
flapper.motBiasRoll
src/modules/src/power_distribution_flapper.c (L239)
Roll bias <-25%; 25%> (default 0%)
This parameter can be used if uneven performance of the left and right flapping mechanaisms and/or wings is observed, which in flight results in a drift in roll/sideways flight. Positive values make the drone roll more to the right, negative values to the left.
flapper.servPitchNeutr
src/modules/src/power_distribution_flapper.c (L247)
Pitch servo neutral <25%; 75%> (default 50%)
The parameter sets the neutral position of the pitch servo, such that the left and right wing-pairs are aligned when observed from the side. If in flight you observe too much drift forward (nose down) increase the value and vice versa if the drift is backward (nose up).
flapper.servYawNeutr
src/modules/src/power_distribution_flapper.c (L254)
Yaw servo neutral <25%; 75%> (default 50%)
The parameter sets the neutral position of the yaw servo, such that the yaw control arm is pointed spanwise. If in flight you observe drift in the clock-wise direction, increase this parameter and vice-versa if the drift is counter-clock-wise.
flapper.flapperMaxThrust
src/modules/src/power_distribution_flapper.c (L261)
Yaw servo neutral <25%; 75%> (default 50%)
The parameter sets the neutral position of the yaw servo, such that the yaw control arm is pointed spanwise. If in flight you observe drift in the clock-wise direction, increase this parameter and vice-versa if the drift is counter-clock-wise.
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, PARAM_PERSISTENT | PWM ratio to use when testing propellers. Required for brushless motors. [0 - UINT16_MAX]. |
health.batTestPWMRatio | Core | PARAM_UINT16, PARAM_PERSISTENT | PWM ratio to use when testing the battery. [0 - UINT16_MAX]. |
Detailed Variable Information
health.startPropTest
src/modules/src/health.c (L330)
Set nonzero to initiate test of propellers.
health.startBatTest
src/modules/src/health.c (L335)
Set nonzero to initiate test of battery.
health.propTestPWMRatio
src/modules/src/health.c (L340)
PWM ratio to use when testing propellers. Required for brushless motors. [0 - UINT16_MAX].
health.batTestPWMRatio
src/modules/src/health.c (L345)
PWM ratio to use when testing the battery. [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) |
hlCommander.groupmask | Core | PARAM_UINT8 | Group mask of this Crazyflie. |
Detailed Variable Information
hlCommander.vtoff
src/modules/src/crtp_commander_high_level.c (L1024)
Default take off velocity (m/s)
hlCommander.vland
src/modules/src/crtp_commander_high_level.c (L1029)
Default landing velocity (m/s)
hlCommander.groupmask
src/modules/src/crtp_commander_high_level.c (L1038)
Group mask of this Crazyflie.
There are up to 8 groups each robot may belong to. Use 0 to indicate no group, i.e., this Crazyflie will react to all commands. Otherwise, for each group this robot should belong to set the corresponding bit to 1.
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.BMP3XX | PARAM_UINT8, PARAM_RONLY | Nonzero if BMP3XX barometer is present. | |
imu_sensors.imuPhi | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Phi defining IMU orientation on the airframe (in degrees) | |
imu_sensors.imuTheta | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Theta defining IMU orientation on the airframe (in degrees) | |
imu_sensors.imuPsi | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Psi defining IMU orientation on the airframe (in degrees) | |
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.BMP3XX
src/hal/src/sensors_bmi088_bmp3xx.c (L1018)
Nonzero if BMP3XX barometer is present.
imu_sensors.imuPhi
src/hal/src/sensors_bmi088_bmp3xx.c (L1023)
Euler angle Phi defining IMU orientation on the airframe (in degrees)
imu_sensors.imuTheta
src/hal/src/sensors_bmi088_bmp3xx.c (L1028)
Euler angle Theta defining IMU orientation on the airframe (in degrees)
imu_sensors.imuPsi
src/hal/src/sensors_bmi088_bmp3xx.c (L1033)
Euler angle Psi defining IMU orientation on the airframe (in degrees)
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 (L975)
Nonzero if AK8963 magnetometer is present.
imu_sensors.LPS25H
src/hal/src/sensors_mpu9250_lps25h.c (L980)
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. | |
imu_tests.imuPhi | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Phi defining IMU orientation on the airframe (in degrees) | |
imu_tests.imuTheta | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Theta defining IMU orientation on the airframe (in degrees) | |
imu_tests.imuPsi | PARAM_FLOAT, PARAM_PERSISTENT | Euler angle Psi defining IMU orientation on the airframe (in degrees) |
Detailed Variable Information
imu_tests.MPU6500
src/hal/src/sensors_mpu9250_lps25h.c (L989)
Nonzero if the MPU6500 self-test passes.
imu_tests.AK8963
src/hal/src/sensors_mpu9250_lps25h.c (L994)
Nonzero if the AK8963 self-test passes.
imu_tests.LPS25H
src/hal/src/sensors_mpu9250_lps25h.c (L999)
Nonzero if the LPS25H self-test passes.
imu_tests.imuPhi
src/hal/src/sensors_mpu9250_lps25h.c (L1004)
Euler angle Phi defining IMU orientation on the airframe (in degrees)
imu_tests.imuTheta
src/hal/src/sensors_mpu9250_lps25h.c (L1009)
Euler angle Theta defining IMU orientation on the airframe (in degrees)
imu_tests.imuPsi
src/hal/src/sensors_mpu9250_lps25h.c (L1014)
Euler angle Psi defining IMU orientation on the airframe (in degrees)
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.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/estimator_kalman.c (L516)
Reset the kalman estimator.
kalman.robustTdoa
src/modules/src/estimator/estimator_kalman.c (L520)
Nonzero to use robust TDOA method (default: 0)
kalman.robustTwr
src/modules/src/estimator/estimator_kalman.c (L524)
Nonzero to use robust TWR method (default: 0)
kalman.pNAcc_xy
src/modules/src/estimator/estimator_kalman.c (L528)
Process noise for x and y acceleration.
kalman.pNAcc_z
src/modules/src/estimator/estimator_kalman.c (L532)
Process noise for z acceleration.
kalman.pNVel
src/modules/src/estimator/estimator_kalman.c (L536)
Process noise for velocity.
kalman.pNPos
src/modules/src/estimator/estimator_kalman.c (L540)
Process noise for position.
kalman.pNAtt
src/modules/src/estimator/estimator_kalman.c (L544)
Process noise for attitude.
kalman.mNBaro
src/modules/src/estimator/estimator_kalman.c (L548)
Measurement noise for barometer.
kalman.mNGyro_rollpitch
src/modules/src/estimator/estimator_kalman.c (L552)
Measurement noise for roll/pitch gyros.
kalman.mNGyro_yaw
src/modules/src/estimator/estimator_kalman.c (L556)
Measurement noise for yaw gyro.
kalman.initialX
src/modules/src/estimator/estimator_kalman.c (L560)
Initial X after reset [m].
kalman.initialY
src/modules/src/estimator/estimator_kalman.c (L564)
Initial Y after reset [m].
kalman.initialZ
src/modules/src/estimator/estimator_kalman.c (L568)
Initial Z after reset [m].
kalman.initialYaw
src/modules/src/estimator/estimator_kalman.c (L572)
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 - deprecated (removed after August 2023) |
lighthouse.sweepStd | Core | PARAM_FLOAT | Standard deviation Sweep angles Lighthouse V1. |
lighthouse.sweepStd2 | Core | PARAM_FLOAT | Standard deviation Sweep angles Lighthouse V2. |
lighthouse.lh2maxRate | PARAM_UINT16 | Maximum rate of samples sent to the estimator. | |
lighthouse.enLhRawStream | PARAM_UINT8 |
Detailed Variable Information
lighthouse.method
src/modules/src/lighthouse/lighthouse_core.c (L922)
Estimation Method: 0:CrossingBeam, 1:Sweep in EKF (default: 1)
lighthouse.bsCalibReset
src/modules/src/lighthouse/lighthouse_core.c (L926)
Reset calibration data status.
lighthouse.systemType
src/modules/src/lighthouse/lighthouse_core.c (L931)
Lighthouse baseStation version: 1: LighthouseV1, 2:LighthouseV2 (default: 2)
lighthouse.bsAvailable
src/modules/src/lighthouse/lighthouse_core.c (L938)
Bit field that indicates which base stations that are supported by the system - deprecated (removed after August 2023)
The lowest bit maps to base station channel 1 and the highest to channel 16.
lighthouse.sweepStd
src/modules/src/lighthouse/lighthouse_position_est.c (L501)
Standard deviation Sweep angles Lighthouse V1.
lighthouse.sweepStd2
src/modules/src/lighthouse/lighthouse_position_est.c (L505)
Standard deviation Sweep angles Lighthouse V2.
lighthouse.lh2maxRate
src/modules/src/lighthouse/lighthouse_throttle.c (L72)
Maximum rate of samples sent to the estimator.
When many LH V2 base stations are available in a system, the over all rate of samples sent to the estimator might be too high to handle. This parameter sets the (approximate) maximum rate (samples/s). 50 By default.
lighthouse.enLhRawStream
src/modules/src/lighthouse/lighthouse_transmit.c (L177)
loadcell
Variables
Name | Core | Type | Description |
---|---|---|---|
loadcell.enable | PARAM_UINT8 | ||
loadcell.a | PARAM_FLOAT | ||
loadcell.b | PARAM_FLOAT | ||
loadcell.sampleRate | PARAM_UINT8 | ||
loadcell.channel | PARAM_UINT8 |
Detailed Variable Information
loadcell.enable
src/deck/drivers/src/loadcell.c (L201)
loadcell.a
src/deck/drivers/src/loadcell.c (L202)
loadcell.b
src/deck/drivers/src/loadcell.c (L203)
loadcell.sampleRate
src/deck/drivers/src/loadcell_nau7802.c (L558)
loadcell.channel
src/deck/drivers/src/loadcell_nau7802.c (L559)
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 (L699)
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 (L465)
Enable CRTP stream of Loco node distance.
locSrv.enLhAngleStream
src/modules/src/crtp_localization_service.c (L469)
Enable CRTP stream of Lighthouse sweep angles.
locSrv.extPosStdDev
src/modules/src/crtp_localization_service.c (L473)
Standard deviation of external position.
locSrv.extQuatStdDev
src/modules/src/crtp_localization_service.c (L477)
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 measurements
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 deviation estimation (default: 0) | |
motion.flowStdFixed | Core | PARAM_FLOAT | Set standard deviation flow measurement (default: 2.0f) |
Detailed Variable Information
motion.disable
src/deck/drivers/src/flowdeck_v1v2.c (L313)
Nonzero to not push the flow measurement in the EKF (default: 0)
motion.adaptive
src/deck/drivers/src/flowdeck_v1v2.c (L317)
Nonzero to turn on adaptive standard deviation estimation (default: 0)
motion.flowStdFixed
src/deck/drivers/src/flowdeck_v1v2.c (L321)
Set standard deviation 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 (L720)
Nonzero to override controller with set values.
motorPowerSet.m1
src/drivers/src/motors.c (L725)
motor power for m1: 0 - UINT16_MAX
motorPowerSet.m2
src/drivers/src/motors.c (L730)
motor power for m2: 0 - UINT16_MAX
motorPowerSet.m3
src/drivers/src/motors.c (L735)
motor power for m3: 0 - UINT16_MAX
motorPowerSet.m4
src/drivers/src/motors.c (L740)
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.roll_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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.pitch_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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. | |
pid_attitude.yaw_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the PID yaw controller. | |
pid_attitude.yawMaxDelta | PARAM_FLOAT, PARAM_PERSISTENT | If nonzero, yaw setpoint can only be set within +/- yawMaxDelta from the current yaw. | |
pid_attitude.attFiltEn | PARAM_INT8, PARAM_PERSISTENT | Low pass filter enable. | |
pid_attitude.attFiltCut | PARAM_FLOAT, PARAM_PERSISTENT | Low pass filter cut-off frequency (Hz) |
Detailed Variable Information
pid_attitude.roll_kp
src/modules/src/controller/attitude_pid_controller.c (L322)
Proportional gain for the PID roll controller.
pid_attitude.roll_ki
src/modules/src/controller/attitude_pid_controller.c (L326)
Integral gain for the PID roll controller.
pid_attitude.roll_kd
src/modules/src/controller/attitude_pid_controller.c (L330)
Derivative gain for the PID roll controller.
pid_attitude.roll_kff
src/modules/src/controller/attitude_pid_controller.c (L334)
Feedforward gain for the PID roll controller.
pid_attitude.pitch_kp
src/modules/src/controller/attitude_pid_controller.c (L338)
Proportional gain for the PID pitch controller.
pid_attitude.pitch_ki
src/modules/src/controller/attitude_pid_controller.c (L342)
Integral gain for the PID pitch controller.
pid_attitude.pitch_kd
src/modules/src/controller/attitude_pid_controller.c (L346)
Derivative gain for the PID pitch controller.
pid_attitude.pitch_kff
src/modules/src/controller/attitude_pid_controller.c (L350)
Feedforward gain for the PID pitch controller.
pid_attitude.yaw_kp
src/modules/src/controller/attitude_pid_controller.c (L354)
Proportional gain for the PID yaw controller.
pid_attitude.yaw_ki
src/modules/src/controller/attitude_pid_controller.c (L358)
Integral gain for the PID yaw controller.
pid_attitude.yaw_kd
src/modules/src/controller/attitude_pid_controller.c (L362)
Derivative gain for the PID yaw controller.
pid_attitude.yaw_kff
src/modules/src/controller/attitude_pid_controller.c (L366)
Feedforward gain for the PID yaw controller.
pid_attitude.yawMaxDelta
src/modules/src/controller/attitude_pid_controller.c (L370)
If nonzero, yaw setpoint can only be set within +/- yawMaxDelta from the current yaw.
pid_attitude.attFiltEn
src/modules/src/controller/attitude_pid_controller.c (L374)
Low pass filter enable.
pid_attitude.attFiltCut
src/modules/src/controller/attitude_pid_controller.c (L378)
Low pass filter cut-off frequency (Hz)
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.roll_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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.pitch_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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. | |
pid_rate.yaw_kff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the PID yaw rate controller. | |
pid_rate.rateFiltEn | PARAM_INT8, PARAM_PERSISTENT | Low pass filter enable. | |
pid_rate.omxFiltCut | PARAM_FLOAT, PARAM_PERSISTENT | Low pass filter cut-off frequency, roll axis (Hz) | |
pid_rate.omyFiltCut | PARAM_FLOAT, PARAM_PERSISTENT | Low pass filter cut-off frequency, pitch axis (Hz) | |
pid_rate.omzFiltCut | PARAM_FLOAT, PARAM_PERSISTENT | Low pass filter cut-off frequency, yaw axis (Hz) |
Detailed Variable Information
pid_rate.roll_kp
src/modules/src/controller/attitude_pid_controller.c (L389)
Proportional gain for the PID roll rate controller.
pid_rate.roll_ki
src/modules/src/controller/attitude_pid_controller.c (L393)
Integral gain for the PID roll rate controller.
pid_rate.roll_kd
src/modules/src/controller/attitude_pid_controller.c (L397)
Derivative gain for the PID roll rate controller.
pid_rate.roll_kff
src/modules/src/controller/attitude_pid_controller.c (L401)
Feedforward gain for the PID roll rate controller.
pid_rate.pitch_kp
src/modules/src/controller/attitude_pid_controller.c (L405)
Proportional gain for the PID pitch rate controller.
pid_rate.pitch_ki
src/modules/src/controller/attitude_pid_controller.c (L409)
Integral gain for the PID pitch rate controller.
pid_rate.pitch_kd
src/modules/src/controller/attitude_pid_controller.c (L413)
Derivative gain for the PID pitch rate controller.
pid_rate.pitch_kff
src/modules/src/controller/attitude_pid_controller.c (L417)
Feedforward gain for the PID pitch rate controller.
pid_rate.yaw_kp
src/modules/src/controller/attitude_pid_controller.c (L421)
Proportional gain for the PID yaw rate controller.
pid_rate.yaw_ki
src/modules/src/controller/attitude_pid_controller.c (L425)
Integral gain for the PID yaw rate controller.
pid_rate.yaw_kd
src/modules/src/controller/attitude_pid_controller.c (L429)
Derivative gain for the PID yaw rate controller.
pid_rate.yaw_kff
src/modules/src/controller/attitude_pid_controller.c (L433)
Feedforward gain for the PID yaw rate controller.
pid_rate.rateFiltEn
src/modules/src/controller/attitude_pid_controller.c (L437)
Low pass filter enable.
pid_rate.omxFiltCut
src/modules/src/controller/attitude_pid_controller.c (L441)
Low pass filter cut-off frequency, roll axis (Hz)
pid_rate.omyFiltCut
src/modules/src/controller/attitude_pid_controller.c (L445)
Low pass filter cut-off frequency, pitch axis (Hz)
pid_rate.omzFiltCut
src/modules/src/controller/attitude_pid_controller.c (L449)
Low pass filter cut-off frequency, yaw axis (Hz)
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 (L562)
At what voltage power management will indicate low battery.
pm.criticalLowVoltage
src/hal/src/pm_stm32f4.c (L566)
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 | Integral 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.xKff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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.yKff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward 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.zKff | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the position PID in the body-yaw-aligned 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/controller/position_controller_pid.c (L525)
Proportional gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.xKi
src/modules/src/controller/position_controller_pid.c (L529)
Integral gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.xKd
src/modules/src/controller/position_controller_pid.c (L533)
Derivative gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.xKff
src/modules/src/controller/position_controller_pid.c (L537)
Feedforward gain for the position PID in the body-yaw-aligned X direction.
posCtlPid.yKp
src/modules/src/controller/position_controller_pid.c (L542)
Proportional gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.yKi
src/modules/src/controller/position_controller_pid.c (L546)
Integral gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.yKd
src/modules/src/controller/position_controller_pid.c (L550)
Derivative gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.yKff
src/modules/src/controller/position_controller_pid.c (L554)
Feedforward gain for the position PID in the body-yaw-aligned Y direction.
posCtlPid.zKp
src/modules/src/controller/position_controller_pid.c (L559)
Proportional gain for the position PID in the global Z direction.
posCtlPid.zKi
src/modules/src/controller/position_controller_pid.c (L563)
Integral gain for the position PID in the global Z direction.
posCtlPid.zKd
src/modules/src/controller/position_controller_pid.c (L567)
Derivative gain for the position PID in the global Z direction.
posCtlPid.zKff
src/modules/src/controller/position_controller_pid.c (L571)
Feedforward gain for the position PID in the body-yaw-aligned Z direction.
posCtlPid.thrustBase
src/modules/src/controller/position_controller_pid.c (L576)
Approx. thrust needed for hover.
posCtlPid.thrustMin
src/modules/src/controller/position_controller_pid.c (L580)
Min. thrust value to output.
posCtlPid.rLimit
src/modules/src/controller/position_controller_pid.c (L585)
Roll absolute limit.
posCtlPid.pLimit
src/modules/src/controller/position_controller_pid.c (L589)
Pitch absolute limit.
posCtlPid.xVelMax
src/modules/src/controller/position_controller_pid.c (L593)
Maximum body-yaw-aligned X velocity.
posCtlPid.yVelMax
src/modules/src/controller/position_controller_pid.c (L597)
Maximum body-yaw-aligned Y velocity.
posCtlPid.zVelMax
src/modules/src/controller/position_controller_pid.c (L601)
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/controller/position_controller_indi.c (L282)
INDI position controller X proportional gain.
posCtrlIndi.K_xi_y
src/modules/src/controller/position_controller_indi.c (L286)
INDI position controller Y proportional gain.
posCtrlIndi.K_xi_z
src/modules/src/controller/position_controller_indi.c (L290)
INDI position controller Z proportional gain.
posCtrlIndi.K_dxi_x
src/modules/src/controller/position_controller_indi.c (L295)
INDI velocity controller X proportional gain.
posCtrlIndi.K_dxi_y
src/modules/src/controller/position_controller_indi.c (L299)
INDI velocity controller Y proportional gain.
posCtrlIndi.K_dxi_z
src/modules/src/controller/position_controller_indi.c (L303)
INDI velocity controller Z proportional gain.
posCtrlIndi.pq_clamping
src/modules/src/controller/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/estimator/position_estimator_altitude.c (L137)
parameter alpha IIR Filter above sea level/true altitude (baro)
posEstAlt.estAlphaZr
src/modules/src/estimator/position_estimator_altitude.c (L141)
parameter alpha IIR Filter Height (zranger)
posEstAlt.velFactor
src/modules/src/estimator/position_estimator_altitude.c (L145)
Multiplying factor for adding velocity.
posEstAlt.velZAlpha
src/modules/src/estimator/position_estimator_altitude.c (L149)
Blendning factor to avoid accumulate error.
posEstAlt.vAccDeadband
src/modules/src/estimator/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_flapper.c (L224)
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.
quadSysId
System identification parameters for quad rotor
Variables
Name | Core | Type | Description |
---|---|---|---|
quadSysId.thrustToTorque | PARAM_FLOAT | ||
quadSysId.pwmToThrustA | PARAM_FLOAT | ||
quadSysId.pwmToThrustB | PARAM_FLOAT | ||
quadSysId.armLength | PARAM_FLOAT | Length of arms (m) |
Detailed Variable Information
quadSysId.thrustToTorque
src/modules/src/power_distribution_quadrotor.c (L216)
quadSysId.pwmToThrustA
src/modules/src/power_distribution_quadrotor.c (L217)
quadSysId.pwmToThrustB
src/modules/src/power_distribution_quadrotor.c (L218)
quadSysId.armLength
src/modules/src/power_distribution_quadrotor.c (L225)
Length of arms (m)
The distance from the center to a motor
radiotest
Variables
Name | Core | Type | Description |
---|---|---|---|
radiotest.channel | PARAM_UINT8 | ||
radiotest.power | PARAM_INT8 | ||
radiotest.contwave | PARAM_UINT8 |
Detailed Variable Information
radiotest.channel
src/deck/drivers/src/test/radiotest.c (L147)
radiotest.power
src/deck/drivers/src/test/radiotest.c (L148)
radiotest.contwave
src/deck/drivers/src/test/radiotest.c (L149)
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)
servo
“Servo” deck parameters
Variables
Name | Core | Type | Description |
---|---|---|---|
servo.servoMINus | PARAM_UINT16, PARAM_PERSISTENT | PWM pulse width for minimal servo position (in microseconds) | |
servo.servoMAXus | PARAM_UINT16, PARAM_PERSISTENT | PWM pulse width for maximal servo position (in microseconds) | |
servo.servoRange | PARAM_UINT8, PARAM_PERSISTENT | Servo range, i.e. angle between the min and max positions (in degrees) | |
servo.servoIdle | PARAM_UINT8, PARAM_PERSISTENT | Servo idle (startup) angular position (in degrees, min = 0, max = servoRange) | |
servo.servoAngle | PARAM_UINT8 | Servo angular position (in degrees, min = 0, max = servoRange) |
Detailed Variable Information
servo.servoMINus
src/deck/drivers/src/servo.c (L241)
PWM pulse width for minimal servo position (in microseconds)
servo.servoMAXus
src/deck/drivers/src/servo.c (L245)
PWM pulse width for maximal servo position (in microseconds)
servo.servoRange
src/deck/drivers/src/servo.c (L249)
Servo range, i.e. angle between the min and max positions (in degrees)
servo.servoIdle
src/deck/drivers/src/servo.c (L253)
Servo idle (startup) angular position (in degrees, min = 0, max = servoRange)
servo.servoAngle
src/deck/drivers/src/servo.c (L257)
Servo angular position (in degrees, min = 0, max = servoRange)
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
Variables
Name | Core | Type | Description |
---|---|---|---|
stabilizer.estimator | Core | PARAM_UINT8 | Estimator type Auto select(0), complementary(1), extended kalman(2), **unscented kalman(3) (Default: 0) |
stabilizer.controller | Core | PARAM_UINT8 | Controller type Auto select(0), PID(1), Mellinger(2), INDI(3), Brescianini(4), Lee(5) (Default: 0) |
stabilizer.stop | Core | PARAM_UINT8 | If set to nonzero will turn off motors. |
Detailed Variable Information
stabilizer.estimator
src/modules/src/stabilizer.c (L390)
Estimator type Auto select(0), complementary(1), extended kalman(2), **unscented kalman(3) (Default: 0)
** Experimental, needs to be enabled in kbuild
stabilizer.controller
src/modules/src/stabilizer.c (L394)
Controller type Auto select(0), PID(1), Mellinger(2), INDI(3), Brescianini(4), Lee(5) (Default: 0)
stabilizer.stop
src/modules/src/supervisor.c (L493)
If set to nonzero will turn off motors.
supervisor
The purpose of the supervisor is to monitor the system and its state. Depending on the situation, the supervisor can enable/disable functionality as well as take action to protect the system or humans close by.
Variables
Name | Core | Type | Description |
---|---|---|---|
supervisor.infdmp | PARAM_UINT8 | Set to nonzero to dump information about the current supervisor state to the console log. | |
supervisor.landedTimeout | PARAM_UINT16, PARAM_PERSISTENT | Landing timeout duration (ms) | |
supervisor.tmblChckEn | PARAM_UINT8, PARAM_PERSISTENT | Set to zero to disable tumble check. |
Detailed Variable Information
supervisor.infdmp
src/modules/src/supervisor.c (L535)
Set to nonzero to dump information about the current supervisor state to the console log.
supervisor.landedTimeout
src/modules/src/supervisor.c (L540)
Landing timeout duration (ms)
supervisor.tmblChckEn
src/modules/src/supervisor.c (L545)
Set to zero to disable tumble check.
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.storageStats | PARAM_UINT8 | Set to nonzero to dump CPU and stack usage to console. | |
system.storageReformat | PARAM_UINT8 | Set to nonzero to re-format the storage. Warning: all data will be lost! | |
system.arm | Core | PARAM_INT8 | Set to nonzero to arm the system. A nonzero value enables the auto arm functionality. |
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.assertInfo | PARAM_UINT8 | Set to nonzero to trigger dump of assert information to the log. | |
system.testLogParam | PARAM_UINT8 | Test util for log and param. This param sets the value of the sys.testLogParam log variable. | |
system.doAssert | PARAM_UINT8 | Set to non-zero to trigger a failed assert, useful for debugging. |
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.storageStats
Set to nonzero to dump CPU and stack usage to console.
system.storageReformat
Set to nonzero to re-format the storage. Warning: all data will be lost!
system.arm
src/modules/src/supervisor.c (L504)
Set to nonzero to arm the system. A nonzero value enables the auto arm functionality.
Deprecated, will be removed after 2024-06-01. Use the CRTP PlatformCommand
armSystem
on the CRTP_PORT_PLATFORM port instead.
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 (L453)
All tests passed when booting.
system.assertInfo
src/modules/src/system.c (L458)
Set to nonzero to trigger dump of assert information to the log.
system.testLogParam
src/modules/src/system.c (L464)
Test util for log and param. This param sets the value of the sys.testLogParam log variable.
system.doAssert
src/modules/src/system.c (L470)
Set to non-zero to trigger a failed assert, useful for debugging.
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 (L403)
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 (L739)
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)
ukf
Parameter values used for tuning the Unscented Kalman Filter (experimental)
Variables
Name | Core | Type | Description |
---|---|---|---|
ukf.resetEstimation | PARAM_UINT8 | ||
ukf.useNavFilter | PARAM_UINT8 | ||
ukf.sigmaInitPos_xy | PARAM_FLOAT | ||
ukf.sigmaInitPos_z | PARAM_FLOAT | ||
ukf.sigmaInitVel | PARAM_FLOAT | ||
ukf.sigmaInitAtt | PARAM_FLOAT | ||
ukf.procNoiseA_h | PARAM_FLOAT | ||
ukf.procNoiseA_z | PARAM_FLOAT | ||
ukf.procNoiseVel_h | PARAM_FLOAT | ||
ukf.procNoiseVel_z | PARAM_FLOAT | ||
ukf.procNoiseRate_h | PARAM_FLOAT | ||
ukf.procNoiseRate_z | PARAM_FLOAT | ||
ukf.baroNoise | PARAM_FLOAT | ||
ukf.qualityGateTof | PARAM_FLOAT | ||
ukf.qualityGateFlow | PARAM_FLOAT | ||
ukf.qualityGateTdoa | PARAM_FLOAT | ||
ukf.qualityGateBaro | PARAM_FLOAT | ||
ukf.qualityGateSweep | PARAM_FLOAT | ||
ukf.ukfw0 | PARAM_FLOAT |
Detailed Variable Information
ukf.resetEstimation
src/modules/src/estimator/estimator_ukf.c (L1599)
ukf.useNavFilter
src/modules/src/estimator/estimator_ukf.c (L1600)
ukf.sigmaInitPos_xy
src/modules/src/estimator/estimator_ukf.c (L1601)
ukf.sigmaInitPos_z
src/modules/src/estimator/estimator_ukf.c (L1602)
ukf.sigmaInitVel
src/modules/src/estimator/estimator_ukf.c (L1603)
ukf.sigmaInitAtt
src/modules/src/estimator/estimator_ukf.c (L1604)
ukf.procNoiseA_h
src/modules/src/estimator/estimator_ukf.c (L1605)
ukf.procNoiseA_z
src/modules/src/estimator/estimator_ukf.c (L1606)
ukf.procNoiseVel_h
src/modules/src/estimator/estimator_ukf.c (L1607)
ukf.procNoiseVel_z
src/modules/src/estimator/estimator_ukf.c (L1608)
ukf.procNoiseRate_h
src/modules/src/estimator/estimator_ukf.c (L1609)
ukf.procNoiseRate_z
src/modules/src/estimator/estimator_ukf.c (L1610)
ukf.baroNoise
src/modules/src/estimator/estimator_ukf.c (L1611)
ukf.qualityGateTof
src/modules/src/estimator/estimator_ukf.c (L1612)
ukf.qualityGateFlow
src/modules/src/estimator/estimator_ukf.c (L1613)
ukf.qualityGateTdoa
src/modules/src/estimator/estimator_ukf.c (L1614)
ukf.qualityGateBaro
src/modules/src/estimator/estimator_ukf.c (L1615)
ukf.qualityGateSweep
src/modules/src/estimator/estimator_ukf.c (L1616)
ukf.ukfw0
src/modules/src/estimator/estimator_ukf.c (L1617)
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 (L1104)
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 (L1109)
Controls if logging to the SD-card is active. Set to 1 to start logging, set to 0 to stop logging (default).
usec
Variables
Name | Core | Type | Description |
---|---|---|---|
usec.reset | PARAM_UINT8 | Reset the time to zero. |
Detailed Variable Information
usec.reset
src/hal/src/usec_time.c (L130)
Reset the time to zero.
Useful for time synchronization between UAVs, if reset is send as a broadcast.
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.vxKFF | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the velocity PID in the body-yaw-aligned X direction (in degrees per m/s) | |
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.vyKFF | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the velocity PID in the body-yaw-aligned Y direction (in degrees per m/s) | |
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.vzKFF | PARAM_FLOAT, PARAM_PERSISTENT | Feedforward gain for the velocity PID in the global direction (in degrees per m/s) |
Detailed Variable Information
velCtlPid.vxKp
src/modules/src/controller/position_controller_pid.c (L466)
Proportional gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vxKi
src/modules/src/controller/position_controller_pid.c (L470)
Integral gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vxKd
src/modules/src/controller/position_controller_pid.c (L474)
Derivative gain for the velocity PID in the body-yaw-aligned X direction.
velCtlPid.vxKFF
src/modules/src/controller/position_controller_pid.c (L478)
Feedforward gain for the velocity PID in the body-yaw-aligned X direction (in degrees per m/s)
velCtlPid.vyKp
src/modules/src/controller/position_controller_pid.c (L483)
Proportional gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vyKi
src/modules/src/controller/position_controller_pid.c (L487)
Integral gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vyKd
src/modules/src/controller/position_controller_pid.c (L491)
Derivative gain for the velocity PID in the body-yaw-aligned Y direction.
velCtlPid.vyKFF
src/modules/src/controller/position_controller_pid.c (L495)
Feedforward gain for the velocity PID in the body-yaw-aligned Y direction (in degrees per m/s)
velCtlPid.vzKp
src/modules/src/controller/position_controller_pid.c (L500)
Proportional gain for the velocity PID in the global Z direction.
velCtlPid.vzKi
src/modules/src/controller/position_controller_pid.c (L504)
Integral gain for the velocity PID in the global Z direction.
velCtlPid.vzKd
src/modules/src/controller/position_controller_pid.c (L508)
Derivative gain for the velocity PID in the global Z direction.
velCtlPid.vzKFF
src/modules/src/controller/position_controller_pid.c (L512)
Feedforward gain for the velocity PID in the global direction (in degrees per m/s)