Availability of fdcan drivers for libcanard on newer STM32 boards?

I’m working on a project, and was implementing a libcanard stack on an STM32GXX chip, which only offers fdcan. Already quite far into the implementation I realized that libcanard platform software only offers bxcan drivers.

I’ve seen mentions (from well over a year ago) in various forum posts that an fdcan driver may be in the works, but I’m not seeing any actual implementation. I was wondering if there’s a driver, or even maybe some sort of half-finished effort at one. I may have a go at solving this, but currently trying to find the fastest path to get this working.

1 Like

Hi Alex,

although not publicly advertised yet, we have something operational here. A few notes:

  • the implementation is proven in flight, but might be missing documentation in places
  • the FDCAN driver is built around a cobbled-together FreeRTOS transport worker task, which might explain a few design choices
  • A reference project using this driver and FreeRTOS interface can be found here, but it’s not directly executable on its own. Might be worth a look for reference, though
  • the driver is MIT licensed

Hope this helps!

Thank you, this is very helpful, I’ll check it out!

Hi @gribov42

I have a (mostly) working example of the 107 Systems arduino cyphal implementation on an stm32g4.

Im busy writing up documentation, so there isn’t much there currently, but please have a look at the code on GitHub here;

The code makes use of a driver called SimpleCAN - I dont have the link to reference to hand right now, but will update this post once I am home.

This might help you get going if you are using the arduino framework on STM32!


1 Like