Skip to main content
Visitor II
May 17, 2026
Question

Drone CAN Setup (STM32H753 -STM32F103 Flight Controller)

  • May 17, 2026
  • 3 replies
  • 177 views

Hello everyone

I'm new here, but i have worked on a flight controller unit FCU with those:

FMU Processor: STM32H753
IO Processor: STM32F103

This FCU then connected to a Raspberry Pi4, auxiliary, where  run his drone python software, using MAVlink approach for telemetry data and CAN communication and parameters setup;

Right now

We have a (good) software ready, with some wizard working well

BUT

we have an issue with CAN-motors and our STM chips...

Is it possibile that those H753 is NOT able to read a CAN motor ,brand new, out of fabric?

or better

Is the chip (H753) ABLE to write a NODE ID on a CAN motor, wich is ut of fabric (nodeID=1) to an actual working NODE ID(10,11,12 etc..)?

We had this issue....

based on your knowledge..
The correct way is to use a CAN-USB to "wake up" motors one by one and then connect to FCU?


Thank you


3 replies

mƎALLEm
Technical Moderator
May 19, 2026

Hello,

Your question is very generic.

What kind of issues you faced with CAN on STM32H753?

You need to be more specific especially with CAN questions:

Exact issue you have faced?

What kind of investigation you did at this stage: usage of oscilloscope / logic analyzer etc ..?

Provide more details on CAN config:

- Mode used: Classic, FD CAN?

- Bit rate(s)? 

- Provide schematics

- Clock configs: better to share your project.

PS: we cannot support you on Raspberry Pi4 questions. It's your responsibility to configure the CAN interface from that side.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
Ozone
Principal
May 19, 2026

> we have an issue with CAN-motors and our STM chips...
> Is it possibile that those H753 is NOT able to read a CAN motor ,brand new, out of fabric?

> or better
> Is the chip (H753) ABLE to write a NODE ID on a CAN motor, wich is ut of fabric (nodeID=1) to an actual working NODE ID(10,11,12 etc..)?

As already stated, there is almost no workable information in your post.
I would recommend to check the schematics that your STM32 boards actually have a suitable CAN interface (including transceivers), and that it is properly connected to the CAN device (motor ?).

If you don't build the STM32 board firmware yourself, check at least the release notes that CAN is actually supported.

And then try to monitor the CAN bus connection, to see if there is any traffic at all.
The best option for that would be a CAN dongle (USB-CAN adapter), either on a PC or the Raspberry Pi board.
Alternatively a scope or logic analyser, the latter would have to be connected somehow to CAN Rx /Tx pin at MCU voltage level (not the CAN transceiver).

DigitalMonk12
Visitor II
May 19, 2026

STM32H753 is fully capable of CAN communication, so it’s likely not a chip issue. The problem is usually CAN configuration (baud rate, termination, filters) or motor state/init protocol. Node ID change is possible only if the motor firmware supports it. CAN-USB is mainly useful for debugging.

Ozone
Principal
May 19, 2026

> The problem is usually CAN configuration (baud rate, termination, filters) or motor state/init protocol.

A CAN trace would reveal that, although the error messages depend on the tool used.

Node ID change is possible only if the motor firmware supports it. CAN-USB is mainly useful for debugging.

Problems due to incorrect setup (non-matching IDs) would be visible via a CAN trace as well.

Although "node ID" is not a feature of CAN, which knows only message IDs.
Higher protocols such as CANopen do have node IDs, though.