Electronic – Can RS485 be considered a multi-master bus

canmulti-masterrs485

There are some electrical specifications specifically designed for multi-master protocols such as CAN, I2C, 1-Wire, etc. which are classified under CSMA/CD networks.

However, RS485 has a push pull output (with a current limit guard) so when two masters are started sending data at the same time, both frames will be corrupted and the re-transmission should be handled by the protocol stack. RS485 can be classified under CSMA/CA networks.

Question

Is only protocols implemented on top of CSMA/CD networks considered as "multi master protocols" or can any protocol on CSMA/CA network that somehow implements handshake (ACK) and re-transmission features be considered as a "multi master protocol"?

Specifically, is implementing a multi-master protocol on top of RS-485 possible, or is it considered only a workaround because of the inability of collision detection nature of the bus?

Best Answer

RS485 is purely a physical layer specification. You need your own protocol for anything you run over it eg home made, or something like MODBUS. Normally I would have just one master that requests information from connected devices. For anything multimaster or more complex the use a different bus eg CAN or Ethernet