3.4.6 Field Hardware
Field path from meter to server:
| Stage | Detail |
|---|---|
| Meter | TUF-2000B ultrasonic meter |
| RS485 | Modbus RTU (typically 9600 8N1) to an RS485-to-Ethernet gateway |
| Gateway | TCP Client / Modbus TCP to the estate server Modbus listener |
V1 meters pushed HTTP text. V2 polls Modbus. The gateway must be a TCP client (device dials the server). The server does not dial out to the meters.
Server Destination
The TCP Client destination host and port are configured by authorised technical staff. Do not publish server IP addresses, SSH hosts, or firewall allow-lists in public documents.
Estate Meters
Three TUF-2000B (or equivalent) ultrasonic flow meters, typically:
| Panel Name | Serial (SN) | Modbus Slave (M46) |
|---|---|---|
| Bore Water | 23110130 | 1 |
| Soak Drain | 23068250 | 2 |
| Potable Water | 23090339 | 3 |
Positive totalizer unit is litres (L) (meter menu M31). Flow rate is m³/h.
TUF-2000B Menus That Must Match the Panel
The meter only implements Modbus function codes 03 (read) and 06 (write). The loader uses 03 for holding registers.
| Menu | Setting | Why |
|---|---|---|
| M63 | MODBUS_RTU | Factory default is often MODBUS-ASCII. ASCII makes the loader time out |
| M46 | Slave ID | Must equal panel Modbus unit ID |
| M62 | Serial, usually 9600 8N1 | Must equal gateway RS485 UART settings |
| M31 | Totalizer unit L | Matches seeded Positive total unit |
Address mapping (0-based in the panel = manual REG − 1):
| Quantity | Manual | Panel Address | Count | Format |
|---|---|---|---|---|
| Flow rate | REG0001–0002 REAL4 | 0 | 2 | float32_le |
| Positive total | REG0009–0010 LONG | 8 | 2 | int32_le |
| Positive fraction | REG0011–0012 REAL4 | 10 | 2 | float32_le (optional) |
RS485 Wiring
Use a twisted pair for A/B (sometimes labelled D+/D−). Keep the shield earthed at one end only if that is site practice. The gateway RS485 port must match the meter’s A/B polarity; swapped A/B looks like timeouts, not a clean protocol error.
If several meters share one bus, each M46 slave ID must be unique. The seeded estate layout uses one gateway per meter (unit IDs 1, 2, 3), which avoids bus contention.
Gateway Configuration
Configure in the module’s web UI (or vendor tool):
- Work mode: TCP Client — destination = host and port supplied by estate technical staff
- Protocol: Modbus TCP / Modbus gateway — not transparent serial. Transparent mode sends raw RTU or leftover V1 text; the loader will not decode that as Modbus TCP
- RS485 baud, data bits, parity, stop bits = meter M62
- Give the module a stable LAN IP. Put that IP in the panel as expected peer IP if you want strict matching
Reconnect behaviour: if the WAN drops, the client should retry. The loader records disconnected then a new connected/polling session.
Network Path
- Access: Prefer VPN or locked source IPs for the Modbus listener. Do not leave the Modbus port open to the whole internet if you can avoid it
- NAT: Must allow outbound TCP from the gateway to the server. No inbound port-forward on the estate is required for this design
- Firewall / listen settings: Maintained by technical staff, not in this public manual
Verifying in the Field
- Meter M63 = RTU, M46 = panel unit ID, M62 = gateway serial
- Gateway shows TCP connected to the server
- Panel Diagnostics → Sessions shows
pollingand a recent last-poll time - Monitor Positive total ticks up when water is moving
| What You See | Meaning |
|---|---|
| Unsolicited ESN / POS text | Gateway still in transparent / V1 push mode |
| Sessions never appear | Wrong TCP Client destination, firewall, or loader not running — escalate |
| Poll timeouts with TCP up | ASCII mode, baud, slave ID, or meter off the bus |
Version Control
| Version | Date | Description |
|---|---|---|
| 1.0 | 2026-10-18 | Initial Release — server IPs, SSH, and sniff/probe tooling omitted for public publication |
| 1.1 | 2026-10-20 | Style guide compliance — field-path table and network list labels |
Next Review Date: 2027-04-20