How to enable UAVCAN for Zubax GNSS2 with ArduRover?

Hey everyone,

I have the Zubax GNSS2 Sensor and would like to use it with the ArduRover Software. With the ArduCopter software I was able the get the Sensor data via UAVCAN. Is there a way to also get the data with the ArduRover Software. Has anyone done it yet and know, which are the settings, to actually get the data?

I done the settings as said from the Zubax Tutorial but could not find the BRD_CAN parameter in the ArduRover settings.

Thanks in advance!

We donā€™t build CAN into the standard firmware by default anymore. Its mostly due to the size of the firmware, the 1MB hardware flash limit and the other vehicles code size are really close to that 1MB. So we moved CAN to above 1MB as its the least used feature and quite large.

So the question for you is do you have new ArduPilot hardware that is fixed and capable of accessing all 2MB of its flash? To check you need to open an NSH prompt. In Mission Planner open the ā€œFlight Dataā€ tab and connect to your ArduPilot firmware over the usb cable. Once connected and parameters have download go to the terminal view and select NSH from the drop down box and click ā€œConnectā€. You should see an ā€œnsh>ā€ prompt. From here type the command ā€œver allā€ and hit enter. If you see a WARNING WARNING WARNING message then you have older hardware and we have a problem. If you donā€™t see that your good to go. More details on getting the NSH prompt on this page:
http://ardupilot.org/dev/docs/interfacing-with-pixhawk-using-the-nsh.html

So, if you donā€™t see the warnings you need to go to the ArduPilot firmware download site and choose the _v3 firmware which has CAN in it. So if you have Pixhawk you would go here
http://firmware.ardupilot.org/Rover/stable/PX4/APMrover2-v3.px4
and download that to your computer. Then in Mission Planner go to ā€œInstall Firmwareā€ and choose ā€œLoad custom firmwareā€ from the bottom right side and choose that _v3 firmware and you should be good to go.

Let us know how you get on.

Thanks, Grant.

1 Like

Ok newer information. As of this PR
https://github.com/ArduPilot/ardupilot/pull/5633/files
CAN is back in the main build. So the CAN driver isnā€™t in the v3.1.1 stable release but is in the latest master. You can still do as Iā€™ve said above and load the _v3 firmware and have CAN if you have new hardware that will support above 1MB. This would be the best way. Or you can go to
http://firmware.ardupilot.org/Rover/latest/
and run an '_v2ā€™ bleeding edge firmware. Note lots of changes in this not the least of which the RC input/output has had a major re-write :slight_smile:

Let us know how you go.
Thanks, Grant.

1 Like

Thank you. When I typed ā€œver allā€ i got the WARNING message. But with the ā€˜_v2ā€™ version I got it running and it works fine. Thank you! :slight_smile:

Great that you got it all going. Your the only Rover user I know of using a CAN device.

Thanks, Grant.

Hi Jonas

It seems you have achieved exactly what I would like to do; get Zubax GNSS2 working with Ardurover!

I have loaded firmware suggested above, APMrover2-v3 and can see uavcan is listed as a built in app using NSH. But if I search the full perameters list for uavcan or brd_can I find nothing. Do you experience the same with your working setup?

Iā€™d really appreciate it if you could give me a bit more detail on how you got this working!

Thanks Russ

I canĀ“t find the setting file anymore. I think there was still no BRD_CAN Parameter. I think it worked just by changing the GPS_TYPE Parameter to 9 for the GPS and for the Compass changing the primary compass to externally mounted.

Hi Jonas

Thanks for getting back to me, really appreciated; as gmorph says, I think you might just be the only person out there whoā€™s done this!

Just to confirm, before I order one of these units; you uploaded APMrover2-v3, set GPS_TYPE to 9, plugged in the Zubax and it worked? Sounds too good to be true, but thatā€™s fantastic news if thatā€™s correct. Iā€™ve spent two days this week trying to get a NMEA feed working!

Also, does mission planner display HDOP, number of satalites etc, just as the standard pixhawk GPS module?

Thanks again, Russ

Hey Russ,

I found my parameter list. I had APMrover2-v2, so it was Version 2 not 3. Yes it showed HDOP, number of satellite etc. I am not sure, if it worked with just these settings or if I had change something else. I would test it, but I donĀ“t have access to the Pixhawk and Zubax anymore, I just had these for a project at university.

Thanks, Jonas.

Hi Jonas

Thatā€™s really helpful, thank you. And out of interest, was the Zubax noticeably more accurate than the standard Pixhawk NEO-M8N unit? With the standard one, my position dances around all over the place! Iā€™ll post on here some more details if I get any further with thisā€¦

Thanks again, Russ

Hey Russ,

I canĀ“t tell, if it was better or worse, I never tried the NEO-M8N and I never test the setup in and actual rover. I just had the Pixhawk with the Rover Software connected to the Zubax for tests and every tests were done using the Mission Planer.

Hope you will be successful. Please keep me updated, how you getting along.

Hi Jonas

Thatā€™s really helpful, thank you. Iā€™m going to run a few more tests before buying a zubax as they are quite expensive. Iā€™d like to try and supply the CAN port in the pixhawk some fake data to see if it works, no idea if thatā€™s possible or not?! I will post here whatever I find out.

Thanks again for sharing your knowledge.

Russ

That is actually possible, that is what I did, during my my work at university. I tried to emulate a sensor. The code of the Zubax is Open Source https://github.com/Zubax/zubax_gnss?files=1 , this could help you

Hi Jonas

Sorry for my slow reply, I only just saw your post; I donā€™t get notified of new posts for some reason?!

Thatā€™s great to know, thanks, Iā€™ll post here with whatever I find out.

Russ