MBMap Registry
  1. Devices
  2. Treetech
  3. DI

Treetech DI Modbus register map

Eight-input digital indicator for analog signals: measurements, two alarm relays per input, analog output, scaling and event log

  • Official
  • 76 registers
  • Modbus RTU
  • Revision 1 · 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 RTU
Unit ID
1
Serial
9600 8N2 · 9600 baud, 8 data bits, none parity, 2 stop bits
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
76 holding registers
Groups
8
Translation tables
5
Revision
1 · 2026-11-10
Firmware
1.03
Added
()
File
maps/treetech/di.mbmap.json · 21 KB · history
SHA-256
47f4f9f349cf5ad54fcc07346d75ca58f13b7322e9053ab2ce8baf49aa1f2304
Manufacturer
treetech.com.br

Sources and notes

Source: Treetech DI Mapa de Registradores, firmware 1.03

  • Optional Modbus RTU interface on RS-485, FC03, FC06 and FC16. All data is in holding registers (the document calls the memory type 40000). The document numbers registers from 1 (PLC addresses), so the addresses are 1-based (address on the wire = number minus 1).
  • Baud rate is 9600, 19200 or 38400 bit/s with 8 data bits, no parity and 2 stop bits. The document gives no factory default for the baud rate or the slave address; 9600 and 1 are assumed here.
  • The device is an eight-input analog indicator. Measurements, alarm values and scale limits are integers from -9999 to 9999 and the number of decimal places of each input (registers 28, 32, 36 ... 56) moves the decimal point, so they are given as raw values.
  • The status bits in registers 1009 and 1010 are numbered 1, 2, 4 and 2, 4, 5 in the document, which does not say whether bit 0 or bit 1 is the first. They are entered as printed: check them on a device.
  • Registers 17 and 18 are reserved and not in this map. The document is dated 2010 and the second part is the DNP 3.0 profile, which is not mapped.
  • Written from the manufacturer's document for firmware 1.03; not tested on a device.
AreaAddressNameTypeAccessUnitScaleDescription
HR 1 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 28) moves the decimal point
HR 2 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 28) moves the decimal point
HR 3 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 32) moves the decimal point
HR 4 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 32) moves the decimal point
HR 5 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 36) moves the decimal point
HR 6 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 36) moves the decimal point
HR 7 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 40) moves the decimal point
HR 8 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 40) moves the decimal point
HR 9 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 44) moves the decimal point
HR 10 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 44) moves the decimal point
HR 11 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 48) moves the decimal point
HR 12 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 48) moves the decimal point
HR 13 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 52) moves the decimal point
HR 14 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 52) moves the decimal point
HR 15 int16 RW Alarm 1 (relay RL1). Raw integer: the number of decimal places set for this input (register 56) moves the decimal point
HR 16 int16 RW Alarm 2 (relay RL2). Raw integer: the number of decimal places set for this input (register 56) moves the decimal point
HR 19 uint16 RW
HR 20 uint16 RW The document lists the languages as 1 to 4 (Portuguese, English, Spanish, and a fourth that is misspelled) but gives the range as 0 to 3, so the values are not mapped
HR 21 uint16 RW
HR 22 uint16 RW
HR 23 uint16 RW
HR 24 uint16 RW
HR 25 uint16 RW Same values as the analog output range
HR 26 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 27 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 28 uint16 RW
HR 29 uint16 RW Same values as the analog output range
HR 30 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 31 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 32 uint16 RW
HR 33 uint16 RW Same values as the analog output range
HR 34 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 35 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 36 uint16 RW
HR 37 uint16 RW Same values as the analog output range
HR 38 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 39 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 40 uint16 RW
HR 41 uint16 RW Same values as the analog output range
HR 42 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 43 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 44 uint16 RW
HR 45 uint16 RW Same values as the analog output range
HR 46 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 47 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 48 uint16 RW
HR 49 uint16 RW Same values as the analog output range
HR 50 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 51 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 52 uint16 RW
HR 53 uint16 RW Same values as the analog output range
HR 54 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 55 int16 RW Raw integer: the decimal places of this input move the decimal point
HR 56 uint16 RW
HR 57 uint16 RW
HR 58 uint16 RW
HR 59 uint16 RW Year is two digits
HR 60 uint16 RW
HR 61 uint16 RW
HR 62 uint16 RW
HR 63 uint16 RW
HR 1001 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 28) moves the decimal point
HR 1002 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 32) moves the decimal point
HR 1003 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 36) moves the decimal point
HR 1004 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 40) moves the decimal point
HR 1005 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 44) moves the decimal point
HR 1006 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 48) moves the decimal point
HR 1007 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 52) moves the decimal point
HR 1008 int16 R Range -9999 to 9999. Raw integer: the number of decimal places set for this input (register 56) moves the decimal point
HR 1009 bool bit 1 R The document prints bit number 1 and does not say whether bits are counted from 0 or 1
HR 1009 bool bit 2 R The document prints bit number 2 and does not say whether bits are counted from 0 or 1
HR 1009 bool bit 4 R The document prints bit number 4 and does not say whether bits are counted from 0 or 1
HR 1010 bool bit 2 R The document prints bit number 2 and does not say whether bits are counted from 0 or 1
HR 1010 bool bit 4 R The document prints bit number 4 and does not say whether bits are counted from 0 or 1
HR 1010 bool bit 5 R The document prints bit number 5 and does not say whether bits are counted from 0 or 1
HR 1011 uint16 R

Help improve this map