Accuenergy Acuvim-L Modbus register map
Also covers Acuvim-AL, Acuvim-BL, Acuvim-CL, Acuvim-DL, Acuvim-EL, Acuvim-KL
Acuvim-L series multifunction power meters (AL, BL, CL, DL, EL, KL), RS485 Modbus RTU
- Official
- 555 registers
- Modbus RTU
- Revision 2 · 2026-10-17
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 8E1 · 9600 baud, 8 data bits, even 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
- 555 holding registers
- Groups
- 13
- Revision
- 2 · 2026-10-17
- Added
- ()
- File
- maps/accuenergy/acuvim-l.mbmap.json · 98 KB · history
- SHA-256
- 35852483fbc64e8fba8aa621739667288f617c24385a6848d23e1a36ff60f82a
- Manufacturer
- accuenergy.com
Sources and notes
- Acuvim-L Series Power Meter User's Manual · version 1030E2202 V2.0.3, 2025-12 section 4.5, tables 4-26 to 4-40
Source: Accuenergy, "Acuvim-L Series Power Meter User's Manual" 1030E2202, V2.0.3 (December 2025), section 4.5
- Acuvim-L series (AL, BL, CL, DL, EL, KL); not every model has every value (THD and harmonics need the higher models, TOU the EL/KL).
- FC03 reads, FC16 writes; big endian, high word first. The primary values from 0x600 are floats in V, A, W, var and VA.
- The integer basic values from 0x130 are on the secondary side: multiply voltages by PT1/PT2, currents by CT1/CT2 and powers by both.
- Energies are counts of 0.1 kWh (kvarh, kVAh). Max/min values carry their time as year, month, day, hour, minute and second bytes.
- The TOU season, schedule and holiday tables from 0x820 are in the manual and not in this map.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| HR | 304 | uint16 | R | Hz | ×0.01 | ||
| HR | 305 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 306 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 307 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 308 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 309 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 310 | uint16 | R | V | ×0.1 | Multiply by PT1/PT2 for the primary value | |
| HR | 311 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 312 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 313 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 314 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 315 | int16 | R | W | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 316 | int16 | R | W | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 317 | int16 | R | W | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 318 | int16 | R | W | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 319 | int16 | R | var | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 320 | int16 | R | var | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 321 | int16 | R | var | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 322 | int16 | R | var | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 323 | uint16 | R | VA | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 324 | int16 | R | ×0.001 | |||
| HR | 325 | int16 | R | ×0.001 | |||
| HR | 326 | int16 | R | ×0.001 | |||
| HR | 327 | int16 | R | ×0.001 | |||
| HR | 328 | uint16 | R | % | ×0.1 | ||
| HR | 329 | uint16 | R | % | ×0.1 | ||
| HR | 330 | uint16 | R | ||||
| HR | 331 | int16 | R | VA | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 332 | int16 | R | VA | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 333 | int16 | R | VA | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 335 | int16 | R | VA | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 336 | int16 | R | W | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 337 | int16 | R | var | Multiply by (PT1/PT2)×(CT1/CT2) for the primary value | ||
| HR | 338 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 339 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 340 | uint16 | R | A | ×0.001 | Multiply by CT1/CT2 for the primary value | |
| HR | 1536 | float32 ABCD | R | Hz | |||
| HR | 1538 | float32 ABCD | R | V | |||
| HR | 1540 | float32 ABCD | R | V | |||
| HR | 1542 | float32 ABCD | R | V | |||
| HR | 1544 | float32 ABCD | R | V | |||
| HR | 1546 | float32 ABCD | R | V | |||
| HR | 1548 | float32 ABCD | R | V | |||
| HR | 1550 | float32 ABCD | R | A | |||
| HR | 1552 | float32 ABCD | R | A | |||
| HR | 1554 | float32 ABCD | R | A | |||
| HR | 1556 | float32 ABCD | R | A | |||
| HR | 1558 | float32 ABCD | R | W | |||
| HR | 1560 | float32 ABCD | R | W | |||
| HR | 1562 | float32 ABCD | R | W | |||
| HR | 1564 | float32 ABCD | R | W | |||
| HR | 1566 | float32 ABCD | R | var | |||
| HR | 1568 | float32 ABCD | R | var | |||
| HR | 1570 | float32 ABCD | R | var | |||
| HR | 1572 | float32 ABCD | R | var | |||
| HR | 1574 | float32 ABCD | R | VA | |||
| HR | 1576 | float32 ABCD | R | ||||
| HR | 1578 | float32 ABCD | R | ||||
| HR | 1580 | float32 ABCD | R | ||||
| HR | 1582 | float32 ABCD | R | ||||
| HR | 1584 | float32 ABCD | R | Ratio, 0-1 | |||
| HR | 1586 | float32 ABCD | R | Ratio, 0-1 | |||
| HR | 1590 | float32 ABCD | R | VA | |||
| HR | 1592 | float32 ABCD | R | VA | |||
| HR | 1594 | float32 ABCD | R | VA | |||
| HR | 1598 | float32 ABCD | R | VA | |||
| HR | 1600 | float32 ABCD | R | W | |||
| HR | 1602 | float32 ABCD | R | var | |||
| HR | 1604 | float32 ABCD | R | A | |||
| HR | 1606 | float32 ABCD | R | A | |||
| HR | 1608 | float32 ABCD | R | A | |||
| HR | 1024 | uint16 | R | % | ×0.01 | ||
| HR | 1025 | uint16 | R | % | ×0.01 | ||
| HR | 1026 | uint16 | R | % | ×0.01 | ||
| HR | 1027 | uint16 | R | % | ×0.01 | ||
| HR | 1028 | uint16 | R | % | ×0.01 | ||
| HR | 1029 | uint16 | R | % | ×0.01 | ||
| HR | 1030 | uint16 | R | % | ×0.01 | ||
| HR | 1031 | uint16 | R | % | ×0.01 | ||
| HR | 1032 | uint16 | R | % | ×0.01 | ||
| HR | 1033 | uint16 | R | % | ×0.01 | ||
| HR | 1034 | uint16 | R | % | ×0.01 | ||
| HR | 1035 | uint16 | R | % | ×0.01 | ||
| HR | 1036 | uint16 | R | % | ×0.01 | ||
| HR | 1037 | uint16 | R | % | ×0.01 | ||
| HR | 1038 | uint16 | R | % | ×0.01 | ||
| HR | 1039 | uint16 | R | % | ×0.01 | ||
| HR | 1040 | uint16 | R | % | ×0.01 | ||
| HR | 1041 | uint16 | R | % | ×0.01 | ||
| HR | 1042 | uint16 | R | % | ×0.01 | ||
| HR | 1043 | uint16 | R | % | ×0.01 | ||
| HR | 1044 | uint16 | R | % | ×0.01 | ||
| HR | 1045 | uint16 | R | % | ×0.01 | ||
| HR | 1046 | uint16 | R | % | ×0.01 | ||
| HR | 1047 | uint16 | R | % | ×0.01 | ||
| HR | 1048 | uint16 | R | % | ×0.01 | ||
| HR | 1049 | uint16 | R | % | ×0.01 | ||
| HR | 1050 | uint16 | R | % | ×0.01 | ||
| HR | 1051 | uint16 | R | % | ×0.01 | ||
| HR | 1052 | uint16 | R | % | ×0.01 |
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).