Skip to content

Controller & field wiring

This page is for the field technician doing the install, and the developer who needs to know what the copper actually is. It covers the ModBerry controller, every terminal, the parts list, how RISER ties into three ages of boiler, and the safety chain you must never touch. Read it alongside the System blueprint — the tags here (S1, R1, SF2…) are the boxes on that drawing.

Working drawing, not for construction without field verification. Confirm polarity, part numbers, and terminal assignments on the actual unit before you energize anything.

The edge controller (C1) is a ModBerry 500 CM4 (TECHBASE) — a Raspberry Pi Compute Module 4 in an industrial, DIN-rail enclosure. One box carries everything RISER needs:

  • Analog inputs for the 4–20 mA temperature and pressure transmitters,
  • a thermocouple input for the flue,
  • RS-485 for the onboard sensor module and the boiler’s own controller,
  • a digital output that drives the interposing relay,
  • and LTE for the backhaul.

It runs Debian + systemd, and the RISER edge agent is the program on it. The agent’s control loop and safety interlocks run on this box, not in the cloud.

Fallback controller. Where the ModBerry doesn’t fit, the design drops in a Revolution Pi Connect 5 plus AIO + DIO modules, an external 4G router, and a UPS. The RevPi reads RTDs natively but costs more per unit. Both are built against the same IODriver interface, so the agent code does not change — see From code to copper.

Wire the controller to these terminals. Physical IDs (AI1, DO1, TC1) are what the installer lands wire on; the config IDs (ai0, do0, tc0) are what the code uses — the mapping is in From code to copper.

Terminal Direction Signal Lands
AI1 in 4–20 mA Supply water temp (S1)
AI2 in 4–20 mA Return water temp (S2)
AI3 in 4–20 mA Steam pressure (S3, steam only)
AI4 in 4–20 mA Outdoor air temp (S4)
TC1 in Type-K Flue gas temp (S5)
RS-485 A/B/G in/out Modbus RTU Onboard sensor module + boiler controller (B2)
DO1 out 24 V Interposing relay coil (R1)
PWR in 24 VDC From the DIN PSU / UPS
ANT in RF LTE antenna (N1)

Keyed to the tags on the blueprint. This is the shopping list per building.

Tag Component Part / detail Signal Connects to
S1 Supply water temp M12TXSS RTD probe + 4–20 mA transmitter 4–20 mA Controller AI1
S2 Return water temp M12TXSS RTD probe + 4–20 mA 4–20 mA Controller AI2
S3 Steam pressure Dwyer 616KD + diaphragm siphon (steam only) 4–20 mA Controller AI3
S4 Outdoor air temp Outdoor RTD transmitter (weather-reset) 4–20 mA Controller AI4
S5 Flue gas temp Tempco TPW00036 thermocouple Type-K Controller TC1
Tag Component Part / detail Signal Connects to
C1 Edge controller ModBerry 500 CM4, runs the RISER agent all I/O + LTE Hub for everything
P1 AC service feed 120 VAC building supply 120 VAC PSU P2 + switched line to R1
P2 DC power supply 24 VDC DIN-rail PSU 24 VDC UPS P3, controller PWR
P3 UPS Battery ride-through 24 VDC Controller PWR
Tag Component Part / detail Signal Connects to
R1 Interposing relay Briidea 24 V coil → 120 V SPDT contact 24 V coil / 120 V Driven by DO1, switches B1 call-for-heat
B1 Boiler / burner Existing plant under control Call-for-heat from R1, gated by SF chain
B2 Boiler Modbus controller Modern boilers only RS-485 Controller RS-485 (read + write)
SF1 Aquastat (high limit) Native safety, never bypassed line Series burner-enable string
SF2 Low-water cutoff (LWCO) Native safety, never bypassed line Series burner-enable string
SF3 Pressure relief valve (PRV) Native mechanical safety Boiler vessel / burner
Tag Component Part / detail Signal Connects to
N1 Cellular antenna External LTE antenna RF Controller ANT
N2 Carrier SIM T-Mobile data SIM Controller modem
N3 LTE network Carrier cellular RF / IP Internet
N4 Internet Public network HTTPS Backend K1
K1 RISER backend FastAPI application HTTPS Receives telemetry, serves commands
K2 Database PostgreSQL SQL Backend K1
K3 Operator web app Browser dashboard HTTPS Backend K1

RISER meets the boiler where it is. How you connect depends on how modern the boiler’s own controls are.

Boiler age How RISER connects Control you get
Modern RS-485 Modbus straight to the boiler controller (B2). Reads status, writes setpoints. Full read + setpoint write
Older Interposing relay (R1) to the aquastat terminals, plus RISER’s own sensors for visibility. On/off + rich monitoring
Really old Interposing relay (R1) switches the 120 VAC call-for-heat. On/off only

In every case RISER adds its own sensors (S1S5) for visibility — even a really-old boiler gets full telemetry, it just gets simpler control.

The controller output (DO1) is a low-voltage 24 V signal. The boiler’s call-for-heat is line voltage. The interposing relay R1 bridges the two: the controller energizes the 24 V coil, and the relay’s contact switches the 120 V.

Safety-critical wiring. RISER never switches line voltage from the controller. It only energizes a relay coil. Confirm relay polarity so that energized coil = boiler enabled — the de-energized (power-loss) state must fall back to the boiler’s native controls, heat available.

The native safety chain — never bypassed

Section titled “The native safety chain — never bypassed”

The aquastat (SF1), low-water cutoff (SF2), and pressure relief valve (SF3) are the boiler’s own, independent, code-required safeties. They are wired in series as the burner-enable string. RISER’s call-for-heat passes through this string; any one device can shut the burner down on its own.

RISER is wired in addition to, never in place of, the native safety chain. If you find yourself jumpering out an aquastat or a low-water cutoff to make RISER work, stop — that is wrong. The whole design depends on those devices remaining live and independent.

120 VAC (P1) → 24 VDC DIN PSU (P2) → UPS (P3) → controller. The UPS gives the controller ride-through so a brief power sag doesn’t reboot it mid-cycle. On a full outage the boiler’s native controls keep heat available regardless of the controller’s state.