Hacker News new | ask | show | jobs
by cyberax 600 days ago
CAN is slow. At best it's around 1Mbit, but you get into electrical limitations. So you have to run multiple CAN buses in parallel and carefully manage bandwidth limitations.

My Chevy Volt had 4 different CAN buses and one additional LIN bus.

This can all be replaced with just two Ethernet buses: for safety-critical and non-critical uses. And the gigabit speed provides plenty of bandwidth for any reasonable sensor traffic, even including camera feeds.

The current architecture was justified in 90-s when LIN PHYs were an order of magnitude cheaper than even CAN PHYs. Now Gigabit Ethernet PHYs cost less than a dollar.

1 comments

It's unlikely that the multiple CAN buses are being used to increase speed by, say multiplexing them. In general, vehicles use multiple CAN buses for enhanced security. For example: things like diagnostic ports are often on their own CAN buses so data can't be directly injected into onboard systems.
All but one CAN bus in my Volt were connected to the OBD port. The unconnected bus controlled the high-voltage battery contactors and some other critical stuff.

The "main" bus was saturated with data, more than 80% of bandwidth utilization at 512kbs. And it kinda had a mix of everything, from street names to be displayed on the dashboard to ECU messages. The other two buses had some random messages, with no rhyme or reason for the split ( https://vehicle-reverse-engineering.fandom.com/wiki/GM_Volt ).