Persistent PX4 Sensor/Accel Failure on Stinger (D0013) with SDK 1.6.2 + Dev IMU/OV Servers
-
Support Request: Persistent PX4 Sensor/Accel Failure on Stinger (D0013) with SDK 1.6.2 + Dev IMU/OV Servers
System Information
- Hardware: ModalAI Stinger (D0013)
- Base SDK Version: SDK 1.6.2 (Clean install performed recently)
- Updated Packages:
qrb5165-imu-server: Built fromdevbranch (to support body frame output)voxl-open-vins-server: Built fromdevbranch
- Camera Configuration: Tracking Cameras (Front/Down) only.
Current Status
After a clean install of SDK 1.6.2 and upgrading the IMU and OpenVINS servers to the
devbranch versions (as suggested to handle D0013's inverted IMU natively):- VIO Tracking: Success. The drone is tracking perfectly in the Web Portal's 3D view. The virtual drone follows the real drone's movements correctly (RPY and translation).
- VOXL Vision Hub: Success.
voxl-vision-hubreportsresult: truein the Web Portal system check. - Image Sensors: Success. Previously reported errors, but now
imageSensor0andimageSensor1are detected correctly. - PX4 Flight Controller: FAILURE.
voxl-px4reportsresult: falsein the Web Portal system check.- Specific Error:
sensor_accel: result false(e.g.,x: -0.28, y: -0.28, z: 9.63). - The drone cannot enter Position Flight Mode.
- QGroundControl allows Arming in Manual mode, but rejects Position mode.
Steps Taken
- Clean Install: Re-flashed SDK 1.6.2 to ensure a clean state.
- Custom Build: Built and installed
qrb5165-imu-serverandvoxl-open-vins-serverfrom theirdevbranches on the device (usingvoxl-crossdocker).- This resolved previous issues with "Upside Down" initialization and VIO coordinate frame mismatches.
- Calibration: Performed clean IMU and Camera calibrations via
voxl-configure-mpaand QGroundControl. - Verification: Checked Web Portal. VIO is healthy, but PX4 fails to initialize the accelerometer properly.
Logs & Errors
We have attached the full
voxl-px4.log,voxl-imu-server.log, andvoxl-vision-hub.logfiles. Below are the critical errors observed.1. Parameter File Access Error (from voxl-px4.log)
PX4 fails to access the parameter file, which may be causing it to load incorrect defaults.
Dec 19 09:35:49 m0104 voxl-px4[3893]: INFO [param] selected parameter default file /data/px4/param/parameters Dec 19 09:35:49 m0104 voxl-px4[3893]: ERROR [param] open '/data/px4/param/parameters' failed (2)2. Sensor Start Timeouts (from voxl-px4.log)
The system attempts to start the IMU driver (
icm42688p) but times out.Dec 19 09:35:49 m0104 voxl-px4[3893]: Starting IMU driver with rotation 12 Dec 19 09:36:09 m0104 voxl-px4[3893]: INFO [qshell] Send cmd: 'icm42688p start -s -R 12' Dec 19 09:36:09 m0104 voxl-px4[3893]: ERROR [qshell] command timed out Dec 19 09:36:09 m0104 voxl-px4[3893]: ERROR [qshell] Command failed3. Accelerometer Failure (from voxl-px4.log)
This is the direct cause of the
sensor_accel: result falsestatus.Dec 19 09:36:49 m0104 voxl-px4[2171]: ERROR [muorb] [sensors] Accel #0 fail: TIMEOUT!4. IMU Server Analysis (from voxl-imu-server.log)
The
voxl-imu-serverappears to be running and detecting the IMU correctly (Detected M0104 VOXL2 mini,detected ICM42688).
It loads calibration data successfully.Dec 19 10:13:42 m0104 voxl-imu-server[30843]: detected ICM42688 on spi bus[id] 3 Dec 19 10:13:42 m0104 voxl-imu-server[30843]: started fifo on imu0IMU server seems healthy and publishing data.
5. Vision Hub Analysis (from voxl-vision-hub.log)
voxl-vision-hubsuccessfully connects to the VIO pipe (ov), but reports an issue with finding a specific extrinsic relation.Dec 19 10:07:19 m0104 voxl-vision-hub[1723]: Connected to VIO pipe: ov Dec 19 10:07:19 m0104 voxl-vision-hub[1723]: Geometry module updating to use imu: imu_apps_body for VIO ... Dec 19 10:07:17 m0104 voxl-vision-hub[1723]: ERROR: /etc/modalai/extrinsics.conf missing body to imu_apps_body, sticking with identity for nowAlso, there are connection errors to
voxl-mavlink-server:Dec 19 10:07:19 m0104 voxl-vision-hub[1723]: Error trying to send control command to pipe ch4 /run/mpa/mavlink_onboard/, not connectedThis suggests that while VIO itself is running, the communication chain to send this data to PX4 (via mavlink-server) might be broken or misconfigured.
Questions
Despite VIO working perfectly with the updated servers and
voxl-imu-serverappearing healthy, PX4 consistently fails to validate the accelerometer (sensor_accel: result false).- Is there a specific PX4 parameter or driver configuration in SDK 1.6.2 that conflicts with the Stinger (D0013) hardware, even with the updated IMU server?
- The accelerometer values (
z ~ 9.6) seem physically reasonable for a stationary drone. Why does the check returnfalse? - Are there known compatibility issues with
voxl-px4and thedevbranchqrb5165-imu-server?
-
@YUUJI-INOUE Can you send a PX4 log? If you can arm in manual mode then the PX4 IMU is working fine. The last voxl-px4 message sequence shows the IMU start correctly. If the parameters file does not yet exist (e.g. no PX4 parameters have been updated yet) then there will be no /data/px4/param/parameters file and you will see the error message: "open '/data/px4/param/parameters' failed". That is fine and to be expected. Once you have updated some parameters (e.g. running voxl-px4-param) then that file will be created and that error message will no longer appear.
-
Updated Support Request: Parameter Fix Attempt & Remaining Accelerometer/Position Mode Issues
Following the advice to update parameters, we have made progress but still cannot enter Position Mode due to persistent sensor checks failures.
Actions Taken
- Parameter Reset & Load:
- Executed
voxl-configure-px4-params --wizardand selected D0013 (Stinger). - Confirmed that
/data/px4/param/parametersis now created and populated.
- Executed
- Battery Configuration Fix:
- Manually corrected
BAT_N_CELLSto 4 (was defaulting to 6) andBAT_LOW_VOLTto 14.0V. - This successfully resolved the "Low Voltage" warning in QGC.
- Manually corrected
- Re-Calibration:
- Performed fresh Accelerometer, Level Horizon, and Compass calibrations in QGC.
- Performed Camera calibration.
Current Status
- Manual Mode: OK. We can Arm the drone and spin motors in Manual Mode. We have also performed a successful test flight in Manual Mode.
- VIO: OK. The virtual drone in Web Portal follows the real drone perfectly.
- Position Mode: FAILED.
- QGC shows "Ready for flight" briefly after reboot, but rejects Arming (Command denied).
- After disarming from a Manual Mode test, Position Mode switches to "Not Ready".
- Web Portal System Check: FAILED.
voxl-px4still reportssensor_accel: result false.- Values (e.g.,
z: 9.70) seem correct, but the check fails.
Persistent Logs Errors (New Logs Attached)
Despite the parameter fix,
voxl-px4.logstill shows communication timeouts with the sensors:ERROR [muorb] [sensors] Accel #0 fail: TIMEOUT! ERROR [qshell] Command failed ERROR [muorb] [drivers__device] i2c probe failedQuestions
- Since we can Arm in Manual Mode (suggesting the IMU hardware is working) and have loaded the correct D0013 parameters, why does
voxl-px4still reportsensor_accel: result falsewith timeouts? - Is there a specific driver or timing parameter in SDK 1.6.2 (with the
devbranch IMU server) that causes these spurious timeouts on the Stinger? - What is preventing Position Mode Arming even when VIO is healthy and Manual Arming works?
We have attached the latest logs (
voxl-px4.log,voxl-vision-hub.log) from this new configuration state.
voxl-px4.log
voxl-vision-hub.log - Parameter Reset & Load:
-
@YUUJI-INOUE said in Persistent PX4 Sensor/Accel Failure on Stinger (D0013) with SDK 1.6.2 + Dev IMU/OV Servers:
Updated Support Request: Parameter Fix Attempt & Remaining Accelerometer/Position Mode Issues
Following the advice to update parameters, we have made progress but still cannot enter Position Mode due to persistent sensor checks failures.
Actions Taken
- Parameter Reset & Load:
- Executed
voxl-configure-px4-params --wizardand selected D0013 (Stinger). - Confirmed that
/data/px4/param/parametersis now created and populated.
- Executed
- Battery Configuration Fix:
- Manually corrected
BAT_N_CELLSto 4 (was defaulting to 6) andBAT_LOW_VOLTto 14.0V. - This successfully resolved the "Low Voltage" warning in QGC.
- Manually corrected
- Re-Calibration:
- Performed fresh Accelerometer, Level Horizon, and Compass calibrations in QGC.
- Performed Camera calibration.
Current Status
- Manual Mode: OK. We can Arm the drone and spin motors in Manual Mode. We have also performed a successful test flight in Manual Mode.
- VIO: OK. The virtual drone in Web Portal follows the real drone perfectly.
- Position Mode: FAILED.
- QGC shows "Ready for flight" briefly after reboot, but rejects Arming (Command denied).
- After disarming from a Manual Mode test, Position Mode switches to "Not Ready".
- Web Portal System Check: FAILED.
voxl-px4still reportssensor_accel: result false.- Values (e.g.,
z: 9.70) seem correct, but the check fails.
Persistent Logs Errors (New Logs Attached)
Despite the parameter fix,
voxl-px4.logstill shows communication timeouts with the sensors:ERROR [muorb] [sensors] Accel #0 fail: TIMEOUT! ERROR [qshell] Command failed ERROR [muorb] [drivers__device] i2c probe failedQuestions
- Since we can Arm in Manual Mode (suggesting the IMU hardware is working) and have loaded the correct D0013 parameters, why does
voxl-px4still reportsensor_accel: result falsewith timeouts? - Is there a specific driver or timing parameter in SDK 1.6.2 (with the
devbranch IMU server) that causes these spurious timeouts on the Stinger? - What is preventing Position Mode Arming even when VIO is healthy and Manual Arming works?
We have attached the latest logs (
voxl-px4.log,voxl-vision-hub.log) from this new configuration state.
voxl-px4.log
voxl-vision-hub.logI've been hooked on this for two weeks now. Can someone tell me how to set up STINGER VER1 from scratch?
- Parameter Reset & Load: