Skip to content

Y301 Series Technical Manual

Applicable Models: Y301-110, Y301-200, Y301-020, Y301-220, Y301-222, Y301-440, Y301-444, Y301-880

This document consolidates the Modbus-oriented technical information for the entire Y301 serial I/O module family. It is intended for engineers who integrate Y301 devices with PLCs, SCADA platforms, or custom software.

Table of Contents

  1. Introduction
  2. System Overview
  3. Hardware Interfaces
  4. Electrical Specifications
  5. Modbus Communication Parameters
  6. Configuration Workflow
  7. Automation & Linkage Rules
  8. Wiring Guidelines
  9. Diagnostics & Maintenance

1. Introduction

  • Summary of supported hardware variants (DI/DO/AI combinations noted above)
  • Operating modes: Modbus-RTU slaves over RS485 (default), RS232 or TTL optional
  • Industrial design constraints: DC 5–36 V power range, -40 °C to +85 °C, DIN-rail or screw mounting
  • All models share the same Modbus register map philosophy; only the number of active channels differs

2. System Overview

  • Each Y301 device exposes optically isolated digital inputs (DI) and SPDT relay digital outputs (DO). Select SKUs add analog inputs (AI) with switchable voltage/current sensing.
  • The firmware implements Modbus-RTU. Devices respond to standard read/write function codes (01/02/03/04/05/06/15/16).
  • Device addressing = software slave ID (1–255) + DIP offset (0–31). DIP toggles SW1–SW5 form a binary offset.
  • Reload button provides factory reset (press 3–15 s). LED matrix indicates power, communication, DI/DO state.

3. Hardware Interfaces

  • Power: V+/V− screw terminals plus 5.5×2.1 mm DC jack. Input protected against reverse polarity.
  • DI Block: COM+/COM− shared rails plus DI1…DIn. Supports dry (COM+/DI) or wet (external 5–36 V referenced to COM−) contacts.
  • DO Block: NOn/COMn/NCn per channel. Relays rated up to AC 277 V/10 A or DC 28 V/10 A (resistive).
  • AI Block (Y301-222/444): AI− plus V+/I+ per channel. Only one mode (voltage or current) should be wired at a time.
  • DIP Switch: 5-bit offset (ON=1). Total address = base + offset.
  • Reload Button: Long press for factory restore.
  • Communication Port: RS485 A/B/GND by default; RS232 (TX/RX/GND) or TTL variants share pinout.
  • LEDs: POWER, WORK (heartbeat), DI1…n (input state), DO1…n (relay state), TX/RX traffic.

4. Electrical Specifications

  • Supply: DC 5–36 V. Typical draw varies by model (≈150 mA for 2-relay units, 180–260 mA for 4/8-relay units).
  • Digital Inputs: 5–36 V wet threshold, <5 mA per channel. Sampling rate 100 Hz. Supports rising/falling edge counting (32-bit).
  • Digital Outputs: SPDT relays, 10 A rated. Selectable retention: none / soft-reboot retention / full retention (soft + power cycle).
  • Analog Inputs (Y301-222/444): Dual or quad channels. Voltage mode reads 0–10 V (register output in mV). Current mode reads 4–20 mA (register output in µA).

5. Modbus Communication Parameters

  • Slave Addressing: 1–255 via configuration register (default 1). DIP offset (0–31) added runtime, allowing rapid node selection.
  • Baud Rate: 600–230400 bps (default 9600). Configurable data bits (8/9), stop bits (1/2), parity (none/odd/even).
  • Frame Format: Standard Modbus-RTU. Request = [Slave Addr][Function][Payload][CRC Lo][CRC Hi]. Response mirrors request with data or exception code.
  • Common Function Codes:
    • 0x01 Read Coils → DO state
    • 0x02 Read Discrete Inputs → DI state
    • 0x03 Read Holding Registers → configuration/diagnostic parameters
    • 0x04 Read Input Registers → AI values
    • 0x05/0x0F Write Single/Multiple Coils → DO control
    • 0x06/0x10 Write Single/Multiple Holding Registers → parameter updates

5.1 Coil Map (DO Control)

PLC AddrModbus Addr (Hex)ParameterDescriptionAccessDefault
000010x0000DO1Relay 1 output (0=open,1=closed)RW0
Up to DO16 depending on modelRW0

5.2 Discrete Inputs (DI Status)

PLC AddrModbus Addr (Hex)ParameterDescriptionAccess
100010x0000DI1Input 1 statusRO
Up to DI16 depending on modelRO

5.3 Input Registers (AI Measurements)

Each AI channel exposes two registers: voltage (mV) and current (µA). Only the wired mode yields valid data.

PLC AddrModbus Addr (Hex)FieldDescriptionBytesAccess
300010x0000AI1-VAI1 voltage reading (mV)2RO
300020x0001AI1-IAI1 current reading (µA)2RO
Repeats for each AI channel2RO

5.4 Holding Registers – General Parameters

PLC AddrModbus AddrParameterBytesR/WTypeNotes
400010x0000Device Model (string)32ROASCIIe.g., Y301-440
400170x0010Firmware Version32ROASCII
400330x0020Serial Number20ROASCII
400430x002ARuntime Slave Address2ROuint16Base + DIP
400440x002BDIP Offset Address2ROuint160–31, reports SW1–SW5 binary
400450x002CUptime (seconds)4ROuint32
400470x002EDevice Name32RWASCIICustom label on LCD/SCADA
400630x003EBase Address2RWuint161–255 (default 1)
400640x003FBroadcast Mode2RWuint160:disable,1:receive+respond,2:receive-only
400650x0040Output Retention Mode2RWuint160:none,1:soft,2:soft+power
400660x0041Pulse Count Edge2RWuint160:falling, 1:rising
400670x0042Pulse Debounce (ms)2RWuint165–255 (default 50)
400680x0043Boot Message Enable2RWuint160:disable,1:enable
400690x0044Boot Message Content16RWASCIIDisplayed after restart
400770x004CSerial Heartbeat Period (s)2RWuint160:disable,1–65535 seconds
400780x004DSerial Heartbeat Content16RWASCIIPayload sent on heartbeat
400860x0055RTC Time (Unix)4RWuint32Required for schedule modes
400880x0057Baud Rate4RWuint32600–230400
400900x0059Data Bits2RWuint168 or 9
400910x005AStop Bits2RWuint161 or 2
400920x005BParity2RWuint160:none,1:odd,2:even
400930x005CPacket Time (ms)2RWuint160:auto (4-byte time)

5.5 Holding Registers – Automation Rules

Starting at PLC 40129 (0x0080). Each rule consumes 16 bytes in the order shown below.

PLC AddrModbus AddrFieldBytesDescription
401290x0080Mode20–13 per PDF Section 2.5 (DI follow, pulse, delay, cyclic, timer, AI/logic, etc.)
401300x0081Action2Depends on mode: 0=open,1=close,2=toggle, or hold vs trigger variants
401310x0082DO Index21…n (DO channels)
401320x0083Trigger Index2DI/AI index depending on mode
401330x0084Param14Mode-specific parameter (ms delay, threshold value, bitmask)
401350x0086Param24Secondary parameter (period, lock interval, hysteresis)
  • Rules available per device = DO count × 2 (e.g., four relays → eight rules).
  • Example mapping from PDF:
    • Mode 0 (DI Follow): Action=0 (open) or 1 (close) defines DO state when DI=1; Param1/Param2 unused.
    • Mode 2 (Pulse Output): Param1=pulse width in ms. Setting DO1 to pulse for 500 ms → write Mode=0x0002, Action=0x0001, DO=1, Trigger unused (0), Param1=0x000001F4.
    • Mode 8 (Timer-Scheduled): Param1=Unix timestamp of first trigger, Param2=interval (ms). Requires RTC register 40086 populated after each reboot.
    • Mode 9 (Daily Schedule): Param1=seconds from midnight (e.g., 18:00 → 64800 = 0x0000FD20). Param2 unused.
    • Mode 10 (AI Threshold): Param1=threshold (mV or µA), Param2=min interval between triggers. Example: Mode=0x000A, Action=0x0000 (open), DO=1, Trigger=AI1, Param1=5000 (0x00001388), Param2=1000 (0x000003E8).
    • Mode 14 (Delayed Follow): Param1=delay duration (ms). Mode=0x000E, Action=0x0001 (forward follow), DO1 following DI2 with 1000 ms delay → Param1=0x000003E8.
    • Mode 15 (Logic AND/OR/XOR): Action selects hold vs trigger, Param1=bitmask of DO sources, Param2=bitmask of DI sources (bit0→channel1). Example: DO1 controlled by DO2+DI1+DI2 AND logic uses Param1=0x00000002, Param2=0x00000003.

5.6 Holding Registers – Pulse Counters

PLC AddrModbus AddrParameterBytesAccessNotes
412810x0500DI1 Count4RW (write zero to clear)32-bit accumulation, only zeroing allowed
412830x0502DI2 Count4RW
4RWOne entry per DI channel

5.7 Special Registers

  • 0x0800 (write 0x5500): trigger soft reboot
  • 0x0800 (write 0x0055 or 0x5555 depending on implementation): factory reset + reboot

5.8 Modbus Frame Examples

Frames follow standard Modbus-RTU format [Slave][Function][Data][CRC Lo][CRC Hi]. Examples assume slave address 0x01.

Use CaseFunctionFrame (hex)Description
Read DI10x0201 02 0000 0001 B9CAQuery discrete input 1 (10001).
Read DI80x0201 02 0007 0001 080BQuery discrete input 8.
Read DO10x0101 01 0000 0001 FDCARead coil 1 state.
Read DO80x0101 01 0007 0001 4C0BRead coil 8 state.
Force DO1 OFF0x0501 05 0000 0000 CDCACoil 1 → open.
Force DO1 ON0x0501 05 0000 FF00 8C3ACoil 1 → closed.
Force DO8 OFF0x0501 05 0007 0000 7C0BCoil 8 → open.
Read AI1 Voltage0x0401 04 0000 0001 31CAFetch AI1 voltage register (30001).
Read AI1 Current0x0401 04 0001 0001 600AFetch AI1 current register (30002).
Read AI4 Voltage0x0401 04 0006 0001 D1CBFetch AI4 voltage register (30007).
Set Base Address = 50x0601 06 003E 0005 0528Write holding register 40063 to value 5.
Enable DO Retention (soft+power)0x0601 06 0040 0002 DF09Holding register 40065 = 2.
Clear DI1 Pulse Counter0x1001 10 0500 0002 04 0000 0000 FFCCWrite zero to 40081/40082 (DI1 count).
Program Rule (Pulse DO1 from DI2)0x1001 10 0080 0006 0C 0002 0001 0002 0000 03E8 EAEAMode 2, DO1, trigger DI2, pulse width 1000 ms.

6. Configuration Workflow

  1. Connect via HYToolBox (or any Modbus master).
  2. Use broadcast address 0 to locate units; set unique base address (Holding register 40063).
  3. Configure baud, parity, packaging time (registers 40088–40093) to suit network latency.
  4. Adjust pulse debounce and edge detection (40066–40067) when DI lines carry noisy signals.
  5. Set DO retention (40065) if relays must hold state through soft/power reset.
  6. Program automation rules by writing 16-byte blocks starting at 40129. Each rule must reference valid DO and trigger indices.
  7. Store device name, broadcast behavior, heartbeat content if central monitoring requires identification (registers 40047+, 40064+, 40077+).

7. Automation & Linkage Rules

  • Mode 0 – DI Follow: DO mirrors DI state. Action defines DO state when DI=1 (open/close). Param1/2 unused.
  • Mode 1 – DI Reverse Follow: DO holds opposite of DI. Same action semantics as Mode 0.
  • Mode 2 – Pulse Output: DO toggles to commanded state, then reverts after Param1 milliseconds. Useful for momentary actuators.
  • Mode 3 – Delay On / Mode 4 – Delay Off: After DI transition, waits Param1 ms before changing DO. Param2 can provide separate off-delay in some firmware builds.
  • Mode 5 – Cycle (Flip-Flop): DO toggles periodically; Param1 = ON duration, Param2 = OFF duration.
  • Mode 6 – Timer (Absolute): Trigger at Unix timestamp (Param1). Param2 = repeat interval.
  • Mode 7 – Timer (Interval): After enabling, waits Param1 ms before first action, then repeats every Param2 ms.
  • Mode 8 – Timer (Schedule): Same as above but defined by absolute start time + period. Requires RTC register 40086.
  • Mode 9 – Daily Schedule: Param1 = seconds from midnight for execution time. Action = open/close/toggle.
  • Mode 10 – AI Threshold: Trigger when AI voltage/current crosses Param1. Param2 = minimum re-trigger interval.
  • Mode 11 – Button Mode: Emulates pushbutton; DO closes when DI pressed, opens when released, with optional hold time (Param1).
  • Mode 12 – Watchdog: Monitors DI or heartbeat; if no event occurs within Param1 ms, DO toggles to fail-safe state.
  • Mode 13 – Logic Evaluation: Combines DI/DO bitmasks (Param1=DO mask, Param2=DI mask) with AND/OR/XOR depending on action.
  • Mode 14 – Delayed Follow: Provided in PDF as “延时跟随”; same as Mode 0/1 but with Param1 delay.
  • Mode 15 – Logic (Extended): In some firmware revs, codes 15+ extend logic; consult release notes.

Rule Capacity: Each DO hosts two rules (executed in ascending register order). If multiple rules target same DO, ensure parameters do not conflict to avoid race conditions.

Programming Example: Configure DO1 to pulse for 500 ms whenever DI2 rises:

  1. Set Mode=0x0002 (pulse) at 40129.
  2. Action=0x0001 (close then release) at 40130.
  3. DO Index=0x0001, Trigger Index=0x0002 (DI2).
  4. Param1=0x000001F4 (500 ms), Param2=0.

Programming Example (DO Follow DI): Configure DO1 to directly follow DI1:

  1. Set Mode=0x0000 (DI Follow) at 40129.
  2. Choose the action for DI=1 at 40130, for example 0x0001 to close DO1 when DI1 is high.
  3. DO Index=0x0001 (DO1), Trigger Index=0x0001 (DI1) at 40131 and 40132.
  4. Param1=0x00000000, Param2=0x00000000 at 40133 and 40135 (not used in DI Follow mode).
  5. Use Modbus function 0x10 (Write Multiple Registers) starting from address 0x0080 to write these fields in one block.

RTU Frame Example (DO1 Follow DI1): Slave address = 1, base address already set to 1, DIP offset = 0.

FieldValue
Slave Addr01
Function10 (Write Multiple Registers)
Start Addr00 80 (0x0080, PLC 40129)
Quantity00 08 (8 registers, 16 bytes)
Byte Count10
Data (Mode)00 00 (Mode = 0, DI Follow)
Data (Action)00 01 (close DO when DI = 1)
Data (DO)00 01 (DO1)
Data (Trig.)00 01 (DI1)
Data (P1 Hi)00 00
Data (P1 Lo)00 00
Data (P2 Hi)00 00
Data (P2 Lo)00 00
CRC (Lo,Hi)0D FE

Full RTU request (hex): 01 10 00 80 00 08 10 00 00 00 01 00 01 00 01 00 00 00 00 00 00 00 00 0D FE

Schedule Example: Toggle DO1 every 1 s starting at Unix 1675245600:

FieldValue
Mode0x0008
Action0x0002 (toggle)
DO0x0001
Trigger0x0000
Param10x63DA3820 (1675245600)
Param20x000003E8 (1000 ms)

Daily Timer Example: Close DO1 every day at 18:00:00.

FieldValue
Mode0x0009
Action0x0001 (close)
DO0x0001
Trigger0x0000
Param10x0000FD20 (64800 s)
Param20x00000000

Reminder: Modes 8–10 rely on RTC register 40086. After every reboot, write current Unix time; otherwise schedules may drift.

8. Wiring Guidelines

  • Power: 22–16 AWG, upstream fuse (1–2 A). Keep supply leads short to minimize voltage drop.
  • DI Dry Contact: Short COM+ to DI through switch/relay; module sources ≈12 V internally.
  • DI Wet Contact: External 5–36 V positive to DI, negative to COM−.
  • DO Loads: Use RC snubbers for AC inductive loads, flyback diodes for DC coils. Respect relay current limits.
  • AI Wiring: Voltage mode uses V+ and AI−. Current mode uses I+ and AI−. Never connect both V+ and I+ simultaneously.
  • RS485 Bus: Shielded twisted pair, 120 Ω termination at both ends, common ground reference. Limit to 32 nodes per segment.

9. Diagnostics & Maintenance

  • LED Interpretation: POWER steady = supply OK; WORK blinking = firmware heartbeat; DI/DO LEDs follow channel states; TX/RX blink with communication.
  • Reload / Factory Reset: Press and hold 3–15 s → restore defaults (address resets to 1, DIP offset preserved).
  • Routine Checks:
    • Inspect terminal screws every 6 months for loosening.
    • Confirm wiring insulation integrity, especially near high-voltage loads.
    • Review Modbus error counters; adjust debounce or communication settings if retries increase.

  • Manufacturer: Hunan Yanji Tech Co.,Ltd
  • Address: Room 21014, Unit 1, Fudixingguang plaza, Yuhua district Yingxin road, Changsha, Hunan, P.R. China
  • Email: hi@yanjiiot.com
  • Website: www.yanjiiot.com