Driver Type
Categories
- Recent Updates
- Access Control
- Amplifier
- A/V Receiver
- Climate and Pool Control
- Disc Player / Changer
- Display
- DSP
- DVR
- Irrigation / Sprinklers
- Lighting Control
- Matrix Switch
- Media Server and Player
- Multi-Room A/V
- Networking
- Power and Rack Management
- Security
- Surveillance
- Teleconferencing
- Training
- Tuner
- Utility
- Video Projector
Driver Type
Categories
- Recent Updates
- Access Control
- Amplifier
- A/V Receiver
- Climate and Pool Control
- Disc Player / Changer
- Display
- DSP
- DVR
- Irrigation / Sprinklers
- Lighting Control
- Matrix Switch
- Media Server and Player
- Multi-Room A/V
- Networking
- Power and Rack Management
- Security
- Surveillance
- Teleconferencing
- Training
- Tuner
- Utility
- Video Projector
Waveshare 8-Channel Relay
By: David Bowdler
Updated: April 12, 2026
Version: 1.2
Waveshare 8-Channel Modbus Relay Driver
IP control of Waveshare Modbus POE ETH 8-Channel Relay modules via Modbus RTU over TCP. Individual and group relay control with real-time status feedback. Ideal for lighting, irrigation, gates and equipment control.
Key Features
- 8 Independent Relays: Each rated 10A 250VAC / 30VDC
- Individual Control: On, Off, Toggle per relay
- Group Control: All On, All Off, All Toggle
- Custom Naming: Name each relay for easy identification in macros
- Real-Time Feedback: Per-relay state with change events
- Configurable Polling: 1–60 second intervals for status monitoring
- Auto-Reconnect: Automatic recovery on connection loss
- POE Powered: Power-over-Ethernet — no separate power supply needed
Use Cases
- Lighting control
- Irrigation and sprinkler systems
- Gates and access control
- Equipment power switching
- Sign and display control
Compatible Hardware
- Waveshare Modbus POE ETH 8-Channel Relay module
- RTI XP-8 processor (runtime 24+)
- TCP/IP connection (default port 4196)
How It Works
The driver communicates using Modbus RTU protocol over TCP. Relay commands are sent with pre-calculated CRC values for fast execution. Status is monitored via configurable polling with per-relay events for automation triggers.
Waveshare 8-Channel Modbus POE ETH Relay Driver
by Smart Home Programming and Automation
Overview
This driver controls the Waveshare Modbus POE ETH Relay 8-Channel module via TCP/IP network connection using Modbus RTU over TCP protocol.
Device Specifications
1. 8 independent relay channels
2. Relay rating: 10A 250VAC / 30VDC
3. Protocol: Modbus RTU over TCP
4. Default port: 4196
5. Default IP: 192.168.1.200
Configuration Settings
Connection Settings
1. IP Address - The IP address of your Waveshare relay module (default: 192.168.1.200)
2. TCP Port - The Modbus TCP port (default: 4196)
3. Device Address - The Modbus device address (default: 1, range 1-247)
Relay Naming
You can assign custom names to each relay for easier identification in your RTI interface. These names will appear in the function lists and variable displays.
Polling
Polling Interval - How often the driver queries the relay status in milliseconds (default: 5000ms = 5 seconds). Set to higher values to reduce network traffic, or lower values for faster status updates.
Available Functions
Individual Relay Control
Each relay (1-8) has the following functions:
1. Relay X - On - Turns the relay ON
2. Relay X - Off - Turns the relay OFF
3. Relay X - Toggle - Toggles the relay state
All Relays Control
1. All Relays - On - Turns all 8 relays ON simultaneously
2. All Relays - Off - Turns all 8 relays OFF simultaneously
3. All Relays - Toggle - Toggles all 8 relays simultaneously
Generic Control
1. Relay On By Number - Turn ON a specific relay by number (1-8)
2. Relay Off By Number - Turn OFF a specific relay by number (1-8)
3. Relay Toggle By Number - Toggle a specific relay by number (1-8)
4. Set Relay State - Set a specific relay to ON or OFF
Status Functions
1. Query All Relay Status - Manually query the current state of all relays
2. Force Reconnect - Force the driver to reconnect to the relay module
Available Variables
Connection
1. Connection State - Integer (0=Disconnected, 1=Connected)
2. Connected - Boolean true when connected
3. Disconnected - Boolean true when disconnected
All Relays
1. All Relays Status Byte - Bitmask (0-255) of all relay states
2. All Relays On - Boolean true when all relays are ON
3. All Relays Off - Boolean true when all relays are OFF
Individual Relays (1-8)
1. Relay X - State - Boolean state (true=ON, false=OFF)
2. Relay X - Name - The configured name for the relay
Available Events
Connection Events
1. CONNECTED - Fired when connection is established
2. DISCONNECTED - Fired when connection is lost
Individual Relay Events (1-8)
1. RELAYXON - Fired when relay X turns ON
2. RELAYXOFF - Fired when relay X turns OFF
3. RELAYXCHANGED - Fired when relay X state changes
All Relays Events
1. ALLRELAYSON - Fired when all relays become ON
2. ALLRELAYSOFF - Fired when all relays become OFF
3. RELAYSTATECHANGED - Fired when any relay state changes
Network Setup
Before using this driver, ensure your Waveshare relay module is properly configured:
1. Connect the relay module to your network via Ethernet or PoE
2. Configure the module's IP address to match your network (default: 192.168.1.200)
3. Ensure the TCP port is set to 4196 (default)
4. The Modbus device address should be 1 (default)
5. Ensure your RTI processor can reach the relay module on the network
You can configure the module using the Waveshare Vircom software or via the module's web interface.
Troubleshooting
Cannot Connect
1. Verify the IP address and port are correct
2. Ensure the relay module is powered and connected to the network
3. Check that no firewall is blocking port 4196
4. Ping the relay module to verify network connectivity
Relays Not Responding
1. Check the Device Address setting matches the module configuration
2. Use the "Test Connection" debug function to check status
3. Enable Debug Trace for detailed logging
Status Not Updating
1. Check the polling interval setting
2. Use "Query All Relay Status" to manually refresh
3. Verify connection status is "Connected"
Technical Notes
1. This driver uses Modbus RTU over TCP (not Modbus TCP)
2. Pre-calculated CRC values are used for device address 1
3. The driver automatically reconnects if the connection is lost
4. Relay states are polled periodically and after each command
Licensing
This driver is sold through the Smart Home Programming Driver Store.
Driver Store: https://shpdrivers.services/store/
Your Account: https://shpdrivers.services/store/account.html
Free Trial:
The driver operates in a 2-hour trial mode without a licence key. The trial provides full functionality and resets each time the RTI processor is rebooted.
To Purchase:
1. Create an account at https://shpdrivers.services/store/
2. Add this driver to your cart
3. Enter your RTI processor MAC address during checkout
4. Complete payment and receive your licence key by email
5. Enter the licence key in the driver configuration
Version History
v1.1 - Licensing update
1. Added licence key validation with HMAC-MD5
2. 2-hour trial mode for evaluation
v1.0 - Initial release
1. Support for 8 individual relay control (ON/OFF/Toggle)
2. All relays control (ON/OFF/Toggle)
3. Automatic status polling
4. Connection state monitoring with auto-reconnect
5. Custom relay naming
6. Event generation for state changes
Support
For bug reports, technical support, or feature requests, please use the ticket system in your account at the Driver Store.
Store: https://shpdrivers.services/store/
Email: david@smarthomeprogramming.com.au
Device Documentation:
https://www.waveshare.com/wiki/Modbus_POE_ETH_Relay
Copyright 2026 Smart Home Programming. All rights reserved.
This driver requires a licence key tied to your RTI processor's MAC address.
- Trial: 2-hour fully functional trial (resets on reboot)
- Purchase: Visit smarthomeprogramming.com.au/store to buy a licence
- Licence is per-processor — one key per XP-8