Open source uavcan device

Is there an open source project (hw & fw) for a simple uavcan device that can be used for learning?

@olliw42 has a pretty comprehensive UAVCAN blog http://www.olliw.eu/2017/uavcan-for-hobbyists/
There is open source firmware that is compatible with some of Olli’s open hardware - except you need 128k flash for the AP_Periph firmware.

Hi @zbynek.winkler

mRo also has such a device, we have been working with Tridge to expand the UAVCAN device adoption.

https://store.mrobotics.io/product-p/mro10042.htm

You can plug in any UART / I2C GPS/MAG that Ardupilot supports and get a working UAVCAN GPS/MAG instantly. This project supports many other devices and is rapidly expanding.

at the moment, we would need one of these devices for each device we are connecting, is that correct?

…or does this device create a CAN bus that we can connect as many devices as desired and simply terminate the end of the bus with a resistor?

@Matt_C

AP_Periph is an official ArduPilot project, unlike the other UAVCAN firmware it is completely opensource. It supports:

GPS (soon RTK injection)
MAGs
Range Finders
ADSB
LEDs
Switches
Air speed sensors

Feel free to check out the progress: https://github.com/ardupilot/ardupilot/pulls?utf8=âś“&q=is%3Apr+is%3Aclosed+ap_periph

Correct, you would most likely need 1 CANNode per device but that is not in every situation. This board is an opensource prototyping board at heart. The board design files and schematic are hosted on github. This allows anyone to prototype with our CANNode and then utilize the tested design files to greatly reduce your hardware development time as well as lower your risk.

That was a filter of closed pull requested with “AP_Periph” in the name. For the most part, closed means they have been merged into the main software project and can be easily built into a binary image. At some point we will need to establish a stable release but compared to main project the AP_Periph source code is relatively simple.

I have created a wish / future feature list for the CANNode here. If you have a suggestion feel free to add it…

1 Like