Introduction
The Numato Lab’s UR8A – 8 Channel USB Relay Module is a precision-engineered control interface designed for professionals who demand reliability, simplicity, and intelligent automation in a single, compact module.
The UR8A module enables effortless relay control and digital input monitoring over USB through a clean, human-readable command interface. This streamlined approach removes unnecessary complexity, allowing developers, engineers and integrators to focus on building systems, not decoding protocols.
Crafted with a modern, industrial-grade architecture, the UR8A – 8 Channel USB Relay Module is built to perform consistently in all environments.
At its core lies the powerful Smart Action Engine, transforming the device from a simple interface into an autonomous control unit. With support for intuitive, rule-based automation, the module can independently execute logic such as event-triggered actions, elimination the need for constant host supervision.
To further enhance precision and system resilience, the module includes:
- Relay Timer for accurate and repeatable output behavior.
- Integrated IO Failsafe Engine to ensure safe operations.
As a result the UR8A – 8 Channel USB Relay is a device that delivers clarity in control, intelligence in operation, and confidence in deployment.
Whether used for industrial automation, testing infrastructure, or system integration, the UR8A – 8 Channel USB Relay Module sets a new standard for smart, reliable, and user-centric control solutions.
Applications
- Industrial Automation and Control
- Building and Facility Automation
- Remote Monitoring and Control Systems
- Power Management and Sequencing
- Safety and Failsafe Systems
- Edge Automation (Standalone Operation)
- Test and Measurement Automation
- DIY and Hobby
Board Features
- 8 Relay Outputs (SPST, 7A Switching Capacity)
- 8 High-Voltage Digital Inputs (Up to 24V)
- Dedicated Relay Status LEDs
- Secure Command-Line Interface over USB
- Smart Action Engine (Rule-Based Automation)
- Advanced Relay Timer Functionality
- Configurable Failsafe Input
- DIN Rail Mount Compatibility
- RGB Status Indicator
- Device Reset and Factory Reset Switch
Technical Specifications
| Parameter * | Value | Unit |
|---|---|---|
| Basic Specifications | ||
| Number of relays | 8 | |
| Number of digital Inputs | 8 | |
| Digital circuit power supply voltage (External) | 12/24 | V |
| Maximum current drawn by digital circuitry | 300 | mA |
| Digital Inputs Specifications |
||
| Minimum DI sink current | 2.05 | mA |
| Maximum DI sink current | 30 | mA |
| Recommended sink current | 10 | mA |
| Maximum Low Voltage (VIL) | 10.2 | V |
| Minimum High Voltage (VIH) | 10.5 | V |
| Maximum High Voltage | 24 | V |
| Relay Specifications |
||
| Nominal relay coil voltage | 12/24 | V |
| Nominal coil power consumption (per relay) | 450 | mW |
| Relay contact material | Silver Alloy, silver metal-oxide | |
| Contact rating | 7A 250VAC 7A 30VDC | |
| Maximum switching voltage | 250VAC/30VDC | |
| Maximum switching current (recommended) | 7 | A |
| Maximum switching power | 2500VA/300W | |
| Contact resistance | 100 | mΩ (at 1A 6VDC) |
| Insulation resistance | 1000 | MΩ |
| Life expectancy (Electrical) | 100000 50000 | Operations (at 10A 250VAC resistive load, room temp) Operations (at 10A 250VAC, resistive load, at 85°C) |
| Life expectancy (Mechanical) | 10000000 | Operations |
| Maximum switching on response time | 1 | second |
| Maximum switching off response time | 9 | second |
| shock resistance (Functional) | 294 | m/s2 |
| Shock resistance (Destructive) | 980 | m/s2 |
| Vibration resistance | 10Hz to 55Hz, 1.5mm DA | |
* All parameters considered nominal. Numato Systems Pvt Ltd reserve the right to modify products without notice.
* Datasheet – HF32FV-G Relay
How to use the module
The following section describes how to use this module.
Components/Tools required
Along with the module, you may need the items in the list below for easy and fast installation.
- USB Type-C Cable
- 12V/24V 1A DC power supply
- Medium-sized Philips screwdriver
Connection Details

USB Interface
The UR8A – 8 Channel USB Relay Module is designed for quick and intuitive operation. With its human-readable command set and standard USB CDC interface, the device can be used with widely available serial terminal applications, no specialised software required.
It is compatible with most common terminal tools, including:
- Windows
- Tera Term
- PuTTY
- Linux
- GNU Screen
- PuTTY
- MAC OS X
- Screen Command
- CoolTerm
Note: The device is not limited to the above tools and can be used with any standard serial terminal software.
Getting started with the device involves just a few simple steps:
- Connect the Device: Plug the module into a USB port on your host system.
- Install Drivers (Windows Only): Driver is available on the product page.
- Open the COM Port: Open the COM Port assigned to the device using your preferred serial terminal software.
- Send Commands: Control, monitor and configure the device with simple human-readable commands, similar to using DOS or Bash terminal.
- Automate via scripts: Integrate with your application or scripts using language of choice such as C, python, Node.js, Perl, or others.
- Enable Standalone Automation: Configure Smart Actions and Relay Timers to allow the device to operate independently without a host system.
Use a USB-A to USB-C/ USB-C to USB-C cable to connect to a PC. Please visit accessories to buy cables and accessories for this product.
Relay Contacts
The UR8A – 8 Channel USB Relay Module is equipped with 8 independent SPST relay channels, each capable of switching loads up to 7A.
All relay terminals are brought out to screw terminals for secure and convenient field wiring.
Each relay provides two terminals:
- IN (Common)
- OUT (Load Output)
When the relay is ON, the electrical connection is established between IN and OUT, allowing current flow to the connected load. When the relay is OFF, the connection is open, and the load is disconnected.
| Relay State | IN to OUT Connection | Load Condition |
|---|---|---|
| OFF | Open | Load Disconnected |
| ON | Closed | Load Energized |
Digital Input Contacts
In addition to the onboard relays, the UR8A – 8 Channel USB Relay Module features 8 high-voltage digital input channels, designed for reliable interfacing with external signals in industrial environments.
Input Voltage Range
- Recommended Operating Voltage: Up to 24V
- Logic LOW (Max): <= 10.2V
- Logic HIGH (Min): >= 10.5V
Input Current Characteristics
- Minimum Sink Current: 2.05 mA
- Maximum Sink Current: 30 mA
Each input channel detects the presence of an external voltage signal and interprets it as a digital HIGH or LOW based on the defined thresholds. These inputs can be used to monitor signals from switches, sensors or any other control systems.
Important Notes
- Ensure input voltages remain within the specified limits to prevent damage.
- Always use proper grounding and wiring practices in industrial environments.
LED Indication
The UR8A – 8 Channel USB Relay module provides visual feedback for reset operations through the onboard LED indicator:
- On Power-On: Solid Red Turns ON, indicating the device is ready for use.
- Device Reset: The Red LED briefly turns OFF and ON, indicating that the device is restarting.
- Factory Reset: The Red LED blinks continuously while the factory reset process is in progress.
Multipurpose Switch
The UR8A – 8 Channel USB Relay Module is equipped with a versatile multipurpose switch that enables a range of device management functions:
| Action | LED Indication | Function |
|---|---|---|
| Single Click | The Red LED briefly turns OFF and ON, indicating that the device is restarting. | Device Reset: Resets the device and reinitializes. |
| Press for 5-7 seconds | The Red LED blinks continuously while the factory reset process is in progress. | Factory Reset: Device erases all the settings and restores to factory defaults. |
Important: Use the Factory reset feature only to recover the Username/Password. A factory reset will erase all user settings, restoring the board to its default configuration. After resetting, access the board using the default credentials listed in the table.
Connection Diagram

Factory Reset
The UR8A – 8 Channel USB Relay Module provides a factory reset feature to restore all settings to their original default values.
How to Perform a Factory Reset
You can initiate a factory reset using either of the following methods:
- Using the Multipurpose Switch: Press and hold the REST switch for 5 – 7 seconds.
- Using Command Interface: Execute the factory reset command via the USB console.
Important Notes
- This operation will reset all user-configured settings, including:
- Username and Password
- Device ID
- Smart Actions and Timer configurations
- All other user-configured parameters.
- After reset, the device will revert to factory default credentials, as listed in the table below.
Factory Default Settings
The default configuration after a factory reset is provided in the table below.
| User name | admin |
| Password | admin1234 |
| Device ID | 00000000 |
| Smart Action | Disabled |
| Relay Power-On | Disabled |
| GPIO Notify Feature | Disabled |
| IO Failsafe | Disabled |
Smart Action Engine
The Smart Action Engine enables real-time, rule-based automation by directly mapping digital inputs to relay outputs. It allows the module to respond instantly to input conditions using configurable logic modes such as LOW, HIGH, or FOLLOW.
This feature transforms the device from a simple USB relay interface into an intelligent control system, capable of operating independently without continuous host intervention.
Relay Timer Engine
The Relay Timer Engine provides precise time-based control of relay operations. It supports configurable modes such as Delayed ON, Delayed OFF, and Toggle, enabling automation of sequencing, scheduling, and timed switching tasks.
With persistent configuration, the timer functionality continues to operate even after power cycles, making it ideal for autonomous and repeatable control applications.
IO Failsafe Control
The IO Failsafe Control feature ensures safe and predictable system behaviour by monitoring a designated digital input. When the configured input reaches the specified trigger condition, the module automatically drives the relays to a predefined state.
This is essential for implementing safety mechanisms such as emergency shutdowns, fault handling, and enforcing defined system states based on input-triggered conditions.
Driver Installation
Installing Numato Lab CDC Driver - Windows Desktop and Server Editions
The driver package for Numato Lab’s products can be downloaded from the product page at ttp://numato.com. To install the driver, unzip the contents of the downloaded driver package to a folder. Attach USB cable to the PC and when asked by Windows device installation wizard, point to the folder where driver files are present. When driver installation is complete, the module should appear in Windows Device Manager as a serial port. The picture below shows a 1 Channel USB Relay Module visible in Windows Device Manager. For other devices (USB GPIO and USB Relay modules), the name will be different but how the device is displayed and used is exactly same.
Note down the name of the serial port (COM1, COM2, etc..). This information is required to control the module from the PC.
You may notice that the driver package does not come with a .sys or .exe file as most driver packages do and are expected to be that way. The driver binary necessary in this case is shipped with all copies of Windows Desktop/Server editions and gets installed automatically while Windows is installed for the first time. The .inf and .cat files present in the driver package downloaded from http://numato.com merely associate this pre-existing driver with the attached Numato Lab device.
The following video demonstrates how to install the driver on Windows 10.
Installing on Windows Embedded Editions
Windows Embedded editions do not install the infrastructure necessary for the USB CDC by default in favor of a smaller footprint. This will cause the driver to install to fail unless the necessary files are manually installed prior to installing the driver. Please follow the steps below to install the prerequisites and drivers correctly. These steps are tested on Windows 7 Embedded Edition.
- Locate winemb-inf-mdmcpq.cab on Win 7 Embedded DVD/ISO image
- Copy winemb-inf-mdmcpq.cab to a folder Ex: C:Temp
- Run command DISM.exe /online /Add-Package /PackagePath:C:Temp
- Wait for Windows to restart (Restart machine manually if DISM does not restart the machine automatically)
- After reboot is complete, plug the device to a USB port and install driver normally (Driver is available for download at the product page)
Installing on Linux
To use any device that uses the USB CDC protocol with Linux, the USB CDC driver needs to be compiled into the kernel. Fortunately, most Linux distributions (Ubuntu, Redhat, Debian, etc..) have this driver pre-installed. The chances of you requiring to rebuild the kernel to include the USB CDC driver is very slim. When connected to a Linux machine, this product should appear as a serial port under /dev directory. Usually, the name of the device will be ttyACMx or similar. The name may be different depending on the Linux distribution you have. The image below shows the result of ls /dev command on a Linux Mint system with a USB GPIO/Relay device attached.
In this particular case, the device shows up as ttyACM0 (highlighted in orange color) but it could be ttyACM1 or ttyACM2, etc… depending on the specific system and other connected devices. Once the device is visible under /dev directory, it can be treated just like any other serial device. Commands can be sent to the device using any mechanism that is valid for regular serial ports such as screen command or Serial Terminal Emulation applications. If there is more than one device connected to the same host computer, each device will be displayed as separate serial devices with unique names. These separate serial devices can be used to control individual devices attached.
Installing on Mac OSX
Mac OSX is usually shipped with USB CDC driver pre-installed. When connected to a Mac computer, this product should appear as a serial port under /dev directory. Usually, the name of the device will be tty.usbserialportx or similar. The name may be different depending on the Mac OSX version you have. The image below shows the result of ls /dev/*usb* command on a Mac OSX Yosemite system with a USB GPIO/Relay device attached.
In this particular case, the device shows up as tty.usbmodem141141 (highlighted on orange color) but it could be any name starting tty.usbmodem or even a completely different name depending on the exact version of operating system and other connected devices. Once the device is visible under /dev directory, it can be treated just like any other serial device. Commands can be sent to the device using any mechanism that is valid for regular serial ports such as screen command or Serial Terminal Emulation applications. If there is more than one device connected to the same host computer, each device will be displayed as separate serial devices with unique names. These separate serial devices can be used to control individual devices attached.
Installing CDC Devices On Android
Most Android versions have a built-in driver that supports external USB Devices. Due to the presence of a built-in driver any external USB device including Numato Lab’s USB GPIO/Relay products connected to Android-based gadget will be enumerated by Android OS. Such enumerated devices can be listed/viewed by using apps such as USB Device Info. The image below shows info about a Numato Lab USB device printed by the USB Device Info app. All Numato Lab’s USB GPIO and USB Relay modules will be displayed the same way.
Devices detected by Android can be controlled by using an off the shelf Serial Terminal App such as USB Serial Terminal Lite.
Supported Error Codes
The UR8A – 8 Channel USB Relay Module returns error codes to indicate invalid commands or incorrect parameter usage.
These codes help in quickly identifying and resolving issues during operation.
| Error Code | Error Name | Description |
|---|---|---|
| -3 | Invalid Command | The entered command is not recognised by the device |
| -2 | Invalid Argument | One or more parameters are incorrect |
| -51 | Invalid Relay Timer Limit | Timer delay is outside the allowed range |
Notes:
- Error codes are returned immediately upon command validation failure
- Ensure all commands and parameters follow the defined format and limits
- Refer to individual command sections for valid parameter ranges
Sending Commands
One of the most powerful features of this module is the simple easy to use command set it supports. This command set hides the complex USB protocol and gives a very simple interface to access the features of the module. The following sections give details of the command set and how to use the command set.
The command set
This product support a very simple command set that is designed to be less cryptic and easy to use manually (using serial terminal emulation programs) or through a program written in many supported languages.
List of currently supported commands.
| No. | Command | Parameters | Example | Description |
|---|---|---|---|---|
| 1 | ver | None | ver | Returns firmware Version |
| 2 | id | get/set xxxxxxxx | id get, id set 12345678 | Reads/Sets id of the module |
| 3 | usr | get/set xxxxxxxx | usr get, usr set admin | Reads/Sets User name |
| 4 | pass | get/set xxxxxxxx | pass get, pass set admin | Reads/Sets Password |
| 5 | usr auth | get/on/off | usr auth get, usr auth on, usr auth off | Returns User Auth status, Enable/Disable Authentication |
| 6 | relay | on/off/status [relay number]/ on all/off all/ write [relay_group] [relay_map]/ pwron [relay_group] [relay_map]/ tmr get [relay_number]/disable [relay_number]/[relay_number] [mode] [delay_seconds] | relay on 000,relay off 000, relay status 000, relay on all, relay off all, relay write A 00ff, relay pwron A 00ff, relay tmr get 000, relay tmr disable 000, relay tmr 000 M0 2 | Relay Control |
| 8 | gpi | gpi read [input number], gpi notify on/off/get | gpi read 000, gpi read, gpi notify on, gpi notify off. gpi notify get | Monitor General Purpose Input |
| 11 | smart | get/-i/-r/disable/ [input] [mode] [target_output] [value] | smart get 000, smart -i 000, smart -r 000, smart disable, smart 000 L 000 1 | Read configured data, clear configured input, clear configured relay, disable entire smart action feature, configure smart feature |
| 7 | fs | get input_number/reset/disable/ [input] [mode] [relay_group] [relay_map] | fs get 000, fs reset, fs disable, fs 000 L A 0012 | Read status of IO failsafe, Manual Reset Failsafe, Disable Failsafe, Configure Failsafe |
| 9 | info | none | info | Display information about the module including Smart Action, Power-on status, and IO Failsafe |
| 10 | reboot | reboot | power reset | Power reset does a soft-reset. |
| 11 | fact | reset | fact reset | Perform device factory reset |
The table below has more detailed information about available commands.
| No. | Command | Example | Description |
|---|---|---|---|
| 1 | ver | ver | This command returns the current firmware version of the device. Command Format verResponse Format xxxxxxxx – Firmware version string Description Returns the firmware version currently running on the device. Example ver Returns firmware version Notes The version format may vary depending on the firmware release. |
| 2 | id | id get id set xxxxxxxx | This command is used to read and configure the device ID. Command Format id get id set xx – New device ID (exactly 8 characters) Description id get returns the current device ID. id set x updates the device ID to the specified value.Example id get Returns the current device ID id set DEV12345 Sets the device ID to "DEV12345"Notes The device ID must be exactly 8 characters in length. Changing the device ID may affect identification in connected systems or applications. |
| 3 | usr | usr get usr set xxxxxxxx | This command is used to read and configure the device username. Command Format usr get usr set xx – New username (1 to 8 characters) Description usr get returns the current username configured on the device. usr set x updates the username to the specified value.Example usr get Returns the current username usr set admin Sets the username to "admin"Notes Username length must be between 1 and 8 characters. Changing the username affects authentication over the USB interface. |
| 4 | pass | pass get pass set xxxxxxxx | This command is used to read and configure the device password. Command Format pass get pass set xx – New password (9 to 31 characters, alphanumeric and symbols supported are !, @, ^, (, ))Description pass get returns the current password configured on the device. pass set x updates the device password to the specified value.Example pass get Returns the current password pass set admin1234 Sets the password to "admin1234"Notes Password length must be between 9 and 31 characters. Use a strong password to ensure secure access to the device. Changing the password affects authentication over the USB interface. |
| 5 | usr auth | usr auth get | This command returns the current USB authentication status. Command Format usr auth getResponse Format USR Authentication Disabled – Authentication is DISABLED USR Authentication Enabled– Authentication is ENABLED Description Returns whether USB authentication is currently enabled or disabled. Example usr auth get Returns USR Authentication Enabled if authentication is enabled, otherwise USR Authentication DisabledNotes Ensure authentication is enabled for secure operation. When disabled, commands can be executed without credentials. |
| usr auth on | This command enables USB authentication for the device. Command Format usr auth onDescription Enables authentication over the USB interface. Once enabled, valid credentials are required to execute commands. Example usr auth on Enables USB authenticationNotes Ensure valid username and password are configured before enabling authentication. If credentials are unknown, use factory reset to restore default access. |
||
| usr auth off | This command disables USB authentication for the device. Command Format usr auth offDescription Disables authentication over the USB interface. Once disabled, commands can be executed without requiring a username or password. Example usr auth off Disables USB authenticationNotes Disabling authentication reduces access security. It is recommended to use this feature only in trusted environments. |
||
| 6 | relay | relay on xxx | This command turns ON a specific relay channel. Command Format relay on xxxxxx – Relay number (Range: 000 to 007, numbering starts from 0) Description Turns ON the selected relay channel. Example relay on 000 Turns ON Relay 0Notes Ensure the relay number is within the valid range (000–007). The command immediately updates the relay state. If a relay is mapped to smart action or relay timer, manual control will be restricted |
| relay off xxx | This command turns OFF a specific relay channel. Command Format relay off xxxxxx – Relay number (Range: 000 to 007, numbering starts from 0) Description Turns OFF the selected relay channel. Example relay off 000 Turns OFF Relay 0Notes Ensure the relay number is within the valid range (000–007). The command immediately updates the relay state. If a relay is mapped to smart action or relay timer, manual control will be restricted |
||
| relay status xxx | This command returns the current status of a specific relay channel. Command Format relay status xxxxxx – Relay number (Range: 000 to 007, numbering starts from 0) Response Format on or offon – Relay is ON off – Relay is OFF Description Returns the current state of the selected relay channel. Example relay status 000 Returns status of Relay 0Notes Ensure the relay number is within the valid range (000–007). The response reflects the real-time state of the relay at the moment of execution. |
||
| relay status | This command reads the current status of all relays in a single operation. Command Format relay statusResponse Format A:XXXXXXXX – Current relay state (hexadecimal value) Description The returned value represents the state of all relays in the selected group. Each bit corresponds to one relay channel. 0 – Relay OFF 1 – Relay ON Example A:0000 – All relays are OFF A:00FF – All relays are ON Group Representation A – Group A (first 16 relays) Each bit represents one relay channel Value Range UR8A: 0000 to 00FF (8-bit) UR16A: 0000 to FFFF (16-bit) |
||
| relay on all | This command turns ON all relay channels. Command Format relay on allDescription Turns ON all relays in a single operation, regardless of their current state. Example relay on all Turns ON all relaysNotes This command immediately sets all relay outputs to ON. It overrides any previously set relay states. If a relay is mapped to smart action or relay timer, manual control will be restricted |
||
| relay off all | This command turns OFF all relay channels. Command Format relay off allDescription Turns OFF all relays in a single operation, regardless of their current state. Example relay off all Turns OFF all relaysNotes This command immediately sets all relay outputs to OFF. It overrides any previously set relay states. If a relay is mapped to smart action or relay timer, manual control will be restricted |
||
| relay write A 00xx | This command controls all relays in a single operation using a hexadecimal value. Command Format relay write G xxxxG – Relay group identifier A – Group A (relays 0 to 15) xxxx – Relay state value (hexadecimal) Description Sets the state of multiple relays simultaneously. Each bit in the hexadecimal value represents one relay in the group. Bit Representation 0 – Relay OFF 1 – Relay ON Example relay write A 00FF – Turns ON all relays in Group AValue Range UR8A: 0000 to 00FF (8-bit) UR16A: 0000 to FFFF (16-bit)Notes Each bit position corresponds to a relay channel within the group. Ensure correct bit mapping to avoid unintended relay switching. If a relay is mapped to smart action or relay timer, manual control will be restricted |
||
| relay pwron A 00xx | This command sets the relay power-on state for the module. Command Format relay pwron G xxxxG – Relay group identifier A – Group A (first 16 relays) xxxx – Relay state value (hexadecimal) Description Defines the relay states that will be applied when the device powers on or resets. Each bit in the hexadecimal value represents the state of a relay. Bit Representation 0 – Relay OFF 1 – Relay ON Example relay pwron A 0003 0000 0000 0000 0011 → Relays 0 and 1 ON, all others OFF Value Range UR8A: 0000 to 00FF (8-bit) UR16A: 0000 to FFFF (16-bit)Notes The configured state is applied on device power-up or reset. Ensure correct bit mapping to avoid unintended relay activation. If a relay is mapped to smart action or relay timer, manual control will be restricted |
||
| relay tmr get xxx | This command returns the current configuration and status of a specific relay timer. Command Format relay tmr get xxxxxx – Relay number (Range: 000 to 007, numbering starts from 0) Response Format Mx D:yyyyM:Mx – Timer mode (M0 [Delayed ON], M1 [Delayed OFF], M2 [Toggle]) D:yyyy – Delay value in seconds Description Returns the timer configuration for the selected relay. Includes the configured timer mode and delay value. Example relay tmr get 000 Returns timer status for Relay 0Notes Ensure the relay number is within the valid range (000–007). If no timer is configured, the response will indicate "timer not active". |
||
| relay tmr get | This command returns the list of relays with timer configurations. Command Format relay tmr getResponse Format Active timers: xxx xxx xxxxxx – Relay numbers with timer configured Description Returns a list of relay channels for which timer functionality is currently configured. Only relays with active timer settings are included in the response. Example relay tmr get Active timers: 000 002 005 Indicates that relay timers are configured on Relay 0, 2, and 5. Notes If no relay timers are configured, the response may indicate an empty or default state. Use relay tmr get xxx for detailed timer configuration of a specific relay. |
||
| relay tmr disable xxx | This command disables the relay timer configuration for the specified relay channel. Command Format relay tmr disable xxxxxx – Relay number (Range: 000 to 007) Description Disables the timer configured for the selected relay. Once disabled, the relay will no longer operate based on timer settings. Example relay tmr disable 000 Disables timer for Relay 0Notes Ensure the relay number is within the valid range (000–007). |
||
| relay tmr disable | This command disables the Relay Timer feature for all relay channels. Command Format relay tmr disableDescription Disables all configured relay timers. Once disabled, no relay will operate based on timer settings. Example relay tmr disable Disables all relay timer operationsNotes Use the timer configuration command to re-enable timer-based behavior. |
||
| relay tmr [relay_number] [timer_mode] [timer_delay] | This command configures the timer behavior of a specific relay channel, enabling precise control over relay operation based on time. Command Format relay tmr xxx mode delayxxx – Relay number (Range: 000 to 007) mode – Defines the operating mode of the relay timer M0 – Delayed ON M1 – Delayed OFF M2 – Toggle Timer delay – Time delay in seconds (Range: 1 to 3600 seconds) Description Configures time-based behavior for the selected relay channel. The relay action depends on the selected mode and delay value. Examples relay tmr 000 M0 1 – Turns ON Relay 0 after a delay of 1 second relay tmr 000 M1 4 – Turns OFF Relay 0 after a delay of 4 seconds relay tmr 000 M2 10 – Toggles Relay 0 every 10 seconds Notes Timer configurations are persistent and remain active even after a power reset. A configured timer continues to operate until it is explicitly disabled or the device is factory reset. If a relay is already mapped to smart action, relay timer cannot be configured |
||
| 8 | gpi | gpi read xxx | This command reads the current state of a specific digital input (GPI). Command Format gpi read xxxxxx – Digital input number (Range: 000 to 007) Response Format 0 or 10 – Input is LOW 1 – Input is HIGH Description The command returns the instantaneous logic level of the selected digital input. Example gpi read 000 Returns 0 or 1 depending on the current state of GPI 0Notes Ensure the input number is within the valid range (000–007). The response reflects the real-time state of the input at the moment of execution. |
| gpi read | This command reads the current status of all digital inputs in a single operation and returns the values grouped by input channels. Command Format gpi readResponse Format A:XXXXXXXX – Current digital input state (hexadecimal value) Description The returned value represents the state of all digital inputs in the selected group. Each bit corresponds to one input channel. 0 – GPI LOW 1 – GPI HIGH Example A:00FF – All inputs in Group A are HIGH A:0001 – GPI 0 is HIGH, all other inputs are LOW Group Representation A – Group A (first 16 digital inputs) Each bit represents one input channel 0 – GPI LOW 1 – GPI HIGH Value Range UR8A: 0000 to 00FF (8-bit) UR16A: 0000 to FFFF (16-bit) |
||
| gpi notify on | This command enables digital input (GPI) change notifications. When enabled, the device monitors input state changes and sends a notification to the host whenever a change is detected. Command Format gpi notify onNotification Format A:XXXX/YYYYXXXX – Current input state YYYY – Previous input state Description A notification is sent only when a change is detected in any input bit. The value represents the state of all inputs in the group using hexadecimal format. Example A:00FE/00FF Previous state: 00FF Current state: 00FE This indicates that GPI 0 changed from HIGH (1) to LOW (0), triggering the notification. Group Representation A – Group A (first 16 digital inputs) Each bit represents one input channel 0 – GPI LOW 1 – GPI HIGH Value Range UR8A: 0000 to 00FF (8-bit) UR16A: 0000 to FFFF (16-bit) |
||
| gpi notify off | This command disables the GPI change notification feature. Command Format gpi notify offResponse Format Gpi Notify DisabledDescription Disables automatic notifications for digital input state changes. Once disabled, the device will no longer send updates to the host when input states change. Example gpi notify off Disables GPI change notifications |
||
| gpi notify get | This command returns whether the GPI change notification feature is enabled or disabled. Command Format gpi notify getResponse Format Gpi Notify Enabled or Gpi Notify DisabledDescription Returns the current status of the gpi change notification feature. Example gpi notify get Returns Gpi Notify Enabled or Gpi Notify Disabled |
||
| smart | smart get xxx | This command returns the current Smart Action configuration for a specific digital input channel. Command Format smart get xxxxxx – Digital input number (Range: 000 to 007) Response Format M:L R:000:HM – Input mode (L: LOW, H: HIGH, F: FOLLOW) R – Relay number H / L – Trigger value (HIGH / LOW) Description Returns the Smart Action settings configured for the selected digital input Includes operating mode, mapped relay outputs, and configured trigger values Example smart get 000 Returns Smart Action configuration for Digital Input (GPI) 0Notes
|
|
| smart get xxx raw | This command returns the current Smart Action configuration for a specific digital input channel in raw bit format. Command Format smart get xxx rawxxx – Digital input number (Range: 000 to 007) Response Format M:XM – Input mode (L: LOW, H: HIGH, F: FOLLOW) R – Relay mapping in bit format V – Trigger values in bit format Description Returns the Smart Action configuration for the selected digital input in raw bit representation. Each bit in R corresponds to a relay, and each bit in V defines the trigger value for the corresponding relay. Bit Mapping Bit 0 (Least Significant Bit) corresponds to Relay 0 Bit 7 (Most Significant Bit) corresponds to Relay 7 Example smart get 000 raw Returns Smart Action configuration for Digital Input (GPI) 0 in raw formatM:LDigital Input 0 is configured in LOW mode. Relay 0 is mapped with trigger value HIGH (1). Notes Ensure the input number is within the valid range (000–007). If no Smart Action is configured, the response will indicate I:000 not mapped. |
||
| smart get | This command returns the list of digital inputs that have Smart Action configured. Command Format smart getResponse Format Mapped IOs: xxx xxx xxxxxx – Digital input numbers with Smart Action configured Description Returns a list of digital input channels for which Smart Action is currently configured. Only mapped inputs are included in the response. Example smart get Mapped IOs: 000 001 007 Indicates that Smart Action is configured on Digital Inputs 0, 1, and 7. Notes If no Smart Action is configured, the response may indicate an empty or default state. Use smart get xxx for detailed configuration of a specific input. |
||
| smart -i xxx | This command disables the configured digital input for the specified channel. Command Format smart -i xxxxxx – Digital input number (Range: 000 to 007) Description Disables the selected digital input channel. Example smart -i 000 Disables Smart action mapped on digital Input (GPI) 0Notes Ensure the input number is within the valid range (000–007). |
||
| smart -r xxx | This command disables the configured relay for the specified channel. Command Format smart -r xxxxxx – Relay number (Range: 000 to 007) Description Disables the selected relay channel mapped to smart action. Example smart -r 000 Disables Relay 0 mapped to smart actionNotes Ensure the relay number is within the valid range (000–007). |
||
| smart disable | This command disables the Smart Action feature for all input channels. Command Format smart disableDescription Disables all configured Smart Actions. Once disabled, no digital input will trigger any relay output based on Smart Action logic. Example smart disable Disables Smart Action feature for all inputs |
||
| smart [input] [mode] [target_output] [value] | This command configures the Smart Action feature. Smart Action maps digital inputs to relay outputs and automates relay control based on input state. Command Format smart xxx mode target_output valuexxx – Digital input number (Range: 000 to 007) mode – Defines the trigger condition for the relay L – Trigger when input is LOW H – Trigger when input is HIGH F – Follow mode (relay follows input state) target_output – Relay to be controlled by the selected digital input (Range: 000 to 007) value – Relay output state when triggered 0 – Relay OFF 1 – Relay ON Not required in F (Follow) mode Description Each command links a digital input (same index as xxx) to a relay output. The relay action depends on the selected mode and trigger condition. Examples smart 000 L 000 1 – When digital input 0 goes LOW, Relay 0 turns ON smart 001 H 002 0 – When digital input 1 goes HIGH, Relay 2 turns OFF smart 003 F 003 – Relay 3 follows digital input 3 (LOW - OFF, HIGH - ON)Notes Digital input index corresponds to the input used in the command. Follow mode (F) continuously mirrors input state without delay. If a relay is mapped to relay timer, the same relay cannot be configured with smart action feature One relay can be mapped to only one input, One input can have multiple relays mapped to it |
||
| fs | fs get | This command returns the IO Failsafe configuration for the specified digital input. Command Format fs getResponse Format I:xxx M:X G:X V:xxxxI:xxx – Digital input number M:X – Trigger mode (L: LOW, H: HIGH) G:X – Relay group (e.g., A) V:xxxx – Relay state value (hexadecimal) Description Returns the configured failsafe settings for the selected digital input. Includes trigger mode, relay group, and relay output value. Example fs get Returns failsafe configuration for Digital Input 0Notes If no failsafe is configured, the response will indicate "FS Not Configured". |
|
| fs reset | This command performs a manual reset of the IO Failsafe condition to resume normal device operation. Command Format fs resetDescription Clears the active failsafe state triggered by a digital input. Restores normal operation of relay outputs and system behavior. Example fs reset Clears the failsafe condition and resumes operationNotes Use this command after resolving the condition that triggered the failsafe. If the trigger condition still exists, the failsafe may be reactivated immediately. |
||
| fs disable | This command disables the IO Failsafe feature completely. Command Format fs disableDescription Disables all configured IO Failsafe behavior. Once disabled, digital inputs will no longer trigger failsafe actions. Example fs disable Disables IO Failsafe featureNotes Use the configuration command to reactivate failsafe behavior. |
||
| fs [input] [mode] [relay_group] [relay_value] | This command configures the IO Failsafe feature, enabling the module to automatically set relay states based on a defined digital input condition. Command Format fs xxx mode G xxxxxxx – Digital input number On UR8A, only Digital Input 0 is supported mode – Defines the trigger condition L – Trigger when input is LOW H – Trigger when input is HIGH G – Relay group identifier A – Group A (first 16 relays) xxxx – Relay state value (hexadecimal) Description Defines the relay output state when the specified digital input reaches the configured condition. Each bit in the hexadecimal value represents one relay. Bit Representation 0 – Relay OFF 1 – Relay ON Example Value 0003 – 0000 0000 0000 0011 Relays 0 and 1 ON, all others OFF Value Range UR8A: 0000 to 00FF UR16A: 0000 to FFFF Examples fs 000 L A 0012 When Digital Input 0 goes LOW, relays are set according to 0012 Relay 1 and Relay 4 turn ON, all others turn OFF fs 000 H A 0012 When Digital Input 0 goes HIGH, relays are set according to 0012 Relay 1 and Relay 4 turn ON, all others turn OFF |
||
| 9 | info | info | This command displays module information, including Smart Action status, Power-on configuration, and IO Failsafe status. Command Format infoDescription Returns a summary of key module configurations in a single response. Helps in quickly verifying system setup and operational status. Example info Returns module configuration summaryNotes The response format may vary based on firmware version. Use individual commands for detailed configuration of each feature. |
| 10 | reboot | reboot | This command performs a soft reset of the device. Command Format rebootDescription Restarts the device without altering any stored configuration. All settings, including Smart Action, Timer, Failsafe, and credentials, remain unchanged. Example reboot Performs a device soft resetNotes The device will briefly disconnect and restart after execution. Use this command to recover from temporary issues or apply configuration changes. |
| 11 | fact reset | fact reset | This command performs a factory reset of the device. Command Format fact resetDescription Restores the device to factory default settings. All configurations, including Smart Action, Timer, Failsafe, credentials, and other user-defined parameters, will be erased. Example fact reset Performs a device factory resetNotes The device will briefly disconnect, the LED will blink during the reset process, and the device will restart upon completion. Use this command to recover the device or reset all configurations. This action cannot be undone. |
Additional Information
Using GPIO's with switches
It is possible to read the position of a switch that is connected to a GPIO. A SPST or SPDT switch is recommended to use with GPIO’s. Push switches do maintain the contacts closed only for a very short time so using them is
discouraged. The fundamental idea of using a switch with GPIO is to have the switch cause a voltage level change at the GPIO pin when pressed. Usually this is achieved by using an external pull-up resistor along with the switch. The pull up resistor is connected between the GPIO and VDD and the switch is connected between the GPIO and ground. When the switch is not pressed, the pull-up resistor will cause the GPIO to stay at VDD voltage level. When the switch is pressed, the GPIO is short circuited to ground and stays at zero voltage. This change in voltage and thus the position of the switch can be read using “gpio read” command. Please see the recommended connection diagram below
Using relay modules with inductive loads
It is important to take additional care when using relays with inductive loads. An inductive load is pretty much anything that has a coil and works based on magnetic principles like Motors, Solenoids and transformers. Inductive loads produce back emf when the magnitude of the load current changes. The back emf can be in the order of tens or even hundreds of voltage (See this Wikipedia article http://en.wikipedia.org/wiki/Counter-electromotive_force). This effect is most severe when power is disconnected from inductive load because the rate of change of current is maximum at that point. Even though the back emf lives only for a very short time (a few milliseconds) it can cause sparks between the relay contacts and can deteriorate the contact quality over time and reduce the life span for the relays considerably.
So it is important to take countermeasures to suppress the back emf to acceptable levels to protect relay contacts.
Usually this requires connecting electronic devices in parallel with the load such that they absorb the high voltage components generated by the load. For solenoids, connecting a diode (fast switching diode is recommended) in parallel to the load (in reverse direction to the load current) is very effective. A diode used for this purpose is usually called a freewheeling diode. Please see the diagram on the right for connection details.
A capacitor with proper rating is recommended for protecting the relay contacts when a motor is used as load. The capacitor should be rated enough to withstand the back emf that is generated by the motor. Please see the diagram below for connection details.
Please note that the relay modules are NOT shipped with back emf suppression devices pre-installed. The exact kind of suppression device and the parameters of the selected device can vary depending on the load itself. Some of the parameters that affects the suppression device selection are the inductance of the load, power supply voltage, load current, physical size/structure of the load etc.. It is obvious that it is impossible for us to predict these parameters and design required back emf suppression device and incorporate that on the board. So we believe this is a task best left to the module user. There is an excellent article on designing back emf suppression on Wikipedia at http://en.wikipedia.org/wiki/Flyback_diode
FAQ
Q. I need a customized version of this product, can Numato do the customization for me?
A. Yes, we can definitely do customization but there may be minimum order requirements depending on the level of customization required. Please write to sales@numato.com for a quote.
Q. Where can I buy this product?
A. All Numato products can be ordered directly from our web store http://www.numato.com. We accept major credit cards and Paypal and ship to almost all countries with a few exceptions. We do have distributors in many countries where you can place your order. Please find the current list of distributors here.
Mechanical Dimensions




