The eGauge does not have a fixed BACnet register map. Instead, registers are mapped as they are created. Thus, the map for two different eGauges will differ based on the number of registers and the order they were added in. Registers are organized into groups, which are defined below:

Address Range Group Description Measured Value
0x20000 Group 1 – The RMS voltage of the voltage-taps can be read through this group. Voltage [V]
0x30000 Group 2 – The RMS current measured by each CT can be read through this group. Current [A]
0x50000 Group 3 – The frequency of the voltage-taps can be read through this group. Line Frequency [Hz]
0x60000 Group 4 contains only the object ID 0x60000 and it reports the number of seconds since BACnet daemon startup. The daemon starts after enabling BACnet support through the UI or after power-cycling. Timestamp [s]
0x70000 Group 5 reports the register value for each register (virtual and physical). The register values are time-weighted values and hence the unit of these object IDs is equal to the unit of the corresponding object ID in Group 6, multiplied by seconds. For example, for a register recording power, the Group 6 unit would be Watts, and therefore the Group 5 unit would be Watt-seconds (i.e., Joules). REGVAL [various]
0x80000 Group 6 reports, for each virtual and physical register, the change in register value during the most recent one-second interval. The physical unit of this register depends on the quantity being recorded and can be obtained by reading the “unit” property (BACnet property 117) of the respective object id. For example, for a register recording power, the unit would be Watts, for a register recording voltage, the unit would be Volts. REGCHG [various]

In Group 5 and 6, the first two object IDs will always be the Usage and Generation virtual registers. Any additional virtual registers come next. Physical registers are listed last. The register name for a given object ID can be obtained by reading the “name” property (BACnet property 77) from the object ID.