HomeMaster STR-3221-R1
The HomeMaster STR-3221-R1 is a high-density smart LED / I/O controller module designed for stair lighting, architectural illumination and general low-voltage automation in HomeMaster systems and other Modbus RTU networks. It features 32 low-side MOSFET outputs for 12-24 V DC LED loads, 1 IEC 61131-2 compliant 24 V DC discrete input, 2 presence-sensor inputs, 4 local buttons and 4 user-assignable status LEDs.
Powered by the Raspberry Pi RP2350 microcontroller, the module supports RS-485 (Modbus RTU) communication and configuration via WebConfig over USB-C - no drivers or external software required. Configuration is stored in on-device flash (LittleFS) and survives power loss and reboots. It connects directly to HomeMaster MicroPLC and MiniPLC controllers or operates as a standalone Modbus slave in any automation network.
Through a MiniPLC or MicroPLC running ESPHome, the module appears in Home Assistant over the native ESPHome API — no MQTT broker, no Modbus register mapping in Home Assistant and no custom converters. Entities are ready to use within seconds, with low latency and no cloud.
Quick Overview
- 32-channel smart LED / I/O module for Modbus automation systems
- DIN-rail form factor with 24 V DC supply
- 32 low-side MOSFET outputs (12-24 V DC), 1 IEC 61131-2 DI + 2 presence-sensor inputs, 4 buttons, 4 status LEDs
- RS-485 Modbus RTU communication
- Local configuration via USB-C WebConfig interface
- Isolated I/O, surge and short-circuit protection
Typical Applications
- Stair LED lighting with motion sensors
- Architectural and ambient lighting
- Multi-channel low-voltage LED control
- Scene control with wall switch / button inputs
- Status indicators and alarm signaling
- Building and home automation
- PLC lighting expansion module
- Industrial signal lamps and indicators
Tech Specs
| Specification | Details |
|---|---|
| Microcontroller | RP2350 dual-core microcontroller |
| Storage | External QSPI Flash W25Q32 (32 Mbit) |
| Power Input | 24 V DC nominal (20-30 V DC recommended) |
| Input Protection | Time-lag fuse, reverse polarity diode, TVS surge suppression, EMI filtering |
| Main Logic Supply | AP64501 buck regulator 24 V → 5 V, AMS1117-3.3 LDO regulator |
| Outputs | 32 × low-side MOSFET channels, 1.5 A max per channel, 18 A module total, with flyback diodes |
| Output Voltage | External 12-24 V DC LED supply (shared + group rails) |
| Maximum Total Output Current | 18 A module path limit at 24 V DC (DB128L-5.08 field terminals); 1.5 A per channel |
| LED Driver ICs | 4 × TLC59208F (8-channel constant-current sinks) for status / indication and grouping |
| Digital Inputs | 1 × IEC 61131-2 compliant 24 V DC discrete input (DI + GND) plus 2 × presence-sensor inputs (IN1, IN2 with GND); ISO1212 front-end; PTC fuses, TVS surge suppression |
| Sensor Rails (SENS.A / SENS.B) | 2 fused 24 V auxiliary rails for external sensors (low current, ~200 mA total) |
| User Interface | 4 buttons (SW1-SW4), 4 user-assignable status LEDs plus power / RX / TX indicators |
| Communication | RS-485 Modbus RTU (MAX485, half-duplex), non-isolated; TVS surge protection, PTC fuses, common-mode choke, fail-safe biasing |
| USB | USB-C, 5 V logic, ESD protected (WebConfig only - not for powering field devices) |
| Typical Power Consumption | 0.2-0.5 W (logic only, no LED load) |
| Modbus Address Range | 1-247 (default: 21) |
| Modbus Baud Rate | 9600-115200 (default: 115200, 8N1) |
Note: Outputs are not internally fused per channel. Use external overcurrent protection on the LED supply rails per applicable standards and installation requirements.
Installation, Environmental & Mechanical
| Category | Specification | Details |
|---|---|---|
| Terminal Specifications | Terminal type | Pluggable screw terminal blocks, 5.08 mm pitch |
| Wire cross-section | 0.25-1.5 mm² (AWG 24-16) | |
| Tightening torque | 0.4-0.6 Nm | |
| Environmental Ratings | Operating temperature | 0 °C to +40 °C |
| Storage temperature | −10 °C to +55 °C | |
| Relative humidity | 0-95 % RH, non-condensing | |
| Ingress protection | IP20 (inside cabinet only) | |
| Maximum altitude | 2000 m | |
| Pollution degree | 2 | |
| Mechanical & Packaging | Mounting | 35 mm DIN rail (EN 50022) |
| DIN width | 9 modules (9 × 17.5 mm) | |
| Enclosure | PC/ABS, UL94-V0 | |
| Net weight | TBD | |
| Gross weight | TBD | |
| Pack size | TBD | |
| Notes | All dimensions in millimeters; see drawing below |
Install only inside a control cabinet with ventilation; the cabinet must include a protective front plate covering all module connection terminals and a closing protective door; not for outdoor or exposed installation.
All wiring terminals must be protected against accidental contact by an insulating front plate, wiring duct, or terminal cover. Exposed live terminals are not permitted.
Home Assistant / Modbus / Web Config Integration
The STR-3221-R1 supports flexible integration with:
- HomeMaster MicroPLC and MiniPLC controllers
- PLC and SCADA systems via Modbus RTU
- Home Assistant using ESPHome or Modbus integration
- Direct USB-C configuration using browser-based WebConfig tool
Configuration parameters are stored persistently in onboard flash and automatically restored at power-up.
Quick Setup Process (USB-C WebConfig)
- Mount & Power - Mount the module on a DIN rail and connect 24 V DC.
- Connect USB-C - Connect USB-C cable to the module.
- Open WebConfig - Open WebConfig page in Chrome or Edge browser.
- Connect Device - Click Connect and select the device.
- Configure - Set Modbus address and baud rate.
- Test I/O - Test outputs O1-O32, status LEDs and digital inputs.
- Save & Disconnect - Save settings and disconnect USB-C.
Features:
- Driverless browser-based configuration
- Live configuration and diagnostics
- Persistent flash storage
- No external software required
WebConfig provides Modbus address, baud rate, I/O test, and channel configuration (stored persistently in flash).
Minimal ESPHome YAML (Controller side)
Use this on the MiniPLC/MicroPLC (ESPHome). It enables the RS-485 bus and imports the STR-3221-R1 package.
uart:
id: uart_modbus
tx_pin: 17
rx_pin: 16
baud_rate: 115200
parity: NONE
stop_bits: 1
modbus:
id: modbus_bus
uart_id: uart_modbus
turnaround_time: 100ms
send_wait_time: 250ms
packages:
str1:
url: https://github.com/isystemsautomation/homemaster-dev
ref: main
files:
- path: STR-3221-R1/Firmware/v0.1.0/default_str_3221_r1_plc/default_str_3221_r1_plc.yaml
vars:
str_prefix: "STR#1"
str_id: str_1
str_address: 21
refresh: 1d
ESPHome 2026.7.0 raised the Modbus client defaults —
turnaround_timefrom 100 ms to 600 ms andsend_wait_timefrom 250 ms to 2000 ms (PR #11969).At the 600 ms default the bus carries only about 1.5 Modbus transactions per second, whatever the UART speed, because the controller stays silent for 600 ms after every response. Two modules on one RS-485 bus become slow to respond. With three or more, one module can stop being polled altogether — with no timeout and no CRC error in the log.
On ESPHome 2026.7.0 and newer, set both values explicitly as shown above. On earlier releases these were the defaults and the two lines are not required.
str_address must match the Modbus address configured in WebConfig.
Full Modbus register map and integration details are in the STR-3221-R1 README.
Documentation
The STR-3221-R1 is open-source hardware. Hardware and firmware files are available.
Hardware Documentation
| File | Description | Link |
|---|---|---|
| Field board schematic | STR-3221-R1 field I/O / power stage | STR-3221-R1-FieldBoard.pdf |
| MCU board schematic | STR-3221-R1 controller / MCU board | STR-3221-R1-MCUBoard.pdf |
| Datasheet | Module specifications and electrical characteristics | Download datasheet (PDF) |
Compliance Documents
| File | Description | Link |
|---|---|---|
| EU Declaration of Conformity (DoC) | Signed EU Declaration of Conformity per Reg. (EC) 765/2008 and Decision 768/2008/EC | DoC_STR-3221-R1.pdf |
| Datasheet | Technical specifications and electrical characteristics | STR-3221-R1_Datasheet.pdf |
Firmware & Software
| Resource | Description | Link |
|---|---|---|
| Firmware Source Code | Firmware and configuration tools | GitHub repository |
| Integration Guide | Setup and configuration documentation | README.md |
| WebConfig Tool | Browser-based configuration interface | Built-in USB interface |
Cabling and Wirings
Power Supply
Module power (V+ / 0V): The STR-3221-R1 logic and communication operate from 24 V DC SELV/PELV only. Connect +24 V and 0 V (GND) to the terminals marked V+ and 0V.
LED power (LED PS + / -): The LED supply terminals accept 12 V or 24 V DC. Use a separate supply for the LED loads; outputs are low-side switching and require a common LED supply rail to the + group pins.
| Parameter | Specification |
|---|---|
| Module (V+ / 0V) | 24 V DC ±10 % (20-30 V) - logic and module only |
| LED supply (+ / -) | 12 V or 24 V DC - for LED loads; separate from module power |
| Sensor rails (SENS.A / SENS.B) | 24 V DC fused auxiliary rails for low-power sensors |
| Protection | PTC fuses, reverse polarity diode, TVS suppression |
| Ground reference | Field return GND_FUSED; do not bridge to logic GND externally |
Terminal Block Layout
Top row (24Vdc | LED PS | RS-485 | DI 24Vdc | SENS.A | SENS.B | OUT O.1-O.10)
| Pos | Label | Group | Function |
|---|---|---|---|
| 1 | V+ | POWER | 24 V DC input |
| 2 | 0V | POWER | 24 V DC return |
| 3 | + | LED_PS | LED PSU positive |
| 4 | - | LED_PS | LED PSU negative |
| 5 | COM | RS485 | RS-485 signal reference |
| 6 | B | RS485 | RS-485 data - |
| 7 | A | RS485 | RS-485 data + |
| 8 | Gnd | DI | Discrete input return |
| 9 | I | DI | Discrete input |
| 10 | + | SENS_A | Presence sensor A supply |
| 11 | IN1 | SENS_A | Presence input A |
| 12 | Gnd | SENS_A | Presence A return |
| 13 | + | SENS_B | Presence sensor B supply |
| 14 | IN2 | SENS_B | Presence input B |
| 15 | Gnd | SENS_B | Presence B return |
| 16 | + | OUT_1_4 | Group rail for O.1-O.4 |
| 17 | O.1 | OUT_1_4 | Output 1 |
| 18 | O.2 | OUT_1_4 | Output 2 |
| 19 | O.3 | OUT_1_4 | Output 3 |
| 20 | O.4 | OUT_1_4 | Output 4 |
| 21 | + | OUT_5_8 | Group rail for O.5-O.8 |
| 22 | O.5 | OUT_5_8 | Output 5 |
| 23 | O.6 | OUT_5_8 | Output 6 |
| 24 | O.7 | OUT_5_8 | Output 7 |
| 25 | O.8 | OUT_5_8 | Output 8 |
| 26 | + | OUT_9_10 | Group rail for O.9-O.10 |
| 27 | O.9 | OUT_9_10 | Output 9 |
| 28 | O.10 | OUT_9_10 | Output 10 |
Bottom row (OUT O.11-O.32)
| Pos | Label | Group | Function |
|---|---|---|---|
| 1 | + | OUT_11_14 | Group rail for O.11-O.14 |
| 2 | O.11 | OUT_11_14 | Output 11 |
| 3 | O.12 | OUT_11_14 | Output 12 |
| 4 | O.13 | OUT_11_14 | Output 13 |
| 5 | O.14 | OUT_11_14 | Output 14 |
| 6 | + | OUT_15_18 | Group rail for O.15-O.18 |
| 7 | O.15 | OUT_15_18 | Output 15 |
| 8 | O.16 | OUT_15_18 | Output 16 |
| 9 | O.17 | OUT_15_18 | Output 17 |
| 10 | O.18 | OUT_15_18 | Output 18 |
| 11 | + | OUT_19_22 | Group rail for O.19-O.22 |
| 12 | O.19 | OUT_19_22 | Output 19 |
| 13 | O.20 | OUT_19_22 | Output 20 |
| 14 | O.21 | OUT_19_22 | Output 21 |
| 15 | O.22 | OUT_19_22 | Output 22 |
| 16 | + | OUT_23_26 | Group rail for O.23-O.26 |
| 17 | O.23 | OUT_23_26 | Output 23 |
| 18 | O.24 | OUT_23_26 | Output 24 |
| 19 | O.25 | OUT_23_26 | Output 25 |
| 20 | O.26 | OUT_23_26 | Output 26 |
| 21 | + | OUT_27_30 | Group rail for O.27-O.30 |
| 22 | O.27 | OUT_27_30 | Output 27 |
| 23 | O.28 | OUT_27_30 | Output 28 |
| 24 | O.29 | OUT_27_30 | Output 29 |
| 25 | O.30 | OUT_27_30 | Output 30 |
| 26 | + | OUT_31_32 | Group rail for O.31-O.32 |
| 27 | O.31 | OUT_31_32 | Output 31 |
| 28 | O.32 | OUT_31_32 | Output 32 |
Ports & service interfaces
| Id | Type | Note |
|---|---|---|
| USB-C | WebConfig / firmware interface (not for powering field devices). |
Housing notes
- Outputs are grouped in fours, each group with its own + rail - nine groups in total.
- Low-side switching: load + to the group + rail, load - to O.n.
- Two separate presence inputs SENS.A and SENS.B, each with its own + and Gnd.
- Per channel <=1.5 A (ferrite BLM31PG601SN1L). Module total <=18 A (DB128L-5.08 field terminals; choke is 24 A).
Top blocks: V+ / 0V (24 V DC module supply), LED PS +/- (12 or 24 V DC LED supply), SENS.A / SENS.B (fused 24 V sensor rails), IN1 / IN2 / GND (digital inputs). Output blocks: O1-O32 low-side outputs grouped with shared + rails. Comms block: A, B, COM (RS-485 Modbus RTU).
Output Wiring (O1-O32)
Output channels are low-side MOSFET sinks (SI2307A). Connect the LED load + to the corresponding + group rail (12 or 24 V from the LED supply) and the load - to the channel terminal (O#). Built-in SS24 flyback diodes protect against inductive switching transients. Maximum 1.5 A per channel; module total 18 A (field terminal path limit).
Digital Input Wiring (IN1, IN2)
Inputs use an ISO1212 IEC 61131-2 digital-input front-end (not galvanic isolation). Connect potential-free (dry) contacts — wall switches, push buttons, or relay / open-collector / transistor outputs that simply close DI to GND. The module supplies the wetting current from its own 24 V rail; do not feed external voltage into the input. Three-wire sensors must be powered from your own supply, with their switching output wired to the input (the module provides no sensor-supply rail). Each input has PTC fuse, TVS, and reverse protection. Do not exceed 30 V DC on input pins.
RS-485 / Modbus RTU
Terminal order differs across the HomeMaster range. Always read the silkscreen - do not wire by habit from another module. On this module the order is COM-B-A. Swapping A and B damages nothing but the node will not communicate. COM is required on every node.
All HomeMaster controllers and modules share the same RS-485 front end.
| Item | Value |
|---|---|
| Transceiver | MAX485CSA+T, half-duplex |
| Galvanic isolation | None — the transceiver shares the device's logic ground |
| Common-mode range | −7 V … +12 V referred to the device's own ground (MAX485 limit) |
| Terminals | A / B / COM |
| Surge protection | 3 × SMAJ6.8CA TVS (A–COM, B–COM, A–B) |
| Overcurrent | 2 × resettable PTC, 1.5 A hold, in series with A and B |
| EMI filtering | Common-mode choke on the A/B pair; COM referenced through 1 MΩ ∥ 4.7 nF |
| Idle state | Fail-safe biasing on board — do not add external bias resistors |
| Termination | 120 Ω at the two physical ends of the bus only |
Bus wiring rules — apply to every device on the bus:
- One twisted pair for A/B, 120 Ω characteristic impedance.
- Run COM to every node. Required, not optional: the ports are not isolated, and COM is what bounds the common-mode voltage the transceivers see.
- Prefer one power supply for the whole bus, distributed in star topology. With separate supplies, additionally tie the 0 V references together at a single point.
- Bond the cable shield to cabinet PE at one end only. Never land a shield on A, B or COM.
- Where the bus crosses into a different electrical installation with its own earthing reference — a utility or billing meter, another building, another cabinet's PE system — fit an external galvanic RS-485 isolator at that boundary. The on-board components are transient protection, not isolation, and will not survive a sustained ground-potential difference.
Cable Recommendations & Shield Grounding
General Routing Rules
- Route low-level signal cables (RS-485, DI) separately from power and LED wiring.
- If crossing power cables is unavoidable, cross at 90°.
- Keep cable runs as short as practical; avoid parallel runs with high-current conductors.
RS-485 (Modbus) Cable
- Twisted pair recommended (120 Ohm characteristic impedance).
- Shielded cable recommended in industrial environments.
- Use one twisted pair for A/B and a third conductor for COM. COM must be run to every node.
- Examples: J-Y(ST)Y 2×2×0.5 mm² or LI2YCY PiMF 2×2×0.50.
Shield Grounding
- Bond cable shield(s) to cabinet PE/EMC ground at one end (PLC side recommended).
- Do not connect shields directly to signal terminals (A/B/COM).
System Architecture & Pinout
Safety and Installation Notes
- Module logic: use only SELV/PELV 24 V DC on V+ / 0V. LED supply (+ / -) can be 12 or 24 V DC.
- Install inside a control cabinet; protect wiring terminals from accidental contact.
- Each module must have its own 24 V DC supply for V+ / 0V; do not bridge GND_FUSED and logic GND externally.
- Never connect mains voltage to any terminal - this is a SELV-only product.
- Size the separate LED PS field supply and wiring for up to 1.5 A per channel (18 A module total); use appropriate fusing on the LED PS supply. Do not share LED PS with module logic V+/0V.
- Sensor rails (SENS.A / SENS.B) provide limited fused 24 V output - do not backfeed external power.
- Installation and servicing by qualified personnel only.
Compliance & Certifications
The STR-3221-R1 module is CE marked. ISYSTEMS AUTOMATION S.R.L. (HomeMaster® brand) maintains the technical documentation and a signed EU Declaration of Conformity (DoC) available for download in the Documentation section above.
- EMC Directive 2014/30/EU - EN 55032:2015 (Class B emissions), EN 55035:2017 (immunity), tested by Idvorsky Laboratories Ltd. (Job #1648)
- RoHS Directive 2011/65/EU - EN IEC 63000 technical documentation
- Low Voltage Directive 2014/35/EU - does not apply (SELV-only product, 24 V DC nominal, no mains-capable terminals)
- HomeMaster® - registered EU trademark (EUTM No. 019082911, EUIPO, registered 15 January 2025)
Related products
These other products might interest you