Skip to Content

Stair Lighting Controller for Home Assistant — STR-3221-R1, 32 Channels, Modbus RTU

DIN-rail stair lighting controller for Home Assistant and ESPHome. Thirty-two low-side MOSFET channels rated 1.5 A each drive one 12 or 24 V LED step per channel, each individually dimmable with 8-bit brightness on Modbus holding registers 400-431, and two presence-sensor inputs detect direction of travel. Modbus RTU slave on RS-485, configured over USB-C from a browser. The step sequence is written on the controller.
SKU
HM-STR-3221-R1
EAN
5940031101886
Brand
HomeMaster
Warranty
24 months
135.00 € 135.00 € VAT included

Returns & Warranty Conditions
Shipping & Availability
We ship orders within 1–2 business days for items in stock.
For out-of-stock products, ships within 1–2 business days after restock
Shipping times will automatically update once the product becomes available.


32 dimmable channels

Low-side MOSFET outputs for 12–24 V LED steps and valve heads, 1.5 A each — one channel per step.

Stairs run on the module

Direction, pattern and fade live in the module. The home server sets day and night levels; the run itself does not need it.

Underfloor heating zones

Slow PWM for thermal actuators, valve exercise and frost protection, with a heat-demand flag for the pump.

Open hardware

Schematics and PCB files under CERN-OHL-W v2, firmware under MIT. You own the design, not a vendor.

LED stair lighting per step at night: steps light up one by one from the bottom, presence sensor next to the first step

STR-3221-R1 · per-step stair lighting

Every step lights up in order. The module runs it.

A presence sensor at each end, one channel per step, up to 32 steps. Direction, pattern and fade live in the module; Home Assistant sets the levels.

32dimmable channels
1.5 Aper channel
18 Aper module
6stair patterns

32-channel LED stair lighting controller for Home Assistant

Modbus RTU module · MiniPLC or MicroPLC · Home Assistant via ESPHome · 12–24 V DC loads

HomeMaster STR-3221-R1 is a DIN-rail output module with 32 dimmable low-side MOSFET channels for 12–24 V DC loads — one channel per stair step, per LED segment or per underfloor-heating valve head. It sits on the RS-485 bus of a MiniPLC or MicroPLC and appears in Home Assistant through the controller's ESPHome package: 32 dimmable lights plus stair and heating controls, with no Modbus register mapping.

Presence sensors at the bottom and the top start the stair run and set its direction; the module lights the steps one by one and fades them out. The same channels can drive underfloor-heating valve heads. Home Assistant sets day and night levels, scenes and zone setpoints.

Home Assistant is the main platform, not the only one: with MQTT enabled in ESPHome on the controller, the STR-3221-R1 also works with openHAB, ioBroker, Node-RED and SCADA systems — and any Modbus RTU master can drive it directly.

HomeMaster STR-3221-R1 DIN-rail module: 32 MOSFET outputs, presence inputs IN1 and IN2, 24 V input, RS-485 Modbus RTU, LED supply input, USB-C WebConfig

What you can build with the STR-3221-R1

One module, 32 channels, 12–24 V DC. Loads above 1.5 A per channel go through a relay or a contactor.

Floating oak staircase with LED strips under every tread, all steps lit, presence sensors at the bottom and the top

LED stair lighting per step

One channel per step, presence sensors at both ends. Up to 32 steps on one module. Full build →

Underfloor heating manifold with thermal actuators and the STR-3221-R1 module in the control cabinet

Underfloor heating zones

Up to 32 thermal actuators, slow PWM per zone, pump demand to the controller, valve exercise in summer.

Hallway with dimmed LED cove, skirting and niche lighting at night-light level

Corridors, coves and night light

Dimmable 12–24 V strips in coves, skirting and niches: groups, scenes and a night-light level from Home Assistant, local buttons for all on and all off.

Inputs and outputs at a glance

32 dimmable MOSFET outputs

Low-side switching for 12–24 V DC LED segments and valve heads, 1.5 A per channel. Linear, gamma or CIE curve, min / max and ramp per channel.

Presence inputs for stair sensors

IN1 and IN2 with their own fused 5 V rails for PIR or radar sensors at the bottom and the top of the stairs.

24 V digital input

Dry contact wetted by the module: a wall switch, a scene button, or enable / inhibit for the heating loop.

RS-485 Modbus RTU

Slave on the controller's bus, address 3 at 19200 baud out of the box. Any Modbus RTU master can drive it.

USB-C WebConfig

Set up channels, stairs and heating from a browser — no driver, no software to install. Settings are kept in flash.

Buttons and status LEDs

4 buttons with local actions (all on, all off, scene, panic) and 2 assignable status LEDs. Local actions take priority over the bus.

What problems it solves

No cloud, no manufacturer account

Nothing leaves your network. The module talks Modbus to your controller, and the controller talks to Home Assistant locally over the ESPHome API — no vendor cloud, no account, no subscription.

No vendor lock-in

Standard Modbus RTU with a published register map, open schematics and open firmware. You can repair it, reflash it or drive it from another master — the design is yours, not a vendor's.

No breadboard in a cupboard

Per-step stair lighting usually ends up as an ESP32 board, a PWM breakout and a MOSFET board wired by hand. This is one DIN-rail module with protected inputs and pluggable terminals, wired and signed off in a panel.

Any staircase, 2 to 32 steps

Free channel map, six patterns, day and night levels, and standby lighting whose first and last channels you pick in WebConfig, not written in code.

Stairs and heating run on the module, not on the home server

The stair run and the heating-zone cycle are executed by the module itself. The home server changes levels, windows and setpoints and shows the state.

Stair run

A presence sensor starts the run on the module: direction, pattern, hold and fade.

Night light

Standby on the first and last channels you choose — always, or only while the night window is on.

Valve heads

Slow PWM with phase spread and a cap on how many zones open at once.

Exercise and frost

Valves are exercised in summer; frost protection takes over after the silent hours.

Buttons and panic

4 local buttons act on the module directly and take priority over the bus.

Panic drives the lighting to the panic level and keeps every valve head closed.

Built for the cabinet, not the workbench

Hand-built LED controllers switch MOSFETs straight from a GPIO. The STR-3221-R1 is built with industrial-grade protection on every channel and every input, in a DIN-rail housing with pluggable 5.08 mm terminals.

None of the field interfaces is galvanically isolated: the module is for SELV wiring in one cabinet, with one 0 V reference.

CE-marked, EMC tested at an external laboratory.

HomeMaster STR-3221-R1 DIN-rail module with pluggable 5.08 mm terminals, 32 channel LEDs and USB-C

Gate RC and ferrite

On every one of the 32 channels.

1.5 A per channel

18 A per module across nine output groups.

TVS on IN1 / IN2

Presence inputs clamped against surges.

Fused 5 V rails

Sensor supply fused, separate from the outputs.

PTC and TVS on 24 V in

The digital input is protected on both.

RS-485: 3× TVS, 2× PTC

A–COM, B–COM, A–B; 1.5 A PTC on A and B.

Common-mode choke

Plus fail-safe biasing on the bus.

Power input

1 A fuse, TVS, reverse-polarity protection, EMI filter.

Per-step stair lighting with presence sensors

Put one 12 or 24 V LED strip under each tread and a presence sensor at each end. The first sensor to fire sets the direction; the module lights the steps in order and fades them out after the hold time.

Six patterns — sequential, all, wave, comet, centre and random — with step delay, hold, fade and overlap. Day and night levels, standby lighting on channels you choose, and an inhibit from Home Assistant.

Home Assistant sets the night window and the levels. Per-step stair lighting guide →

Stair lighting with STR-3221-R1: presence sensors at the bottom and top, steps lit in sequence, six patterns, day and night levels

How a stair run works

Presence sensor next to the first stair step; the first steps light up as a foot steps on

Presence at either end

The first sensor to fire sets the direction — up or down.

Steps light in order

One by one with the step delay, in the pattern you chose.

Hold

Steps stay on for the hold time, or while presence lasts.

Fade out

Then they fade back to off, or to the standby level on the first and last channels you chose.

Six patterns

Sequential

Steps light one by one in the direction of travel.

All

Every step lights at once.

Wave

A group of lit steps travels along the stairs.

Comet

A bright head with a fading tail runs ahead.

Centre

Light starts at the middle and spreads to both ends.

Random

Steps light in random order.

Day level, night level and night light

Staircase in the evening with every step lit at the day level

Day level

Steps run at full brightness while the house is awake.

Staircase at night with only the first and the last step glowing softly as a night light

Night level and night light

Home Assistant switches the night window; the run dims and the first and last step keep a soft glow.

What you need for one staircase

Stair lighting kit with STR-3221-R1
STR-3221-R11 module for up to 32 steps
ControllerMicroPLC for stairs and lighting, MiniPLC if heating is on the same bus
Presence sensors2 — bottom and top, PIR or radar, powered from the IN1 / IN2 5 V rails
LED strips12 or 24 V constant-voltage, one segment per step
Logic supply24 V DC DIN-rail supply; can also feed the controller
LED supply12–24 V DC DIN-rail supply, sized for the LED load

Sizing the LED supply: an example

16 steps × 1 m of 24 V strip at 9.6 W/m = 154 W. Add 20 % reserve → 185 W, so a 24 V 200 W (8.3 A) supply.

Each step draws 0.4 A — well under 1.5 A per channel; the module carries 6.4 A of its 18 A.

Underfloor heating valve heads for Home Assistant

Any channel can run the Heat profile and drive a 24 V thermal actuator. The module runs slow PWM with phase spread, a cap on simultaneously open zones, valve exercise and frost protection, and raises a heat-demand flag for the pump.

The MicroPLC relay is C / NC only. For a pump or boiler demand that closes when energised, use a MiniPLC relay or a relay module.

Underfloor heating with STR-3221-R1: thermal actuators on the outputs, heat-demand flag, MiniPLC with room temperature and pump relay

On the module

Valve heads with slow PWM, phase spread and a cap on open zones · enable / inhibit on the 24 V input · heat-demand flag with first-open delay · valve exercise and frost protection.

On the controller

Room and floor temperature · setpoints, schedule and the control loop · pump and boiler relays.

One module, light or heat

Each channel has its own profile — LED, Heat, Raw or Indicator — so stair steps, valve heads and cove strips can share one module.

32 stair steps

16 steps + 12 valve heads + 4 cove strips

32 valve heads

Stair step · LEDValve head · HeatCove strip · LED

Which controller runs it

The STR-3221-R1 is a Modbus module: the controller brings it into Home Assistant.

HomeMaster MicroPLC ESP32 DIN-rail controller, 2 DIN modules

MicroPLC

For stair lighting and LED scenes

Relays
1 × C / NC (fail-safe)
Inputs
1 digital, 1-Wire
Power
24 V DC
Network
Wi-Fi
Width
2 DIN modules
View MicroPLC →
HomeMaster MiniPLC ESP32 DIN-rail PLC, 9 DIN modules

MiniPLC

For underfloor heating with pump and boiler relays

Relays
6 × SPDT
Inputs
4 digital, 2 × PT100/PT1000, 2 × 1-Wire, 4 × 0–10 V
Power
24 V DC or 85–265 V AC
Network
Wi-Fi or Ethernet
Width
9 DIN modules
View MiniPLC →

Stairs and lighting only — a MicroPLC is enough. Underfloor heating with pump and boiler relays and room sensors — use a MiniPLC. Both run the same ESPHome package; plan the panel in the System Builder.

Set up in three steps — no code

Connect USB-C and open WebConfig in the browser: set the Modbus address, choose the profile of each channel (LED, Heat, Raw, Indicator) and fill in the stair or heating card.

Add the STR package to the ESPHome configuration of your MiniPLC or MicroPLC with that address. After the controller restarts, 32 lights and the stair and heating controls appear in Home Assistant.

Factory address is 3 at 19200 baud — give each module on the bus its own address.

STR-3221-R1 setup: WebConfig over USB-C, ESPHome package on the MiniPLC or MicroPLC, entities in Home Assistant

Power: 24 V DC logic, 12–24 V DC for the loads

The module needs two supplies. 24 V DC on V+ / 0V runs the electronics (0.2–0.5 W). A separate 12 or 24 V DC supply on LED PS feeds the nine output groups; size it for the total LED or actuator load, up to 18 A per module.

Each group has its own + rail: the load + goes to the group rail, the load − to the channel terminal.

The 5 V sensor rails are for presence sensors only, never for LED segments.

STR-3221-R1 power: 24 V DC logic supply on V+ and 0V, separate 12–24 V DC LED supply, nine output groups with their own + rail

Technical specifications

STR-3221-R1 key specifications
MicrocontrollerRP2350A, dual-core
Outputs32 × low-side MOSFET, PWM dimmable, 1.5 A per channel, 18 A per module
Output groups9 groups, each with its own + rail
Load supplyExternal 12–24 V DC on LED PS, separate from the logic supply
Logic supply24 V DC, typical 0.2–0.5 W
Presence inputs2 × IN1 / IN2 with fused 5 V sensor rails
Digital input1 × 24 V, dry contact, wetted by the module
RS-485Modbus RTU slave, half-duplex, surge-protected, not galvanically isolated; address 3, 19200 baud, 8N1
ConfigurationWebConfig over USB-C in the browser; settings stored in flash
Controls4 buttons, 2 status LEDs, 32 channel indicators
Dimensions158 × 90.6 × 67.3 mm, 9 DIN modules, 35 mm rail
TerminalsPluggable screw terminals, 5.08 mm, 0.2–2.5 mm²
Environment0 … +40 °C, 0–90 % RH non-condensing, IP20, indoor control cabinet
Weight150 g
Warranty24 months

Datasheet DS-STR-3221-R1 Rev. B · 2026-09 · Hardware R1 (V1.0) · Firmware v0.4.0

STR-3221-R1 dimensions: 158 mm wide, 90.6 mm high, 67.3 mm deep, 9 DIN modules on a 35 mm rail

What it is not

  • Not a thermostat: it does not measure temperature or run a control loop — the controller does.
  • Not stand-alone in Home Assistant: it needs a Modbus RTU master such as a MiniPLC or MicroPLC.
  • 12–24 V DC loads only — no 230 V lamps or 230 V valve heads.
  • Not for addressable pixel strips: one PWM channel per constant-voltage segment.
  • No galvanic isolation on any field interface — SELV wiring, one 0 V reference, an isolator where the bus leaves the installation.
  • 1.5 A per channel, 18 A per module — heavier loads through a relay or a contactor.

Documents and downloads

STR-3221-R1 documents
DatasheetSTR-3221-R1_Datasheet.pdf
EU Declaration of ConformityDoC_STR-3221-R1.pdf
ESPHome packagedefault_str_3221_r1_plc.yaml
WebConfigOpen WebConfig
SchematicsSchematics/
Full technical referenceREADME.md

Wiring and installation

The terminal map, wiring steps, power notes, WebConfig reference, Modbus register map and Home Assistant entities are in the technical README:

Build guides