MBMap Registry
  1. Devices
  2. Unipi Technology
  3. UniPi 1.1

Unipi Technology UniPi 1.1 Modbus register map

Unipi 1.1 controller: 12 digital inputs, 8 relay outputs, 1 analog output, 2 analog inputs

  • Official
  • 58 registers
  • Revision 3 · 2026-11-10

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 TCP and RTUdefault
Unit ID
1default
TCP port
502default
Serial
9600 8E1 · 9600 baud, 8 data bits, even parity, 1 stop bit defaults
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
0-based

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

Map

Registers
50 holding registers, 8 coils
Groups
6
Revision
3 · 2026-11-10
Added
()
File
maps/unipi/unipi-1-1.mbmap.json · 10 KB · history
SHA-256
86ad40e12c10c42dcc003469690b9022254cdd0fe9cb531d1f6863a34e0fb95b
Manufacturer
www.unipi.technology

Sources and notes

Source: unipi-11-modbus-map.xlsx, Unipi knowledge base page https://kb.unipi.technology/en:hw:04-extensions:downloads

  • Configuration is not permanently saved: the Description sheet states it is set on each power-on. Defaults: counters 0, debounce 0 ms, outputs OFF.
  • Multi-register values (counters, floats) are taken as big-endian (most significant register first), as in the other Unipi maps; the spreadsheet only says bit 0 is the LSB and bit 15 the MSB.
  • The spreadsheet does not state the transport or default unit id, so the format defaults (tcp+rtu, unit 1) are kept.
  • Coils repeat the relay outputs that also appear as bits of holding register 1.
  • Analog Output 1 is documented as 'int16, 0..4000 ~ 0..10V': mapped as int16 with 0.0025 V per count and a 0-10 V write range. The unit of the analog input floats is not stated in the spreadsheet, so none is set.
  • The counter of Digital Input 12 is a uint16 (one register) in the spreadsheet; the other counters are uint32.
AreaAddressNameTypeAccessUnitScaleDescription
HR 0 bool bit 0 R
HR 0 bool bit 1 R
HR 0 bool bit 2 R
HR 0 bool bit 3 R
HR 0 bool bit 4 R
HR 0 bool bit 5 R
HR 0 bool bit 6 R
HR 0 bool bit 7 R
HR 0 bool bit 8 R
HR 0 bool bit 9 R
HR 0 bool bit 10 R
HR 0 bool bit 11 R
HR 1 bool bit 0 RW
HR 1 bool bit 1 RW
HR 1 bool bit 2 RW
HR 1 bool bit 3 RW
HR 1 bool bit 4 RW
HR 1 bool bit 5 RW
HR 1 bool bit 6 RW
HR 1 bool bit 7 RW
HR 2 int16 RW V ×0.0025 Raw 0..4000 corresponds to 0..10 V
HR 3 float32 ABCD R
HR 5 float32 ABCD R
HR 7 uint32 ABCD RW
HR 9 uint32 ABCD RW
HR 11 uint32 ABCD RW
HR 13 uint32 ABCD RW
HR 15 uint32 ABCD RW
HR 17 uint32 ABCD RW
HR 19 uint32 ABCD RW
HR 21 uint32 ABCD RW
HR 23 uint32 ABCD RW
HR 25 uint32 ABCD RW
HR 27 uint32 ABCD RW
HR 29 uint16 RW
HR 1010 uint16 RW µs ×100
HR 1011 uint16 RW µs ×100
HR 1012 uint16 RW µs ×100
HR 1013 uint16 RW µs ×100
HR 1014 uint16 RW µs ×100
HR 1015 uint16 RW µs ×100
HR 1016 uint16 RW µs ×100
HR 1017 uint16 RW µs ×100
HR 1018 uint16 RW µs ×100
HR 1019 uint16 RW µs ×100
HR 1020 uint16 RW µs ×100
HR 1021 uint16 RW µs ×100
HR 1022 uint16 RW
HR 1023 uint16 RW Resolution in bits; default 18
HR 1024 uint16 RW Resolution in bits; default 18
CO 0 bool RW
CO 1 bool RW
CO 2 bool RW
CO 3 bool RW
CO 4 bool RW
CO 5 bool RW
CO 6 bool RW
CO 7 bool RW

Help improve this map