AP_Periph IMU UAVCAN

I built myself a node using F412 in kicad to go along with a flight controller that I have been using before the lockdown. Is it possible to include an IMU? I looked through AP_Periph and can see all the sensors included but not IMU… thought it might be fun to add it. Also I wonder if the node could be run at a high loop rate and at that point control the PWM for ESCs? I suppose it would mean the main board doing the heavy EKF work and the AP_Periph device running at a higher speed for gyro/accel…
I might be completely wrong and I’m sure there are people on here better equipped to answer.

Malcolm

An ap_periph imu is definitely being considered but I think there’s a fair bit of underlying work needed before it can be integrated.
@tridge might be able to comment more.

I am working on IMU support for UAVCAN in AP_Periph. mRo have built a test device that I should be receiving soon.
I hope to have a PR in the next couple of weeks.

1 Like

That sounds great, I think it’s probably worth my while holding off on ordering this board and wait for your tests… thanks.
I do have a little SLCAN board I made which I was using to test with, but it’s based on an F405 but it does have an mpu9250 and Baro, I can send you that if you would like something else to test against.
Anyway I’ll keep an eye out for the PR, thanks @tridge, @james_pattison

Just a quick update, I wrote an AP_Periph hwdef for the small F405 in the pic and connected it to the larger one, Tested with UAVCAN gui and mission planner it’s all working I can see the second BMP280 I have rem’d out the IMU. Fun little project…

image

1 Like

Thats is very good news and congratulations :clap:
What kind of change (AP_Periph hwdef) did you make?

Hi Akay, the hwdef is here
I have changed the RNGFND1 to serial 5 as there are 3 on the board. GPS is serial 3 and console as usual serial0.
I intend to try it on an old sparky 2 as the imu has failed on the one I have so to make it useful again I will turn it into a node.

1 Like

Hey everyone,

I think this is awesome and would be a great addition to AP_Periph and UAVCAN support! I was wondering which IMUs are currently being considered to be added to AP_Periph? I’ve looked at the BNO085 from Adafruit and it seems to be a really nice IMU with sensor fusion that gives accels, rotation rates, quaternions, and a couple other goodies although I’m not sure if UAVCAN itself would support all the datatypes from the BNO085. I may try this out myself if I get my hands on a CAN Node :slight_smile:.