MyRoboPath
microcontrollers15 min readUpdated 2026-03-08Advanced

CAN Bus & CAN-FD for Industrial Robotics Networks

Connect high-torque BLDC actuators and smart joint modules using Controller Area Network (CAN 2.0B) with hardware message filtering and CRC validation.

Kenji Takahashi
Kenji Takahashi
Principal Embedded Systems Engineer

Key Engineering Takeaways

  • CAN bus uses differential pair lines (CAN_H, CAN_L) terminated with 120Ω resistors at each bus extremity to cancel common-mode noise.
  • Message priority is determined by identifier bits—lower ID numbers automatically win bus arbitration without packet collision or retries.
  • Modern robotic arms (Unitree, Robstride, MyActuator) communicate via 1Mbps CAN packets sending target torque, angle, and velocity.
Prerequisites
  • Differential signaling
  • Microcontroller C++

Differential Bus Physical Layer & Non-Destructive Bit Arbitration

CAN bus was engineered for harsh automotive environments. Its dominant (0) and recessive (1) bit states allow deterministic priority arbitration. If two joint actuators transmit at the exact same microsecond, the higher-priority emergency stop frame wins without corrupting data.
Tags:#CAN Bus#CAN-FD#Industrial#Robotic Arm#Firmware#Actuators