-
Notifications
You must be signed in to change notification settings - Fork 13.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sensors/vehicle_imu: incremental step towards multi-EKF #14004
Conversation
94134c6
to
c98d968
Compare
b5ff2df
to
f00edb1
Compare
@PX4/testflights Please bench and flight test this on a multicopter and share the log here. |
f00edb1
to
a2c1503
Compare
Tested on PixRacer V4The flight log started since the battery was connected, the 4 flight cards were made Flight Card 1 Modes Tested: Procedure: Notes: Flight Card 2 Modes Tested Procedure Armed form QGC. Flight Card 3 Procedure Note: Flight Card 4 Log: https://review.px4.io/plot_app?log=6c0f7e59-6643-448b-9377-5c39b7b00b31 Tested on CUAV nano V5Flight Card 1 Modes Tested: Procedure: Notes: Log: https://review.px4.io/plot_app?log=f7059b42-9fce-4c6f-84ee-97e7755c4572 Flight Card 2 Modes Tested Procedure Armed form QGC. Log: https://review.px4.io/plot_app?log=e199634b-ca58-4080-891a-5035e042ae92 Flight Card 3 Procedure Note: Log: https://review.px4.io/plot_app?log=cb0107b9-1270-4fa7-9496-3b1ef718f35d Flight Card 4 Log: https://review.px4.io/plot_app?log=9370931b-38b4-4454-90cb-9aeeacbed947 |
Tested on NXP FMUK66 v3Modes Tested Procedure Notes Logs |
Thanks everyone. |
One of the missing pieces for running multiple estimators (an instance per IMU or more) is the current sensors module only provides the voted primary IMU message (sensor_combined).
This pull request updates the sensors module to additionally launch a WorkItem per IMU (accel + gyro pair) that handles collecting the data, applying any corrections (thermal), board rotation (including level), then published as an instance of
vehicle_imu
.The ekf2 module has been updated to optionally subscribe to a specific
vehicle_imu
set by the parameterEKF2_IMU_ID
, or continue usingsensor_combined
.The structure of this change is a bit weird, but it will enable further multi-ekf development and testing while the sensors module is refactored.
Next steps
VehicleIMU
WorkItems and run in a WQ thread per EKFsensor_imu
message rather than rely on reassembling sensor_accel + sensor_gyro downstream