UAVCAN moving baseline? (F9P + mRo CAN nodes)

It’s a new mowing season, which means a new season of testing, tuning, updating, and upgrading my already somewhat mature zero turn Rover mower.

I’d like to free some UARTs while exploring the UAVCAN ecosystem a bit more. I have a Copter configured with an mRO F303 CAN node and M8P GPS module, which was somewhat easy to set up and works very well.

Based on that success, I’d like to transition my mower’s ArduSimple simpleRTK2B (F9P based) moving baseline (GPS-for-yaw) configuration from 2xUARTs to UAVCAN via the same mRo adapter boards. I saw that GPS_DRV_OPTIONS now includes a “3” value to account for UAVCAN moving baseline configurations, which makes this theoretically possible…I think.

Before I commit time and dollars, has anyone else achieved success with a similar configuration? What other parameters (other than basic UAVCAN config) are keys to success? Or is there value to my testing this if it has not yet been fielded elsewhere in the community?

1 Like


we are working on the same thing to move 2x F9P from Serial to CAN to free up some desperately needed serial ports :slight_smile: and use them in a CAN - moving baseline setup.

In theory this should be straight forward and we have all the hardware here for testing but unfortunately it will take a couple of more weeks because we are currently finishing up other projects and the drone where they will be used on is not finished yet …

We are more than happy to squeeze in a quick test wiring and to share some bench test results if that helps you in your purchass decision?

We would also be very interested in your results in case you beat us to it :slight_smile:

Great to hear! I was concerned that the feature was added as a theoretical possibility without much testing, and I’m still unsure whether the hardware combination I’ve specified is the intended configuration.

As long as there is some combined interest (and hopefully some dev involvement), I’m happy to proceed and see what happens.

Will certainly share results as I have them.

I have tested with F412 node. Should work on F303 node too.

1 Like

That is great to hear!

Would you mind sharing your settings? We did a quick test today but so far we don’t get any heading data out of the CAN GPS setup .

If we set the CAN Nodes to 17 + 18 for GPS type and the GPS Type in Ardupilot to GPS1 = 9 + GPS2 = 9 the modules are detected and we see RTK fixed for GPS 2, but no heading calculation data (both CAN Nodes are connected to the same CAN Port).

If we use the intended 22 (DroneCAN-MovingBaseline-Base), + 23 (DroneCAN-MovingBaseline-Rover) in Ardupilot our modules don’t get recognized at all.

Running them normal on Serial ports works just fine and we get heading data.

Edit: After more testing we found the issue with setting 22 + 23. It seems to be not functioning in Copter V4.1.5, once updated to the 4.2 beta the same settings work, GPS is recognized and we get heading data :slight_smile:

Hey, check this.

Update the nodes. This is fixed in AP-Periph v1.3 stable.

Thanks a lot for sharing the settings! We got it working with 4.2. beta.

The CAN nodes were on V1.3 stable, the problem for us was Ardupilot 4.15.

Yes, It was added in AC4.2.
Share results if possible!

We did some more testing and the inital results are looking very good with 2x mRo F303, 2x Holybro Helical F9P and AP-Periph v1.3.

GPS for yaw is working via CAN, the only thing currently not working for us is that we don’t get any RTK data from a NTRIP server to GPS 1 (this module stays in 3D fix). This is probably a config issue on our end and we will try different settings next week.

We also got in the new MATEK L431 CAN nodes which have a lot of interesting features, however in AP-Periph v1.3 there are some parameters missing like
, as well as compass support for any compasses other than 5883 so for now it seems they can’t be configured as GPS for YAW. This could prob. be solved with a new firmware.


I just placed my order for mRo F303s and should have them soon.

I’m totally new to UAVCAN, but I’ve run into the problem of running two lidar units for obstacle avoidance lol. Never enough serial ports. So will the Matek :431 eventually support moving baseline? I was just going to order two of the F303 if that’s the best option. I’ve got a pair of Holybro helical units I’d like to take off the serial ports.