Overview of CAN Subsystem in Zephyr
summary
Zephyr exposes a SocketCAN-compatible sockets API and a device-tree driven driver model demonstrated with MCP2515 over SPI; timing is explicit (example: 250 kbps with 87.5% sample point) and CAN FD differences are concrete (classical CAN ≤1 Mbps 8 B payload, CAN FD ≤8 Mbps 64 B payload). Drivers implement blocking send with timeout and callback, RX filters live in hardware or fall back to software, and practical testing uses can-utils plus a Raspberry Pi or a second node because on‑wire tests need two interfaces.
AI-written summary · about
chapters (6)
- 0:00CAN and Zephyr intro
- 7:14Classical CAN vs CAN FD
- 10:09CAN driver model
- 18:57Sending/receiving frames
- 21:08Debugging with can-util
- 22:57Q&A
related talks
16mExploring the Potential of Zephyr in Automotive and Software Defined Vehicles
42mCanspy: A Platform for Auditing Can Devices
41mTurning the Ignition on Safety: Zephyr RTOS in Automotive Compliance
39mZephyr Extensions: How to Dynamically Load an Application
45mUSB Support in Zephyr OS
39mZephyr Extensions: How to Dynamically Load an Application
54mCantact: An Open Tool for Automative Exploitation
31mUsing Zephyr for Embedded Controllers
