Wiren BoardDocumentation
Device manual · English

WB-MAO4

Four-channel 0–10 V / PWM analog output module

revision 108230
Covered order codes (1)
  • WB-MAO4

This page describes the latest hardware revision with the latest stable firmware. If your device runs older firmware, update it where possible (see Firmware update).
WB-MAO4 illustration
WB-MAO4 control module, version 2.0

Purpose

The 4-channel analog output module controls devices using 0–10 V signals or PWM signals with a 10 V pulse amplitude, such as servo drives, air damper actuators and valve actuators. The module is controlled by a controller or PC over RS-485 using Modbus commands.

Technical specifications

Parameter Value
Power supply
Supply voltage 9–28 V DC
Power consumption

0.3 to 2.3 W

Output channels
Number of channels 4
Output signal in analog mode 0…10 V
Output signal in PWM mode Amplitude: 10 V; maximum frequency: 24 kHz; default frequency: 1 kHz
Maximum current Rated current: 8 mA (load resistance of at least 1.3 kΩ); short-circuit current: up to 40 mA
Accuracy 2 % + 20 mV (at 25 °C), 3 % + 30 mV (from −40 to +80 °C)
Inputs
Purpose Reading digital signals from external sensors, limit switches, etc.
Input type Dry contact; inputs isolated as a group.

Input voltage: ~12 V. Current when the input is closed: ~2 mA.

Permissible voltage −20 to +40 V
Control
Control interface RS-485
Interface isolation Non-isolated
Communication protocol Modbus RTU; software-configurable address; factory settings are printed on the label
RS-485 interface parameters Software-configurable; defaults:

baud rate — 9600 bit/s; data — 8 bits; parity — none (N); stop bits — 2

Ready after power-on ~2 s
Operating conditions
Ambient air temperature −40 to +80 °C
Relative humidity Up to 95%, non-condensing
Climatic classification under GOST 15150-69 O2.1* (the designation uses the Cyrillic letter O)
Warranty 2 years
Service life 8 years
Terminal blocks and wire cross-sections
Recommended wire cross-section with insulated wire-end ferrules 0.35–1 mm2 — single ferrule; 0.35–0.5 mm2 — twin ferrule
Standard ferrule sleeve length 8 mm
Screw tightening torque 0.2 N·m
Dimensions
Width, DIN modules 2
Overall dimensions (L × W × H) 36 × 90 × 58 mm
Weight (including box) 80 g

Operating principle

The device has two output control modes:

  • analog 0–10 V: voltage is specified in millivolts (0…10 000);
  • pulse-width modulation (PWM) with a 10 V pulse amplitude and variable duty cycle, specified as % × 100 (0…10 000):
    • for a 1 % PWM duty cycle, the value is 100;
    • for a 20 % PWM duty cycle, the value is 2000.

Indicators

The module has an indicator that shows its status without connecting to a controller:

  • S (green) — Modbus communication status: lights up when low-voltage power is applied and flashes during polling over RS-485. On devices with events enabled in Fast Modbus ⚡ the indicator flashes more frequently than during sequential polling because events are polled faster. In bootloader mode, it flashes once per second; during firmware upload, it flashes rapidly. It is located beneath terminal B.

Installation

WB-MAO4 illustration
Diagram 1. WB-MAO4 installation example: controlling LED strip dimmers

Mount the device on a standard 35 mm DIN rail.

The V+ GND A B terminal block, with a 3.5 mm pitch, connects the power supply and RS-485 communication bus. Correct bus wiring is essential for reliable communication; see RS-485 bus wiring and connection.

If devices on the RS-485 bus use different power supplies, their GND terminals must be interconnected. See Grounding Wiren Board devices and connecting GND and iGND.

Digital inputs activate when connected to iGND. The current is low (~2 mA), so any suitable button or switch type can be used. Cable length and cross-section are not critical for contact detection. To reduce interference from nearby power wiring, use twisted pair and connect iGND to the second conductor of the pair. More about connecting iGND/GND terminals.

Use twisted-pair cable to connect 0–10 V signals to actuators: one conductor for the signal and the other for GND.

Installation example

An installation example for the WB-MAO4 module is shown in Diagram 1.

In this example, the module controls two LED strip dimmers with 0–10 V inputs. It also reads a switch whose logic is implemented using rules on the controller. The module is powered by the controller and communicates with it over RS-485. The dimmers use a separate power supply.

WARNING: because the negative power terminal of WB-MAO4 is not isolated from the negative output terminals, you must connect the negative terminal of the module's power supply to the negative terminal of the load's power supply using a conductor with a cross-section of at least 1.5 mm2 .

In this example, the module is powered by a Wiren Board 6 controller, so connect the negative terminal of the controller's power supply to the negative terminal of the load's power supply.

Wiren Board controller web interface

WB-MAO4 illustration
Control module in the Wiren Board controller web interface

Selecting a template

To display the device on the Devices tab of the Wiren Board controller web interface, add it automatically by scanning for Wiren Board devices on RS-485 or manually by selecting the template WB-MAO4.

Controlling the device and viewing values

The web interface allows you to control device outputs and view readings. To change the displayed channels, edit the device configuration in the wb-mqtt-serial driver settings.

Configuration

WB-MAO4 illustration
Selecting the output mode

Configuration methods

  1. Set the parameters in the Wiren Board controller web interface under Settings → Configs → Serial devices driver configuration. If these items are unavailable, check your access level.
  2. Write settings to the Modbus registers of the module from the controller console using the utility modbus-utils-rpc or modbus­_client.
  3. Without a Wiren Board controller, use the Wiren Board device web configurator or other software; see Using Wiren Board Modbus devices without a controller. You will need a computer with an interface converter: USB-RS485.

Our devices are continually improved. If settings described in this manual are missing, update the device firmware and controller software.

Analog output configuration

You can change the following parameters:

  • Outputs Mode — select 0–10 V or PWM mode.
  • PWM Frequency Factor — the PWM factor. The resulting frequency is calculated as 24 kHz / Factor.

Output control

Setting an output voltage (in 0–10 V mode) or duty cycle (in PWM mode) immediately applies that value to the corresponding output.

Outputs can also be controlled as dimmers:

  • switch them on or off;
  • set the output level as a percentage of the configured range;
  • set the rate of change of the output level.
WB-MAO4 illustration
WB-MAO4 output configuration

Output parameters:

  • Voltage at 1% dimming level (mV) — the output value corresponding to a level of 1 %.
  • Voltage at 100% dimming level (mV) — the output value corresponding to a level of 100 %.
  • Dimming level decrement rate (ms/%) / Dimming level increment rate (ms/%) — the rate at which the output signal level decreases or increases when changing from one value to another.
  • Action repeat time (ms) — continuous actions repeat at the specified interval in milliseconds.

The increase/decrease time may be zero. This disables smooth transitions and applies the level immediately.

Mapping button events to outputs

Momentary pushbutton

WB-MAO4 illustration
Selecting the channel controlled by an event
WB-MAO4 illustration
Selecting the action triggered by an event

WB-MAO4 has 3 digital inputs for buttons. Each button supports 4 press types: short, long, double, and short-then-long. This gives 12 events, each with two mapping parameters: the target output and the action type.

Output number selects the output affected by the event. Choose one output, all outputs, or none to ignore the event.

Output action selects what the event does:

  • Off;
  • On;
  • Toggle;
  • Increase level;
  • Decrease level;
  • Increase/decrease level. The action alternates each time the button is pressed.

Some combinations of events and actions have no practical meaning and are ignored. The controller driver template takes these restrictions into account.

Available event and action combinations
Press type Switch output off Switch output on Toggle output state Increase level Decrease level Increase/decrease level
Single press One / all outputs One / all outputs One output One / all outputs One / all outputs Unavailable
Long press One / all outputs One / all outputs One output One / all outputs One / all outputs One output
Double press One / all outputs One / all outputs One output One / all outputs One / all outputs Unavailable
Short-then-long press One / all outputs One / all outputs One output One / all outputs One / all outputs One output
Dimming step for single and double presses

Available from firmware 2.9.0

For increase-level and decrease-level actions assigned to a short or double press, you can specify the level adjustment step. Configure it separately for each channel and for short and double presses.

On a short or double press, the module changes the target level by the specified step. The transition is smooth and follows the settings of Dimming level increment rate (ms/%) and Dimming level decrement rate (ms/%).

Latching switch

Conventional latching switches can be used instead of push buttons. Select the Latching switch input mode. Two event types are available: switch on (closed) and switch off (open).

Output number selects the output affected by the event. Choose one output, all outputs, or none to ignore the event.

The following output actions are available:

  • On;
  • Off;
  • Toggle.

Encoder support

WB-MAO4 illustration
Connecting an encoder to WB-MAO4

Available from firmware 2.9.0

One AB quadrature (incremental) encoder can be connected to the WB-MAO4 inputs: Encoder 1 is connected to inputs 1/2. Input 3 is not part of the encoder and remains an ordinary digital input.

For each encoder input, configure Debounce time. Recommended debounce time: 2–5 ms; use 2 ms for fast rotation.

For modules manufactured before batch v2.9E, the encoder pulse rate must not exceed 20 pulses per second; otherwise counting errors may occur. We recommend encoders with up to 20 pulses per revolution and designing the control system so that rotation faster than 1 revolution per second is rare or impossible. This restriction does not apply from batch v2.9E onward.

AB encoders

WB-MAO4 illustration
AB encoder

AB encoders can control parameters such as lighting brightness.

Connect three wires: A, B, GND. Shaft position is available in the channel Encoder position and can range from −2147483648 to 2147483647. When either boundary is reached, the value wraps to the opposite boundary and counting continues.

Many encoders also have a Switch output that closes to GND when the shaft is pressed. Connect it to any free input and process it as an ordinary button.

Channel Encoder position is writable, allowing an initial position to be set.

Controlling the dimmer with an encoder

Open device settings and select the tab Encoders. Configure each encoder separately under Encoder 1.

In Encoder connection type, select AB.

Parameter Pulses per step sets how many A/B input pulses correspond to one logical encoder step.

In Controlled channel, select Control disabled or one of channels 1–4 to be controlled by encoder rotation.

Parameter Level adjustment step (%) sets the change per logical encoder step.

Parameter Behaviour below minimum level determines whether reducing the level below its configured minimum switches the channel off or retains the minimum level.

Lighting scenes

Scenes group several channels and assign actions to them. A scene can also contain a single channel.

For example, you need two lighting modes in a room:

  1. day mode — rapid switching on at full brightness / rapid switching off;
  2. night mode — slow switching on at low brightness / slow switching off.

Define 2 scenes and configure their actions:

  • Scene 1
    • when the scene is switched on: switch on and set brightness to 100 %. Brightness transition time: 10 ms/%.
    • when the scene is switched off: switch off. Brightness transition time: 10 ms/%.
  • Scene 2
    • when the scene is switched on: switch on and set brightness to 10 %. Brightness transition time: 200 ms/%.
    • when the scene is switched off: switch off. Brightness transition time: 200 ms/%.

Scene 1 now provides day mode and Scene 2 provides night mode. Scene switching can also be mapped to button presses: for example, a short press toggles Scene 1 and a double press toggles Scene 2.

Output channels with automatic switch-on

Available from firmware 2.9.0 Each output-control channel has an additional auto-on channel. It mirrors the ordinary channel, but writing a value greater than zero also switches the associated output on.

Behaviour:

  • writing > 0 — switches the output on and sets the written value;
  • Writing 0 — switches the channel off or resets its level in the same way as the ordinary channel;
  • reading returns the current value of the corresponding parameter.

Auto-on channels are useful for scenarios and external integrations: one command sets the required level without a separate write to the coil to switch the channel on.

Safety Mode

WB-MAO4 illustration
Configuring outputs when controller polling stops

Safety Mode can stop a process if control of the module is lost, for example because the RS-485 cable is severed. Account for communication loss when designing control systems.

The Safety Mode timer restarts after each successfully received and processed Modbus request. The module enters Safety Mode when the configured time expires and resumes normal operation when communication is restored. The default timeout is 10 seconds.

Each output has a configurable fail-safe state and can be configured to enter it on communication loss.

Input control behaviour can be configured:

  • Do not block — configured input control remains available.
  • Block in Safety Mode — inputs cannot control outputs during fail-safe operation.
  • Allow only in Safety Mode — configured input control is available only in Safety Mode, not during normal operation.

Output states at power-up

WB-MAO4 illustration
Configuring output behaviour at power-on

For each channel, select its power-on behaviour:

  • Switch off — after switching off, the channel can be switched on using its corresponding switch or by changing its level from 0 % to N %;
  • Restore previous state — restores the channel state before the power loss;
  • On;
  • Set level — switches the channel on and sets the specified level. Setting 0 % switches the channel off; changing the level from 0 % to N % switches it on.

Modbus operation

Configuring Modbus modules and updating firmware

Wiren Board devices use Modbus RTU. The physical connection uses the RS-485 interface.

interface. All main commands for reading and writing one or multiple registers are supported. See the list in the Modbus protocol description.

The module can be configured:

Default port settings

Value
default
Parameter name
in the web interface
Parameter
9600 Baud rate Baud rate, bit/s
8 Data bits Number of data bits
None Parity Parity
2 Stop bits Number of stop bits

In current firmware, setting Stop bits is optional: the device also operates correctly when its number of stop bits differs from the Modbus master setting.

For a faster response, we recommend increasing the baud rate to 115200 bit/s; see Communication parameter settings.

Modbus address

WB-MAO4 illustration
Factory-assigned Modbus address. Left: label on the device cover. Right: label on the side or underside of the device.

Each device on the bus must have a unique address from 1 to 247. The factory-assigned address is printed on labels on the enclosure (top cover, side or underside). Devices in a production batch are assigned different addresses, so devices in one order will usually have different addresses.

For instructions on finding, changing or resetting the address, see Wiren Board device Modbus address.

Remote smooth level adjustment

Available from firmware 2.9.0

Without this feature, the master must implement smooth remote level adjustment by writing a new level to the register every few milliseconds. This adds traffic to the RS-485 bus and lengthens the polling cycle for other devices. With Auto-Change , the master writes an action to a Modbus register once, and the module then changes the level periodically, just as when a local button is held down.

Action register values:

  • 0 — stop smooth adjustment;
  • 1 — decrease the level;
  • 2 — increase the level;
  • 3 — alternate between decreasing and increasing the level. The initial direction is opposite to the last local long-press direction on this channel.

Smooth adjustment stops when the level reaches 1 % or 100 %, when the channel is switched off through its coil register, or when a lighting scene changes this channel's level. On stopping, the module resets the action register to 0.

The adjustment speed follows the local button action-repeat setting, which also determines adjustment while an input is held.

Fast Modbus extension

How fast is Fast Modbus?

Fast Modbus extends standard Modbus with rapid discovery of Wiren Board devices on RS-485 and event polling.

These features are enabled by a special command from the master, so Wiren Board devices remain compatible with third-party equipment.

Not every register supports event generation. Check the register map: event-capable registers are marked with ⚡. See Fast Modbus.

Modbus register map

Description

Legend
RO / RW Read only / Read/Write
Shown in bold Default register value
xN Multiply the register value by this factor to obtain the value in the stated units.

If omitted, assume 1

⚡ This register supports data transmission through Fast Modbus events.
FW Firmware version that introduced the register. Blank means it has always been available.
Error: Value on error
Grey cell Service register: its purpose, format and contents may change in newer firmware versions
Device Modbus registers
Address Register parameters Channel Description Values FW
Dec Hex Type Access Format
Output control by setting the voltage in millivolts or the PWM duty cycle
0 0x0000 Holding RW u16 Channel 1 Analog mode: channel voltage in millivolts
PWM mode: duty cycle in steps of 0.01%
0 - 10000 (0)
1 0x0001 Channel 2
2 0x0002 Channel 3
3 0x0003 Channel 4
Output parameters
9 0x0009 Holding RW u16 All channels Output PWM frequency in mode 0 1 - 240 (24)
F = 24 kHz / value
10 0x000A Holding RW u16 All channels Output mode
0 — PWM mode with a 10 V amplitude
1 — analog 0–10 V mode
Output control through the dimmer
16 0x0010 Coil ⚡ RW u8 Channel 1 Channel state (off/on) 0 - 1 (0) 2.4.0
17 0x0011 Channel 2
18 0x0012 Channel 3
19 0x0013 Channel 4
16 0x0010 Holding ⚡ RW u16 Channel 1 Level in percent % 0 - 100 (0) 2.4.0
17 0x0011 Channel 2
18 0x0012 Channel 3
19 0x0013 Channel 4
20 0x0014 Holding ⚡ RW u16 Channel 1 Auto-on level channel. Writing a value > 0 switches on the associated channel and sets its level; writing 0 switches off its coil register 0 - 100 (0) 2.9.0
21 0x0015 Channel 2
22 0x0016 Channel 3
23 0x0017 Channel 4
24 0x0018 Holding ⚡ RW u16 Channel 1 Remote smooth channel level adjustment 0 - stop
1 - decrease
2 - increase
3 - increase/decrease
2.9.0
25 0x0019 Channel 2
26 0x001A Channel 3
27 0x001B Channel 4
912 0x0390 Holding RW u16 Channel 1 Output voltage at a level of 1 %. From FW 2.8.0, the default value is 100 (previously 0) 0 - 10000 (100) 2.4.0
913 0x0391 Channel 2
914 0x0392 Channel 3
915 0x0393 Channel 4
928 0x03A0 Holding RW u16 Channel 1 Output voltage at a level of 100 % 0 - 10000 (10000) 2.4.0
929 0x03A1 Channel 2
930 0x03A2 Channel 3
931 0x03A3 Channel 4
944 0x03B0 Holding RW u16 Channel 1 During smooth transitions, the level decreases by 1% in the specified time (ms). If the time is zero, the level decreases immediately 0 - 500 (20) 2.4.0
945 0x03B1 Channel 2
946 0x03B2 Channel 3
947 0x03B3 Channel 4
960 0x03C0 Holding RW u16 Channel 1 During smooth transitions, the level increases by 1% in the specified time (ms). If the time is zero, the level increases immediately 0 - 500 (20) 2.4.0
961 0x03C1 Channel 2
962 0x03C2 Channel 3
963 0x03C3 Channel 4
Button/switch event configuration
416 0x01A0 Holding RW u16 Input 1 Input operating mode
This register is unavailable before firmware 2.5.0; all inputs operate in push-button mode
0 - pushbutton
1 — latching switch
2.5.0
417 0x01A1 Input 2
418 0x01A2 Input 3
768 0x0300 Holding RW u16 Input 1 Output on which the short-press action is performed

0 - ignore event
1 — perform the action on output 1
2 — perform the action on output 2
3 — perform the action on output 3
4 — perform the action on output 4
100 — perform the action on all outputs simultaneously
32 — perform the action on scene 1
33 — perform the action on scene 2
...
39 — perform the action on scene 8

2.4.0
769 0x0301 Input 2
770 0x0302 Input 3
784 0x0310 Holding RW u16 Input 1 Output affected by a long press 2.4.0
785 0x0311 Input 2
786 0x0312 Input 3
800 0x0320 Holding RW u16 Input 1 Output affected by a double press 2.4.0
801 0x0321 Input 2
802 0x0322 Input 3
816 0x0330 Holding RW u16 Input 1 Output affected by a short followed by a long press 2.4.0
817 0x0331 Input 2
818 0x0332 Input 3
704 0x02C0 Holding RW u16 Input 1 Output on which the action is performed in the off position

Select the Latching switch input mode

2.5.0
705 0x02C1 Input 2
706 0x02C2 Input 3
720 0x02D0 Holding RW u16 Input 1 Output on which the action is performed in the on position

Select the Latching switch input mode

2.5.0
721 0x02D1 Input 2
722 0x02D2 Input 3
832 0x0340 Holding RW u16 Input 1 Short-press action 0 — switch the output off
1 — switch the output on
2 — toggle the output
3 — decrease the level
4 — increase the level
5 — increase/decrease the level
2.4.0
833 0x0341 Input 2
834 0x0342 Input 3
848 0x0350 Holding RW u16 Input 1 Long-press action 2.4.0
849 0x0351 Input 2
850 0x0352 Input 3
864 0x0360 Holding RW u16 Input 1 Double-press action 2.4.0
865 0x0361 Input 2
866 0x0362 Input 3
880 0x0370 Holding RW u16 Input 1 Short-then-long-press action 2.4.0
881 0x0371 Input 2
882 0x0372 Input 3
736 0x02E0 Holding RW u16 Input 1 Action in the OFF position

Select the Latching switch input mode

2.5.0
737 0x02E1 Input 2
738 0x02E2 Input 3
752 0x02F0 Holding RW u16 Input 1 Action in the ON position

Select the Latching switch input mode

2.5.0
753 0x02F1 Input 2
754 0x02F2 Input 3
896 0x0380 Holding RW u16 Output 1 Continuous action repeat period 5 - 500 (20) 2.4.0
897 0x0381 Output 2
898 0x0382 Output 3
899 0x0383 Output 4
Input states and press counters
0 0x0000 Discrete Input RO bool Input 1 State

0 — open,
1 - closed

1 0x0001 Input 2
2 0x0002 Input 3
32 0x0020 Input ⚡ RO u16 Input 1 Contact closure counter 0 − 65535
with wraparound
33 0x0021 Input 2
34 0x0022 Input 3
464 0x01D0 Input ⚡ RO u16 Input 1 Short press counter 0 − 65535
with wraparound
2.3.0
465 0x01D1 Input 2
466 0x01D2 Input 3
480 0x01E0 Input ⚡ RO u16 Input 1 Long press counter 0 − 65535
with wraparound
2.3.0
481 0x01E1 Input 2
482 0x01E2 Input 3
496 0x01F0 Input ⚡ RO u16 Input 1 Double press counter 0 − 65535
with wraparound
2.3.0
497 0x01F1 Input 2
498 0x01F2 Input 3
512 0x0200 Input ⚡ RO u16 Input 1 Short-then-long press counter 0 − 65535
with wraparound
2.3.0
513 0x0201 Input 2
514 0x0202 Input 3
Press type detection
1100 0x044C Holding RW u16 Input 1 Long press time

A press lasting longer than this value is considered long

ms
500 – 5000 (1000)
2.3.0
1101 0x044D Input 2
1102 0x044E Input 3
1140 0x0474 Holding RW u16 Input 1 Second press waiting time

If no second press occurs within this time, the press is treated as a single press. 0 disables all press types except short and long presses

ms
0 – 2000 (300)
2.3.0
1141 0x0475 Input 2
1142 0x0476 Input 3
1160 0x0488 Holding RW u16 Input 1 Debounce time

Must be 5–10 times shorter than the second-press waiting time. If double presses are disabled, any value can be used. For an encoder, 2–5 ms is recommended.

ms
2 – 2000 (50)
2.3.0
1161 0x0489 Input 2
1162 0x048A Input 3
Short-press dimming step
1200 0x04B0 Holding RW u16 Input 1 Level adjustment step for the controlled channel on a short press. Applies to increase-level and decrease-level actions %
1 – 100 (1)
2.9.0
1201 0x04B1 Input 2
1202 0x04B2 Input 3
1220 0x04C4 Holding RW u16 Input 1 Level adjustment step for the controlled channel on a double press. Applies to increase-level and decrease-level actions %
1 – 100 (1)
2.9.0
1221 0x04C5 Input 2
1222 0x04C6 Input 3
Safety Mode
8 0x0008 Holding RW u16 Communication loss timeout before entering safe mode s
1 - 65534 (10)
2.5.0
640 0x0280 Holding RW u16 Input 1 Input control in Safety Mode

0 - do not block
1 - block in safe mode
2 - allow only in safe mode

2.5.0
641 0x0281 Input 2
642 0x0282 Input 3
648 0x0288 Holding RW u16 Channel 1 Channel action on entering Safety Mode

0 - do nothing
1 - switch off
2 - switch on
3 — set the level

2.5.0
649 0x0289 Channel 2
650 0x028A Channel 3
651 0x028B Channel 4
656 0x0290 Holding RW u16 Channel 1 Channel level on entering Safety Mode (only if action 3 is selected). From FW 2.8.0, a level of 0% can be set to switch the channel off. A level > 0% switches it on %
0 - 100 (50)
2.5.0
657 0x0291 Channel 2
658 0x0292 Channel 3
659 0x0293 Channel 4
Dimmer power-on behaviour
664 0x0298 Holding RW u16 Channel 1 Channel action at dimmer power-on

0 - switch off
1 - restore previous state
2 - switch on
3 — set the level

2.5.0
665 0x0299 Channel 2
666 0x029A Channel 3
667 0x029B Channel 4
672 0x02A0 Holding RW u16 Channel 1 Channel level when power is applied to the dimmer (only if action 3 is selected). From FW 2.8.0, a level of 0% can be set to switch the channel off. A level > 0% switches it on %
0 - 100 (50)
2.5.0
673 0x02A1 Channel 2
674 0x02A2 Channel 3
675 0x02A3 Channel 4
Lighting scenes
32 0x0020 Coil ⚡ RW bool Scene 1 Scene lighting control

0 — scene lighting off
1 — scene lighting on

0, 1 (0) 2.5.0
33 0x0021 Scene 2
34 0x0022 Scene 3
35 0x0023 Scene 4
36 0x0024 Scene 5
37 0x0025 Scene 6
38 0x0026 Scene 7
39 0x0027 Scene 8
1264 0x04F0 Holding RW u16 Scene 1 Condition for scene lighting to be on

0 — scene lighting is on if at least one channel used in the scene is on
1 — scene lighting is on if all channels used in the scene are on

0, 1 (0) 2.5.0
1265 0x04F1 Scene 2
1266 0x04F2 Scene 3
1267 0x04F3 Scene 4
1268 0x04F4 Scene 5
1269 0x04F5 Scene 6
1270 0x04F6 Scene 7
1271 0x04F7 Scene 8
The following register addresses configure scene 1. For other scenes, add (scene_number - 1) * 64. scene_number ranges from 1 to 8
1280 0x0500 Holding RW u16 Channel 1 Channel action when scene lighting is switched on

0 — do nothing; the channel is not used in the scene
2 — switch on without changing the level
3 — switch on and set the level

0, 2, 3 (0) 2.5.0
1281 0x0501 Channel 2
1282 0x0502 Channel 3
1283 0x0503 Channel 4
1288 0x0508 Holding RW u16 Channel 1 Channel transition time when scene lighting is switched on ms/%
0 - 500 (20)
2.5.0
1289 0x0509 Channel 2
1290 0x050A Channel 3
1291 0x050B Channel 4
1296 0x0510 Holding RW u16 Channel 1 Channel level to apply when scene lighting is switched on, if the corresponding channel action is selected %
1 - 100 (50)
2.5.0
1297 0x0511 Channel 2
1298 0x0512 Channel 3
1299 0x0513 Channel 4
1312 0x0520 Holding RW u16 Channel 1 Channel action when scene lighting is switched off

0 — do nothing; the channel is not used in the scene
1 - switch off
3 — change the level

0, 1, 3 (0) 2.5.0
1313 0x0521 Channel 2
1314 0x0522 Channel 3
1315 0x0523 Channel 4
1320 0x0528 Holding RW u16 Channel 1 Channel transition time when scene lighting is switched off ms/%
0 - 500 (20)
2.5.0
1321 0x0529 Channel 2
1322 0x052A Channel 3
1323 0x052B Channel 4
1328 0x0530 Holding RW u16 Channel 1 Channel level to apply when scene lighting is switched off, if the corresponding channel action is selected %
1 - 100 (50)
2.5.0
1329 0x0531 Channel 2
1330 0x0532 Channel 3
1331 0x0533 Channel 4
Encoder support
364 0x016C Input ⚡ RO u16 Encoder Encoder step counter, accounting for the Pulses per step parameter 0 - 65535 2.9.0
368 0x0170 Holding RW s32 Encoder Encoder position in pulses. Writable to set an initial value −2147483648 - 2147483647 (0)
376 0x0178 Holding RW u16 Encoder Encoder connection type.

When connecting an encoder, reduce input debounce time (registers 1160–1162) to 2–5 ms

0 - unused
1 - AB type
384 0x0180 Holding RW u16 Encoder Pulses per logical encoder step 1 - 65535 (4)
388 0x0184 Holding RW u16 Encoder Controlled channel 0 - control disabled
1 - channel 1
2 - channel 2
3 - channel 3
4 - channel 4
392 0x0188 Holding RW u16 Encoder Controlled channel level step %
1 - 100 (1)
396 0x018C Holding RW u16 Encoder Behaviour below minimum level 0 - switch the channel off
1 — retain the minimum level
Service registers
90 0x005A Holding RW u16 Channel 1 Service register: raw duty cycle 0 - 2000 (0)
91 0x005B Channel 2
92 0x005C Channel 3
93 0x005D Channel 4
Connection settings, firmware version and other service registers
Address Register parameters Description Values Note
Dec Hex Type Access Format
Connection settings
110 0x006E Holding RW u16 RS-485 baud rate.
RS-485 connection parameter settings
×100, baud
12 — 1200 bit/s,
24 — 2400 bit/s,
48 — 4800 bit/s,
96 — 9600 bit/s,
192 — 19200 bit/s,
384 — 38400 bit/s,
576 — 57600 bit/s,
1152 — 115200 bit/s
111 0x006F Holding RW u16 RS-485 parity setting 0 — no parity (none),
1 — odd,
2 — even
112 0x0070 Holding RW u16 RS-485 stop bits
More about ignoring stop bits
1, 2
128 0x0080 Holding RW u16 Modbus device address (details)
Device model and firmware version
200-205 0x00C8 - 0x00CD Input RO string Device model
206-219 0x00CE - 0x00DB Input RO string Device model extension. Read 20 registers (200–219) to obtain the device model Only in firmware versions that support Fast Modbus
220-244 0x00DC - 0x00F4 Input RO string Firmware build commit hash and branch name (2 characters per register)
250-265 0x00FA - 0x0109 Input RO string Firmware version
266-269 0x010A - 0x010D Input RO u64 Serial number extension
270-271 0x010E - 0x010F Input RO u32 Serial number
290-301 0x0122 - 0x012D Input RO string Firmware signature
320 0x0140 Input RO u16 Firmware version in numeric format (details) MAJOR Only in firmware versions that support Fast Modbus
321 0x0141 MINOR
322 0x0142 PATCH
323 0x0143 s16 SUFFIX
324-325 0x0144 - 0x0145 Input RO u32 Firmware version in numeric format Only in firmware versions that support Fast Modbus
326-327 0x0146 - 0x0147 Input RO u32 Firmware version in big-endian format Only in firmware versions that support Fast Modbus
Other information
104-105 0x0068 - 0x0069 Input RO u32 Uptime since boot seconds
120 0x0078 Holding RW u16 Reboot device without saving state Any non-zero value reboots the device
129 0x0081 Holding RW u16 Enter firmware update mode for 2 minutes Any non-zero value enters firmware update mode
330-337 0x014A - 0x0151 Input RO string Bootloader version
130 0x0082 Holding RW u16 Disable Status LED 0 — enabled
1 — disabled
131 0x0083 Holding RW u16 Enter firmware update mode using the current communication settings.
To check whether the firmware and bootloader support this feature, read this register. If reading succeeds and returns 0, the feature is supported.
Writing 1 enters firmware update mode From firmware version 2.4.4
113 0x0071 Holding RW u16 Delay before sending a response to a Modbus request ms
0…254 (0)
Only in firmware versions that support Fast Modbus
114 0x0072 Holding RW u16 Continuous reading across register gaps 0 — disabled
1 — enabled
2 — enabled persistently across reboots
Only in firmware versions that support Fast Modbus
121 0x0079 Input RO u16 Current supply voltage mV
122 0x007A Input RO u16 Minimum supply voltage since boot, without averaging mV
125 0x007D Input RO u16 Current supply voltage, without averaging mV
119 0x0077 Input RO u16 Minimum microcontroller supply voltage since boot, before averaging mV
123 0x007B Input RO u16 Microcontroller supply voltage mV
124 0x007C Input RO s16 Internal microcontroller temperature x0.1, °C
304-319 0x0130-0x013F Input RO string Device batch number.

Available only on devices manufactured from 21 January 2026.

From firmware version 2.7.0
65402 0xFF7A Holding RW u16 Reset device settings to defaults. Communication settings are retained.
The device reboots after the reset.
Writing 1 resets the settings From firmware version 2.6.3
64256-64383 0xFB00-0xFB7F Input RO u16 FlashFS: free space per page bytes From firmware version 2.7.0
64384-64511 0xFB80-0xFBFF Input RO u16 FlashFS: total size of current files per page bytes
64512-64639 0xFC00-0xFC7F Input RO u16 FlashFS: page fragmentation 0…100 %
0 — all data is current,
100 — no current data
64640-64767 0xFC80-0xFCFF Input RO u16 FlashFS: page erase counter
65504 0xFFE0 Input RO u16 Maximum stack usage bytes
0 — stack corrupted
From firmware version 2.7.0
65505 0xFFE1 Input RO u16 Free RAM bytes
65506 0xFFE2 Input RO u16 Used RAM bytes
65507 0xFFE3 Input RO u16 Stack size bytes
65508 0xFFE4 Input RO u16 Cause of last MCU reset 1 — LPWR,
2 — WWDG,
3 — IWDG,
4 — SFT,
5 — POR,
6 — PIN,
7 — OBL,
8 — V18PWR
From firmware version 2.7.0
65509 0xFFE5 Input RO u32 Firmware update counter From firmware version 2.7.0
65511 0xFFE7 Input RO u16 MCU memory capacity High byte: flash capacity code; capacity in KB = 16 × 2code;
Low byte: RAM capacity in KB.
Example: 0x0208 (520) — 64 KB flash, 8 KB RAM
From firmware version 2.10.6

Firmware updates and resetting settings

Wiren Board devices support firmware updates over Modbus. This allows bugs to be fixed at the installation site and, where technically possible, new features to be added. Settings stored in the device are retained during a firmware update.

Instructions:

New firmware releases are listed in the device firmware changelog.

Known issues

Check the hardware batch and firmware version before applying a workaround.

IssueAffected devicesResolution
ERRMAO0001: the output may fail to hold 0 V or other low voltages when current flows into the output.Batches v2.2–v2.4B inclusive.Fixed in batch v2.4B/1 (21 June 2022). Contact sales or technical support for a warranty replacement.
ERRMAO0002: outputs start in PWM mode even when analog mode is configured.Firmware 2.3.0–2.4.0 inclusive.Update to firmware 2.4.1 or later. Switching to PWM and then back to analog mode works temporarily, but the problem returns after a restart.
ERRMAO0003: changing the minimum or maximum threshold while a channel is on produces an incorrect level.Firmware 2.4.0–2.4.2 inclusive.Fixed in firmware 2.4.3 (27 September 2023). Writing a new brightness value restores correct operation.
ERRMAO0004: mixing direct millivolt control and percentage control can produce a sudden voltage jump before a smooth transition.Firmware 2.4.0–2.6.2 inclusive.Use only one control method, or update to firmware 2.6.3 or later (fixed on 14 April 2025).
ERRMAO0005: incorrect factory output mode and PWM frequency.Batches 2.8D, 2.8D/1, 2.8E and some devices in batch 2.8C.Set analog mode and 1 kHz in the web interface, or write 1 (0x0001) to holding register 10 (0x000A) and 24 (0x0018) to register 9 (0x0009). Fixed from batch v2.8E/1.
ERRMAO0006: impulse interference on outputs can cause significant output-voltage errors.All batches before v2.9.Fixed from batch v2.9. In 0–10 V mode, fit a 47 µF, 16 V electrolytic capacitor across each output. In PWM mode, replace the device with batch v2.9 or later.

For firmware updates and recovery, see Modbus firmware service.

Hardware revisions


The batch number is printed on a label on the side of the enclosure or on the PCB.

Revision Batches Release date Changes from the previous revision
2.9 v2.9E - ... 08.2026 - ...
  • Input RC filter capacitance reduced from 2.2 µF to 22 nF. Inputs accept more than 20 pulses per second, allowing fast encoder rotation
2.9 v2.9C, v2.9C/2, v2.9D, v2.9D/1 02.2026 - 08.2026
  • Batch using enclosures with a matte surface
2.9 v2.9A, v2.9B, v2.9C/1 - ... 07.2025 - ...
  • AT24C02M5/TR EEPROM removed; minor internal changes to improve interference immunity.
2.8 v2.8E/1, v2.8E/2, v2.8D/2, v2.8D/3 04.2025 - 07.2025
  • Incorrect output mode and PWM frequency fixed: ERRMAO0005
2.8 v2.8A, v2.8B, v2.8C, v2.8D, v2.8D/1, v2.8E 12.2023 - 05.2025
  • LDO replaced with a more accurate model: RS3007-3.3AYF3 instead of AP2120N-3.3
2.7 v2.7A, v2.7A/2, v2.7B, v2.7B/1, v2.7C, v2.7C/1, v2.7C/2 03.2023 - 10.2023
  • Minor internal changes
2.6 v2.6A, v2.6B 11.2022 - 01.2023
  • Serial number format changed following an EEPROM chip change
2.5 v2.5A, v2.5B, v2.5C 06.2022 - 11.2022
  • TPS60403 replaces LM2776 in the voltage converter
2.4 v2.4A - v2.4B, v2.4B/1 08.2021 - 06.2022
  • Improved protection of the module's output stages
  • GD32 microcontroller
  • ERRMAO0001 fixed in v2.4B/1
2.2 v2.2D 07.2021
  • Output current increased to reduce the effect of the load at 10 V
2.2 v2.2A - v2.2C 10.2020 - 06.2021
  • Added a voltage converter to improve the outputs' ability to pull down to 0 V
2.0 v2.0A - v2.0B 06.2020 - 09.2020
  • DIN-rail enclosure with removable DEGSON terminal blocks and a voltage converter for the outputs
1.0-1.1 - 2016
  • Unenclosed prototype in heat-shrink tubing

Images and drawings

Revision 108230.