How can i use libuavcan

  • Can you provide me with a route or a simple example?
    I had read the uavcan guide,UAVCAN_Specification_v1.0-alpha,but i still do not how to use it .
    the pyuavcan seems difficult to me.

Libuavcan is still not ready, sorry. You can do either:

  • Use PyUAVCAN, assuming that you’re not dealing with a deeply embedded system. You said that you find it difficult, but we’re willing to help on the forum if you have any questions.

  • Use Libcanard. This implementation supports only UAVCAN/CAN; if you’re interested in UDP or other transports, it will not work.

Thanks your reply.But now i want to know how to port libcanard to a stm32 board as a bare metal driver .Could you tell me how to realize it? Looking forward your reply!

We have the header file with the API specs in Libcanard v1 STM32 driver design guidelines. One just needs to write the implementation for it. Can you do that?

Thanks for you suggestion.I am working on it . Now i want to understand the canard.c,but i couldn’t find any useful reference on https://uavcan.org/. Could you please tell me how to realize the canard.c?

The documentation for libcanard is available at https://github.com/UAVCAN/libcanard, if that’s what you’re asking.

Thanks! But I know where the file is ,what i need to know is how to write the API in the canard.c. I have no idea,hope you give me a suggestion.Thank you very much! :smiley:

You don’t need to modify canard.c, it’s finished.

I think what you mean is how do you implement the STM32 driver whose header file I linked above; for that, you should just read the comments in the header file. They provide an exhaustive description of its behavioral contracts.

OK。 Thanks