Standard | Dist / Speed | Cost per Node | Packet defined? | Chksum / Retry defined? | P2P or M/S | Mostly Hardware? |
---|---|---|---|---|---|---|
hacked RS-232 | $3.50 + resistor + diode | No | - | - | Software | |
RS-485 | $3.50 + $0.68 | No | - | - | Software | |
I2C | $4.50 | Yes | No | M/S | Hardware (or software) | |
SMBus | $4.50 | Yes | CRC-8 | M/S | hardware | |
CAN | $9.50 * | Yes | CRC-16 | P2P | Hardware | |
LIN | Yes | Hardware (none flash yet) | ||||
USB | $7 - 35 | Yes | CRC-16 | M/S | (no flash yet) |
Multi-drop networks, anywhere from a RS-485 that only defines byte transfer but doesn't define packet format or arbitration scheme, to USB 2 that handles all that.
What I REALLY want though is the noise-immunity of RS-485, the simplicity of I2C, and the CRC checking of CAN. (though if everything is inside a single metal box, perhaps I only need I2C + CRC)