MBMap Registry
  1. Devices
  2. Advantech
  3. ADAM-4150

Advantech ADAM-4150 Modbus register map

Isolated digital I/O module, 7 DI with counters and 8 DO with pulse output, RS485 Modbus RTU

  • Official
  • 164 registers
  • Modbus RTU
  • Revision 2 · 2026-10-17
  • Identity: model

Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.

Communication

Protocol
Modbus RTU
Unit ID
1
Serial
9600 8N1 · 9600 baud, 8 data bits, none parity, 1 stop bit
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
1-based · wire address = address − 1

Connection values are defaults: the device may be configured differently.

Map

Registers
113 holding registers, 51 coils
Groups
8
Revision
2 · 2026-10-17
Added
()
File
maps/advantech/adam-4150.mbmap.json · 24 KB · history
SHA-256
fee062137d30635877e0654d0e802fa19f659b92b98d72319b8b247fbf3b2852
Manufacturer
advantech.com

Device identity

What a tool can read to check that this map fits the connected device (SPEC.md section 4.7). Registers with a role are read like any other register.

Registers
RoleRegisterAddressTypeValues
Model Module name 1 holding 211 uint16 0x4150 = ADAM-4150

Sources and notes

Source: Advantech, "ADAM-4100 Series User's Manual", Edition 1.3, Appendix B.3 (I/O Modbus mapping table)

  • Addresses are the Modicon numbers of the manual (00001 = coil 1, 10001 = discrete input 1, 40001 = holding register 1).
  • The module ships with the ADAM ASCII protocol; the manual's appendix explains how to switch it to Modbus RTU.
  • 32-bit values (counters, pulse settings, filter and delay widths) use two registers; the manual does not give their word order or the units of the filter and delay widths.
AreaAddressNameTypeAccessUnitScaleDescription
CO 1 bool R
CO 2 bool R
CO 3 bool R
CO 4 bool R
CO 5 bool R
CO 6 bool R
CO 7 bool R
CO 17 bool W
CO 18 bool W
CO 19 bool W
CO 20 bool W
CO 21 bool W
CO 22 bool W
CO 23 bool W
CO 24 bool W
CO 33 bool RW
CO 34 bool RW Write 1 to clear the counter
CO 35 bool RW Write to clear
CO 36 bool RW Latch status; write to clear
CO 37 bool RW
CO 38 bool RW Write 1 to clear the counter
CO 39 bool RW Write to clear
CO 40 bool RW Latch status; write to clear
CO 41 bool RW
CO 42 bool RW Write 1 to clear the counter
CO 43 bool RW Write to clear
CO 44 bool RW Latch status; write to clear
CO 45 bool RW
CO 46 bool RW Write 1 to clear the counter
CO 47 bool RW Write to clear
CO 48 bool RW Latch status; write to clear
CO 49 bool RW
CO 50 bool RW Write 1 to clear the counter
CO 51 bool RW Write to clear
CO 52 bool RW Latch status; write to clear
CO 53 bool RW
CO 54 bool RW Write 1 to clear the counter
CO 55 bool RW Write to clear
CO 56 bool RW Latch status; write to clear
CO 57 bool RW
CO 58 bool RW Write 1 to clear the counter
CO 59 bool RW Write to clear
CO 60 bool RW Latch status; write to clear
CO 61 bool R
CO 62 bool R
CO 63 bool R
CO 64 bool R
CO 65 bool R
CO 66 bool R
CO 67 bool R
CO 68 bool R
HR 1 uint32 ABCD R
HR 3 uint32 ABCD R
HR 5 uint32 ABCD R
HR 7 uint32 ABCD R
HR 9 uint32 ABCD R
HR 11 uint32 ABCD R
HR 13 uint32 ABCD R
HR 15 uint32 ABCD RW ms ×0.1
HR 17 uint32 ABCD RW ms ×0.1
HR 19 uint32 ABCD RW ms ×0.1
HR 21 uint32 ABCD RW ms ×0.1
HR 23 uint32 ABCD RW ms ×0.1
HR 25 uint32 ABCD RW ms ×0.1
HR 27 uint32 ABCD RW ms ×0.1
HR 29 uint32 ABCD RW ms ×0.1
HR 31 uint32 ABCD RW ms ×0.1
HR 33 uint32 ABCD RW ms ×0.1
HR 35 uint32 ABCD RW ms ×0.1
HR 37 uint32 ABCD RW ms ×0.1
HR 39 uint32 ABCD RW ms ×0.1
HR 41 uint32 ABCD RW ms ×0.1
HR 43 uint32 ABCD RW ms ×0.1
HR 45 uint32 ABCD RW ms ×0.1
HR 47 uint32 ABCD RW 0 = continuous
HR 49 uint32 ABCD RW
HR 51 uint32 ABCD RW
HR 53 uint32 ABCD RW
HR 55 uint32 ABCD RW
HR 57 uint32 ABCD RW
HR 59 uint32 ABCD RW
HR 61 uint32 ABCD RW
HR 63 uint32 ABCD RW
HR 65 uint32 ABCD RW
HR 67 uint32 ABCD RW
HR 69 uint32 ABCD RW
HR 71 uint32 ABCD RW
HR 73 uint32 ABCD RW
HR 75 uint32 ABCD RW
HR 77 uint32 ABCD RW
HR 79 uint16 bits 0–2 RW
HR 79 bool bit 5 RW
HR 79 bool bit 6 RW
HR 79 bool bit 7 RW
HR 80 uint16 bits 0–2 RW
HR 80 bool bit 5 RW
HR 80 bool bit 6 RW
HR 80 bool bit 7 RW
HR 81 uint16 bits 0–2 RW
HR 81 bool bit 5 RW

Help improve this map