Replies: 1 comment
-
Sorry for this very late reply. Please try to read each sensor separately and ,make sure that it access Gyro, Acc, Mag and they all give reasonable values. Sorry again for my very late reply. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi All
FIrst, thanks Muhammad for all your hard work! I'm finding OBAL fun, interesting and very useful.
I'm currently looking at designing custom flight controller PCBs, using for example a Pi Zero W2 and IMUs, magnetometers, PWM ICs etc - similar to OBAL.
OBAL has been an invaluable test rig for this. It seems to work well using the recommended MPU9250 and BMP085, however the former is now listed as obsolete, no longer manufactured, at many distributors' websites, with the ICM20948 being listed as an alternative.
Since I had a Waveshare Pico 10DOF IMU (ICM20948 9-DoF IMU, LPS22HB Barometer) on hand, I though I'd try to interface it to OBAL, using just the I2C bus. So just 5V, GND, SDA and SCL jumpered into the female headers.
After considerable effort I got the following config to work in linux.h:
(please note: the rotations are possibly not correct here - the compass is actually upside down inside the package, relative to the accel/gyro, so PITCH_180??)
with the following change in line 154 in AP_InertialSensor_Invensensev2.cpp
Temperature, pressure and artificial horizon appear to work roughly as expected, so the ICs are being probed OK, and are sending data to the front end, but the artificial horizon is very laggy and slow to update. I'd put this down to the rotations not being set correctly, and it's confusing the EKF, however the Waveshare demo program for the Pico
https://files.waveshare.com/upload/a/aa/Pico-10dof-imu_code.zip
also seems to output bogus and laggy results.
(also please note: this zip file contains demos for 2 versions of the demo code, one for the ICM20948 and a later one for the MPU9250)
Interestingly, the demos from Wolle Ewald's Arduino library for the ICM20948 seem to work great, so it looks more like a config problem, rather than a hardware issue.
So - bottom line - does anyone have experience/success with these devices? Is the ICM20948 fully supported in ArduPilot yet?
(The Accel/Gyro/Compass market seems to be a bit problematic these days, what with the chip shortage, and certain on-going activities in Eastern Europe.)
Thanks :-)
Beta Was this translation helpful? Give feedback.
All reactions