Treetech AVR Modbus register map
Voltage regulator relay for transformer tap changers: tap position, load voltage, current, power, regulation state, alarms, relays and maintenance counters
- Official
- 210 registers
- Modbus RTU
- Revision 1 · 2026-11-10
- Identity: serial number
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
- 0-based
Connection values are defaults: the device may be configured differently.
Map
- Registers
- 54 holding registers, 40 input registers, 20 coils, 96 discrete inputs
- Groups
- 12
- Translation tables
- 14
- Revision
- 1 · 2026-11-10
- Firmware
- 1.02 r1
- Added
- ()
- File
- maps/treetech/avr.mbmap.json · 36 KB · history
- SHA-256
- 1fd1a9d336a6431eff7181d0502830981bd28ea08b9e23d49a2272dc09860909
- Manufacturer
- treetech.com.br
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.
| Role | Register | Address | Type | Values |
|---|---|---|---|---|
| Serial number | Serial number | input 45000 | uint32 ABCD |
Sources and notes
- AVR - Relé Regulador de Tensão: Mapa de Protocolos de Comunicação (MAP-103) · version 1.00, 2025-08-18 section 2 (Modbus); linked in issue #153
Source: Treetech AVR Mapa de Protocolos de Comunicação MAP-103, rev. 1.00
- Modbus RTU on RS-485, FC01 to FC06, FC15 and FC16. Addresses are 0-based, as sent on the wire.
- Baud rate is selectable (4800 to 115200 bit/s), 8 data bits, no parity, 1 or 2 stop bits (detected automatically). The document gives no factory default for the baud rate or the address; 9600 and 1 are assumed here.
- The document lists every value as a 16-bit word without stating a scale. Scales are applied where the documented range makes them clear (frequency, angles, power factor, VT voltage) or where the TMV / SDV / SDT document (MAP-013) lists the same register with an engineering range; those descriptions say so. The line current stays raw.
- Left out: the regulation sets (registers 20100 to 20620 and coils 20100 to 20601), the relay-to-alarm association coils, the password and mass-memory registers, the 48-bit timestamp, the tap changer rated current (21305, whose range differs from the TMV document) and the squared-current limits in 21404 to 21408.
- The document was written for firmware 1.02 r1. Written from that document; this map has not been tested on a device.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| HR | 300 | uint16 | RW | Number of taps the tap changer has | |||
| HR | 301 | uint16 | RW | ||||
| HR | 302 | uint16 | RW | ohm | ×0.1 | Range 47 to 200, read as tenths (the TMV document lists the same register as 4.7 to 20) | |
| HR | 303 | uint16 | RW | s | Time the tap changer takes for a complete tap change | ||
| HR | 304 | uint16 | RW | Counted from the start of the measuring range | |||
| HR | 305 | uint16 | RW | ||||
| HR | 306 | uint16 | RW | ||||
| HR | 307 | uint16 | RW | ||||
| HR | 308 | uint16 | RW | ||||
| HR | 309 | uint16 | RW | ||||
| HR | 310 | uint16 | RW | ||||
| HR | 311 | uint16 | RW | ||||
| HR | 312 | uint16 | RW | ||||
| HR | 313 | uint16 | RW | ||||
| HR | 314 | uint16 | RW | ||||
| HR | 315 | uint16 | RW | ||||
| HR | 316 | uint16 | RW | ||||
| HR | 317 | int16 | RW | °C | |||
| HR | 318 | int16 | RW | °C | |||
| HR | 320 | uint16 | RW | ||||
| HR | 400 | uint16 | RW | ||||
| HR | 500 | uint16 | RW | ||||
| HR | 501 | uint16 | RW | ||||
| HR | 502 | uint16 | RW | Applied with the key in register 505 | |||
| HR | 503 | uint16 | RW | ms | |||
| HR | 504 | uint16 | RW | ms | |||
| HR | 506 | uint16 | RW | ||||
| HR | 507 | uint16 | RW | ||||
| HR | 508 | uint16 | RW | Applied with the key in register 511 | |||
| HR | 509 | uint16 | RW | ms | |||
| HR | 510 | uint16 | RW | ms | |||
| HR | 20000 | uint16 | RW | % | |||
| HR | 20001 | uint16 | RW | s | |||
| HR | 20002 | uint16 | RW | % | |||
| HR | 20003 | uint16 | RW | s | |||
| HR | 20004 | uint16 | RW | % | |||
| HR | 20005 | uint16 | RW | s | |||
| HR | 20006 | uint16 | RW | ||||
| HR | 20007 | uint16 | RW | ||||
| HR | 20008 | uint16 | RW | ||||
| HR | 20009 | uint16 | RW | ||||
| HR | 20010 | uint16 | RW | s | |||
| HR | 21100 | uint16 | RW | ||||
| HR | 21101 | uint16 | RW | MVA | ×0.1 | Range 0 to 9999, read as tenths (as in the TMV document) | |
| HR | 21102 | uint16 | RW | kA | ×0.01 | Range 1 to 65535, read as hundredths (as in the TMV document) | |
| HR | 21103 | uint16 | RW | ||||
| HR | 21104 | uint16 | RW | ||||
| HR | 21200 | uint16 | RW | Attempts before the tap changer regulation failure alarm | |||
| HR | 21201 | uint16 | RW | ||||
| HR | 21303 | uint16 | RW | days | Days used for the average number of operations | ||
| HR | 21304 | uint16 | RW | days | |||
| HR | 21310 | uint16 | RW | ||||
| HR | 21400 | uint32 ABCD | RW | ||||
| HR | 21402 | uint32 ABCD | RW | ||||
| IR | 0 | uint16 | R | ||||
| IR | 300 | int16 | R | Range -49 to 49 | |||
| IR | 301 | int16 | R | ||||
| IR | 302 | int16 | R | ||||
| IR | 303 | int16 | R | ||||
| IR | 304 | uint16 | R | ||||
| IR | 20000 | int16 | R | % | ×0.1 | Scale from the TMV document, which lists the same register as -3276.8 to 3276.7 | |
| IR | 20001 | int16 | R | MW | ×0.1 | Scale from the TMV document | |
| IR | 20002 | int16 | R | MVAR | ×0.1 | Scale from the TMV document | |
| IR | 20003 | int16 | R | MVA | ×0.1 | Scale from the TMV document | |
| IR | 20004 | uint16 | R | % | ×0.1 | Range 0 to 5000, read as tenths (as in the TMV document) | |
| IR | 20005 | uint16 | R | V | ×0.1 | Range 0 to 2400; the 0.1 scale is read from that range | |
| IR | 20006 | uint16 | R | A | ×0.01 | Range 0 to 1500, read as hundredths (as in the TMV document) | |
| IR | 20007 | uint16 | R | ° | ×0.1 | Range 0 to 3599, read as tenths of a degree | |
| IR | 20008 | uint16 | R | Hz | ×0.01 | Range 0 to 6200, read as hundredths of a hertz | |
| IR | 20009 | uint16 | R | kV | ×0.01 | Read as hundredths (as in the TMV document) | |
| IR | 20010 | uint16 | R | kV | ×0.01 | Read as hundredths (as in the TMV document) | |
| IR | 20011 | uint16 | R | A | Raw value; this document says A, while the TMV document lists the same register as 0 to 6553.5 kA | ||
| IR | 20012 | uint16 | R | ×0.001 | Range 0 to 1000, read as thousandths | ||
| IR | 20013 | uint16 | R | % | Raw value; the document gives no scale | ||
| IR | 20014 | uint16 | R | ° | ×0.1 | Range 0 to 3599, read as tenths of a degree | |
| IR | 20015 | uint16 | R | Range 1 to 10 | |||
| IR | 21300 | uint16 | R | ops/day | ×0.1 | Read as tenths (as in the TMV document) | |
| IR | 21301 | uint16 | R | days | |||
| IR | 21302 | uint16 | R | x10³ pu²/day | ×0.1 | Read as tenths (as in the TMV document) | |
| IR | 21303 | uint16 | R | days | |||
| IR | 45000 | uint32 ABCD | R | ||||
| IR | 45002 | uint16 | R | Lower board | |||
| IR | 45003 | uint16 | R | Lower board | |||
| IR | 45004 | uint16 | R | Lower board | |||
| IR | 45005 | uint16 | R | Lower board | |||
| IR | 45006 | uint16 | R | ||||
| IR | 45007 | uint16 | R | ||||
| IR | 45100 | int16 | R | h | |||
| IR | 45101 | uint16 | R | ||||
| IR | 45102 | uint16 | R | ||||
| IR | 45103 | uint16 | R | ||||
| IR | 45104 | uint16 | R | ||||
| IR | 45105 | uint16 | R | ||||
| IR | 45106 | uint16 | R | ||||
| CO | 1 | bool | W | Write 1 to reset | |||
| CO | 2 | bool | W | Write 1 to reset | |||
| CO | 3 | bool | W | Write 1 to reset | |||
| CO | 4 | bool | W | Write 1 to reset | |||
| CO | 100 | bool | RW | ||||
| CO | 101 | bool | RW |
No registers match
Try part of the name, an address (decimal or 0x hex) or clear the filters.
Help improve this map
- I tested it on a deviceReport whether it worked, even if you did not write the map.
- Suggest a correctionEdit the file on GitHub; it opens a pull request.
- Report a problemA wrong address, type, scale or byte order.
- Read the formatWhat each key of the file means (SPEC.md).