Daniel Agar
c85840c4dd
ekf2: mag_fusion only set fault status flags if mag_3D updating all states
...
- other parts of the system are blanket checking for any fault status
flag
2023-10-10 09:18:04 -04:00
Daniel Agar
e58ceba4b1
ekf2: mag_fusion consolidate duplicate error handling
2023-10-10 09:18:04 -04:00
Serkan Mazlum
585687b766
generate_dds_topics.py: simplify repeated code ( #22156 )
2023-10-10 08:12:55 +02:00
bresch
5e986f6997
wind_est: correctly include sideslip in initialization model
2023-10-09 21:03:38 -04:00
bresch
fc32820e19
ekf2: initialize wind covariance using symforce
2023-10-09 21:03:38 -04:00
Daniel Agar
28d58a947f
ekf2: cleanup more optional mag (CONFIG_EKF2_MAGNETOMETER)
2023-10-09 10:18:02 -04:00
Daniel Agar
5f87f3a046
ekf2: drag fusion add aid source status topic
2023-10-09 09:26:28 -04:00
Daniel Agar
028733e1c7
ekf2: add kconfig to disable wind estimation (off by default)
2023-10-09 09:22:29 -04:00
Silvan Fuhrer
c41de22a05
batteryCheck: add new battery threshold for arming (COM_ARM_BAT_MIN)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-10-09 07:40:48 +02:00
Silvan Fuhrer
b7f8ee8ee7
batteryCheck: improve user notification for low battery events
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-10-09 07:40:48 +02:00
Hamish Willee
bc19ccdd1f
Update commander_params.c - RC loss is manual control loss
2023-10-09 07:35:06 +02:00
Beniamino Pozzan
83841d1ad1
[gz-bridge] fix GZ timeout for slow starting simulations
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com>
2023-10-07 12:27:52 -04:00
Mathieu Bresciani
05fd8c5976
EKF2: centralized auto-generated state ( #22183 )
...
* ekf2_derivation: use single source of state definition
The state is defined as an ordered dictionary of group elements and
everything else is generated using that state definition
* ekf2: generated state sample add const reference getter
---------
Co-authored-by: bresch <[brescianimathieu@gmail.com ](mailto:brescianimathieu@gmail.com)>
Co-authored-by: Daniel Agar <daniel@agar.ca>
2023-10-06 10:28:21 -04:00
Beat Küng
2e1d5687f9
fix events: use px4_add_library instead of add_library
...
Fixes `make uorb_graphs`
2023-10-06 10:24:23 -04:00
Mathieu Bresciani
d61743412c
ekf2: fix flow gyro bias corrections ( #22145 )
...
* ekf2-flow: fix flow gyro bias compensation
* ekf2-flow: apply flow gyro bias when used
* ekf2: log optical flow gyro bias
* ekf2: optical flow control always use provided flow gyro (with bias applied)
* ekf2-flow: log flow gyro and gyro reference
* ekf2-flow: support senrors with XY flow gyro
---------
Co-authored-by: Daniel Agar <daniel@agar.ca>
Co-authored-by: bresch <[brescianimathieu@gmail.com ](mailto:brescianimathieu@gmail.com)>
2023-10-05 10:51:30 -04:00
Daniel Mesham
f02c5319bc
uxrce_dds_client: add participant configuration parameter
...
Replaces the localhost-only and custom participant CLI flags
2023-10-05 08:03:21 +02:00
Daniel Mesham
45fd4d2fb6
uxrce_dds_client: reformat status output
...
* Align status values.
* Add indicators for the custom participant and localhost-only flags.
2023-10-05 08:03:21 +02:00
Daniel Mesham
0a5ca3bb75
uxrce_dds_client: update parameter descriptions
2023-10-05 08:03:21 +02:00
Beat Küng
d1fcd39a44
fix crsf_rc: prevent potential buffer overflow for unknown packets
...
The length check for unknown packets did not include PACKET_SIZE_TYPE_SIZE
and CRC_SIZE, and hence working_index could overflow CRSF_MAX_PACKET_LEN,
triggering invalid memory access further down in QueueBuffer_PeekBuffer.
Also the working_segment_size was wrong for unknown packets.
Credits for finding this go to @Pwn9uin.
2023-10-05 08:00:22 +02:00
Daniel Agar
745709717e
drivers/imu/analog_devices/adis16507: use bad CRC perf count
2023-10-03 18:06:33 -04:00
bresch
10db6b6eda
ekf2: remove sparse vector optimization
...
The sparse vector template requires to know which states are non-zero in
the observation jacobian. This complicates the modularity of the code
when the state vector or the derivation is changed.
The computation cost difference is almost negligible for this size.
2023-10-02 10:12:53 -04:00
Silvan Fuhrer
abfd00aeb9
mission_base: if FW and takeoff do not enter climb before mission start
...
For FW takeoffs we need to keep the course straight towards the first
waypoint, and not climb in loiter patterns first.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-10-02 15:25:46 +02:00
Konrad
2779a00ac8
VTOL TAKEOFF: Add Config to deactivate, and deactivate on all boards except fmu_v5x and sitl.
...
QGC does not support VTOL takeoff and thus this is used to safe flash space.
2023-09-29 14:25:03 +02:00
Konrad
5c021d8fa4
RTL: Keep only the selected RTL type in memory.
2023-09-29 14:25:03 +02:00
Konrad
d4ea106f9e
RTL: When RTL_TYPE is set to 1 make sure to always use a mission landing/safepoint if available and not in RW mode.
2023-09-29 14:25:03 +02:00
Konrad
9a48d375ce
mavlink-mission: Calculate land_start and land item directly on mission upload.
2023-09-29 14:25:03 +02:00
Konrad
007ed11bbe
Mission+RTL: Refactoring mission and RTL to keep them separate. RTL does all its mission related computation in its own class.
...
Dataman: Add write function to dataman cache.
RTL and mission have a new common base class mission_base. Both inherit from them and mission, RTL mission, and rtl reverse mission inherit from them and implement their desired functionalities. This simplifies the logic in mission as well as make the logic in rtl mission reverse and mission more readable.
Rtl mission reverse now functional again for VTOL flying back the mission and transitioning to MC at the home position.
Dataman cache has new write functionality to write to dataman while updating write item in its cache if necessary.
Dataman cache is now only updated when the respective module is active. Leads to a higher computation time once on activation, but decreases unnecessary cache updates when inactive.
2023-09-29 14:25:03 +02:00
Silvan Fuhrer
1a7e438099
Param translation: remove all param translations up to 1.14 release
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Silvan Fuhrer
913a7ea295
FW Position Control: improve/shorten param descriptions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Silvan Fuhrer
8bc3785345
AirspeedSelector: improve/shorten param descriptions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Silvan Fuhrer
700402a031
EKF2: improve/shorten param descriptions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Silvan Fuhrer
f67b3a8a03
VTOL: improve/shorten param descriptions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Silvan Fuhrer
6b09882758
FW attitude/rate controller: shorten/improve param descriptions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-29 11:07:46 +02:00
Daniel Agar
b817eb0370
ekf2: collect_gps() don't throttle updates until WMM set initially
2023-09-29 09:37:30 +02:00
Daniel Agar
1e594747ab
ekf2: fix WMM NAN checks
...
- if any of the stored WMM is NAN then it should be updated
2023-09-29 09:37:30 +02:00
Silvan Fuhrer
0df5134156
vfr_hud: fix throttle display for FW and show magnitude for 3D thrust ( #22154 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-28 17:15:26 +02:00
Matthias Grob
8ea04b0f8f
ActuatorEffectivenessHelicopterCoaxial: fix copy paste error in saturation logic
2023-09-28 08:55:06 +02:00
Matthias Grob
8a2d2fb1cd
HelicopterCoaxial: only publish unallocated thrust in the saturation case
2023-09-28 08:55:06 +02:00
Matthias Grob
169a0f580d
HelicopterCoaxial: correct constraining for minimum 2 swash plate servos
2023-09-28 08:55:06 +02:00
Matthias Grob
20f2df4410
HelicopterCoaxial: handle yaw saturation
...
This had to be done for the integrators to work at all.
2023-09-28 08:55:06 +02:00
Matthias Grob
cf40d95ef0
HelicopterCoaxial: adjust for coaxial allocation
2023-09-28 08:55:06 +02:00
Matthias Grob
b3b373e074
control_allocator: add coaxial helicopter effectiveness
...
It's now just a copy of the helicopter such that changes get well
visible in the history.
2023-09-28 08:55:06 +02:00
Matthias Grob
b56e7a036c
control_allocator: allow for only 2 swash plate servos
...
This is required to support fixed pitch propeller helicopters that have
no collective but only cyclic pitch with two degrees of freedom and
hence only two servos.
The amount of thrust in the body z axis is then controlled using the
motor speed which makes particularly sense on coaxial helicopters
that need to control yaw with changing motor speeds already.
2023-09-28 08:55:06 +02:00
Matthias Grob
35b32e8cb0
ActuatorEffectivenessHelicopter: spacing
2023-09-28 08:55:06 +02:00
Matthias Grob
2be687a84c
Helicopter: add collective pitch offset to Actuator UI parameters
2023-09-28 08:55:06 +02:00
Matthias Grob
99e2acf89c
ActuatorEffectivenessHelicopter: explicitly handle unsaturated case
...
This became necessary otherwise
the allocation reports saturation all
the time and the rate integrator doesn't work.
2023-09-28 08:53:35 +02:00
henrykotze
3cee941f64
Kconfig subs and controllers for uavcan
...
small changed to revert back to px4::main
Make kconfig more readble
Combine esc and servo controllers under one option
2023-09-28 07:36:36 +02:00
Matthias Grob
a03af59c5c
battery: show unknown cell count
...
Unkown cell count is the default and
should be possible to select again from the drop down.
2023-09-28 07:32:06 +02:00
Niklas Hauser
43d859313b
px4/fmu-v5/6x: Upstream power manager for FMU
...
Detects and configures it correctly for the Auterion INA226-based power
modules.
2023-09-27 10:39:31 -04:00
Daniel Agar
14a967e2ca
ekf2: remove aid src status fusion_enabled flag
2023-09-26 10:30:16 -04:00