Open Architecture

Industrial I/O Control, Redefined.

The iCTRL-20 is a modular, programmable industrial I/O controller with 20 I/O points, Modbus RTU communication, and autonomous operation — no PLC required.

iCTRL-20 V1
04
Digital Inputs 24V
04
Digital Outputs SSR
04
Analog In 0-10V
04
Analog In 4-20mA
04
Analog Out 0-10V

Built for Industrial Reality

A complete control solution that works autonomously, speaks Modbus RTU over both RS-485 and USB-CDC, and scales across your RS-485 bus.

Autonomous Operation

Runs independently with built-in logic, timers, and alarms. No PLC or external controller required for standalone control loops.

Dual Modbus RTU

Industry-standard Modbus RTU slave on two interfaces simultaneously: RS-485 (UART1, up to 1200 m, 8 modules per bus, hardware-selectable ID) and USB-CDC (UART0) for direct PC access — with write-priority lockout when both are active.

12 Internal Functions

DI→DO linking, AI alarms with hysteresis, power-OK response, 4 timer modes (TON/TOF/TP/TONOFF), per-input analog scaling, logic inversion, AI→AO direct linking, DI pulse counters, NVS auto-save, and hardware safety interlock.

Safety Interlock

Hardware safety interlock input instantly disables all outputs. Combined with power status detection and 24h Li-ion battery backup.

Real-Time Processing

ESP32-S3 dual-core with a real-time OS. Deterministic multitasking with ≤10 ms internal I/O cycle. Analog sampling, logic, timers, and Modbus run in parallel.

Open Architecture

Vendor-agnostic by design. Full Modbus memory map and GPIO pin map are published — integrate with any SCADA / HMI / gateway, or drop in your own firmware. No lock-in.

Non-Volatile Storage

All configuration persists in flash memory across power cycles. Auto-save mode ensures zero data loss on unexpected shutdowns.

Industrial Grade

Stainless steel enclosure, DIN rail mount, IP20 protection, -10 to +60°C range, reverse polarity and transient protection, EN61131-2 zone B immunity.

Specifications

Engineered for reliability in demanding industrial environments.

Processor
ESP32-S3-WROOM-1 (N16R8)
Operating System
Real-time OS
PSRAM / Flash
8 MB / 16 MB
Power Supply
24 VDC (12 – 30 V range)
Maximum Consumption
24 W
Battery Backup
3.7 V Li-ion — ~24 h autonomy
Digital Inputs
4× 24 VDC — ≤3 ms response, 5000 Vrms opto-isolation, TVS clamp
Digital Outputs
4× SSR 24 VDC — 1.6 A continuous / 2 A peak, flyback diode + RC snubber
Analog Inputs (Voltage)
4× 0-10 V — 12-bit, ±2 % FS, ESD + Zener clamp + RC filter
Analog Inputs (Current)
4× 4-20 mA — 12-bit, ±2 % FS, 120 Ω burden (built-in)
Analog Outputs
4× 0-10 V — 12-bit, ±2 % FS, dual-stage RC filter, ≥1 kΩ load
Communication
RS-485 (120 Ω termination, twisted-pair shielded) + USB-CDC via CP2102 — Modbus RTU @ 9600 8N1
Max Bus Length
1200 m
Max Modules / Bus
8 — IDs: 1, 2, 3, 4, 23, 34, 24, 234 (DIP switch)
Cycle Time
≤ 10 ms — internal I/O (typical)
Protection
IP20 / IK20 — IEC 60529
EMC Immunity
Zone B — EN61131-2
Temperature Range
-10 to +60 °C
Humidity
5–95 % non-condensing
Dimensions
205 × 125 × 45 mm
Weight
~900 g
Enclosure
Stainless Steel — open construction
Configuration
DZVOLT UI software + Modbus registers
Connectivity
USB-CDC Modbus + RS-485 Modbus RTU

12 Internal Functions

Configure advanced control logic directly on the module — no external programming required.

F1

Analog Output Control

Set 0-10V analog output values via DZVOLT UI software or Modbus holding registers.

F2

AI Alarm → DO

Set min/max thresholds on analog inputs. Trigger outputs when values exceed limits.

F3

Power OK → DO

Link the power status to a designated digital output. DO activates when power is OK.

F4

DI → DO Linking

Map any digital input directly to any digital output for instant pass-through control.

F5

Timer Engine

4 modes per output: TON (on-delay), TOF (off-delay), TP (pulse), TONOFF (cyclic on/off).

F6

0-10V Input Scaling

Convert raw voltage inputs to real engineering units with configurable min/max scaling.

F7

4-20mA Input Scaling

Convert current loop inputs to real values — temperature, pressure, flow, level, etc.

F8

DI Logic Inversion

Configure each digital input as normal or inverted logic via software.

F9

NVS Auto-Save

Toggle coil 00005 to persist every holding-register and coil change to flash. Configuration survives power loss; disabling the coil clears NVS.

F10

Safety Interlock

Hardware interlock input (read at discrete input 10014) instantly forces all outputs off, independent of the Modbus master. Fail-safe by design.

F11

AI → AO Direct Linking

Pass any analog input straight to any analog output (registers 40078–40081). Loop sensor signals to actuators with no Modbus master in the loop.

F12

DI Pulse Counters

Each digital input has a 16-bit rising-edge counter (0–65535) with a per-channel enable coil. Read counts at input registers 30011–30014.

Real-Time Processing Architecture

Inputs
4× DI 24V
4× AI 0-10V
4× AI 4-20mA
Power Detect
Interlock
Processing
Outputs
4× DO SSR 24V
4× AO 0-10V
Modbus Data
NVS Storage

Modbus Register Map

Complete register-level access to all I/O, configuration, and diagnostics via standard Modbus RTU function codes.

Type Address Parameter Access
Coils00001 – 00004Digital Outputs DO1 – DO4R/W
Coils00005Auto-Save to MemoryR/W
Coils00006 – 00009DI Pulse Counter Enable (DI1 – DI4)R/W
Discrete10001DI Power OKR
Discrete10002 – 10005Digital Inputs DI1 – DI4R
Discrete10006 – 10013AI Threshold Alarms (AI1 – AI8)R
Discrete10014Safety Interlock StatusR
Discrete10015 – 10018Raw State of DO1 – DO4R
Input Reg30001Slave ID (Device Address)R
Input Reg30002 – 30009Analog Input Values (AI1 – AI8)R
Input Reg30010Serial NumberR
Input Reg30011 – 30014DI Pulse Counters (DI1 – DI4, 0 – 65535)R
Input Reg30015 – 30018AO Voltage Feedback (AO1 – AO4, ×100)R
Holding40001 – 40004Analog Output Values (AO1 – AO4)R/W
Holding40005 – 40008DI → DO Link MappingR/W
Holding40009DI Power OK → DO LinkR/W
Holding40010 – 40025AI Alarm Thresholds (Min/Max)R/W
Holding40026 – 40033AI Alarm → DO Link MappingR/W
Holding40034 – 40053Timer Values (TON/TOF/TP/TONOFF)R/W
Holding40054 – 40057Timer Mode Select (per DO)R/W
Holding40058 – 40073AI Scaling (Min/Max per input)R/W
Holding40074 – 40077DI Logic InversionR/W
Holding40078 – 40081AI → AO Direct Link MappingR/W

Supports FC01, FC02, FC03, FC04, FC05, FC06, FC16 — 81 holding registers, 18 discrete inputs, 18 input registers, 9 coils. Data format: 8 data bits, no parity, 1 stop bit (8N1).

Monitor & Control iCTRL-20 from Any Browser

DZVOLT UI connects to iCTRL-20 over Modbus RTU and streams every I/O value live — role-based access, direct output writes, and a full audit trail. No client install required.

Download DZVOLT UI →

Built for Every Industry

From factory floors to agricultural fields, the iCTRL-20 adapts to your application.

Industrial Automation

Machine control, conveyor systems, packaging lines, and process interlocking.

SCADA & PCS Integration

Remote I/O expansion for existing SCADA systems via Modbus RTU.

Renewable Energy

Solar plant monitoring, hybrid energy systems, battery management, and grid telemetry.

Building Automation

HVAC control, lighting systems, access management, and energy monitoring.

Agriculture & Smart Farming

Irrigation control, pumping stations, greenhouse monitoring, and environmental sensing.

Data Acquisition

Multi-channel sensor logging, telemetry systems, and R&D measurement platforms.

IIoT & SCADA Integration

Modbus-native IIoT. Browser-based monitoring via DZVOLT UI; integrates with any SCADA, gateway, or cloud platform over Modbus RTU.

Education & Prototyping

Arduino-compatible platform for learning industrial control, PLC concepts, and Modbus communication.

Ready to Control
Your Next Project?

Whether you need 1 module or 100, we're ready to help you integrate the iCTRL-20 into your system.