TapHome modules communicate via proprietary protocol, over RS485 physical layer.
The basic principle is to provide collision-free reliable and prompt communication between central control unit and modules.
RS485 physical layer
Bus connections must be powered by the same potential, because there is neither galvanic, nor optical isolation. While RS485 is based on voltage difference between A and B wires, it provides high protection from noise even on long twisted pair of wires.
Core provides 3 bus connections. Maximum number of modules on each bus is 30. Altogether 90 modules on one control unit.
Topology and wiring
Up to 1200m in special conditions.
AWG 20 - 22,
Shielding is usually not neccessary but nice to have, in case there is unexpected problem with noise.
Change to Topology view in ETS project:
Daisy chain, Tree
Daisy chain is optimal for long distances, tree can be used up to 600m, and star is also acceptable.
Ring topology is prohibited.
(between A and B wires)
at the most distant point of the bus
In most cases, communication works well even without termination resistor, but is much more prone to noise.
Max number of modules
(connected on 1 bus)
In good conditions (minimum noise, short wire distance, daisy chain topology), there can be up to 100 modules connected on 1 bus.
TapHome Bus protocol
TapHome Bus protocol is based on round robin principle, where Core is master, and all connected modules are acting as slaves. In standard operation, module can only send response to a query. This provides a few benefits:
*Similar performance regardless of number of changes that are being transmitted
*Immediate error detection
*Start byte (0xAA)
*Broadcast / unicast
*Action: Module-specific actions / Universal actions (Get Status, Get Description, Get general configuration, Get Uptime, Can broadcast, Identify LED)