RS-485
A differential, multi-drop physical layer for serial data — think "UART that survives long cables and noise." A transceiver turns the MCU's UART into a balanced A/B pair; many nodes share one bus, usually half-duplex.
Pros & cons
| Pros | Cons |
|---|---|
| Long distance (up to ~1200 m) | Usually half-duplex (one talker at a time) |
| Noise-immune (differential) | Needs direction control (DE/RE) |
| Multi-drop (32+ nodes, more with low-load parts) | No built-in addressing — needs a protocol |
| Simple, cheap transceivers | Termination + bias resistors required |
Use cases
- Industrial sensor/actuator networks, Modbus RTU, building automation, long factory-floor cable runs.
Hardware requirements
- An RS-485 transceiver (e.g. MAX485, THVD).
- Direction control: a GPIO driving DE/RE (or an auto-direction transceiver).
- 120 Ω termination at both ends, plus fail-safe bias resistors so an idle bus reads a defined level.
- Twisted pair; common ground or isolation between distant nodes (ground offsets are real).
Software requirements
- Assert DE before transmitting, and release it after the last byte has shifted out (watch the timing — releasing early truncates the frame).
- An addressing/framing protocol on top (e.g. Modbus): node addresses, CRC, turnaround timing.
Top RS-485 failures
Forgetting to toggle DE (or releasing it too early), missing termination/bias, two nodes driving at once, or a ground potential difference between ends — use isolated transceivers for long runs.
See also
- Differential Signaling
- UART · CAN
- Building a Product — RS-485 transceivers