FoxESS · Solar inverter
H3-Pro / H3 Smart hybrid inverter (also A-Tronix AX Plus) Modbus register map
Default configuration
- Protocol
- Modbus TCP
- Port
- 502
- Unit ID
- 247
- Addressing
- 0-based
- Byte order
- Big endian
- Word order
- High word first
Register map
| Address | Count | Name | Type | Unit | Scale | Access |
|---|---|---|---|---|---|---|
| 37612 | 1 | Battery state of charge | Int16 | % | 1 | R |
| 38816 | 2 | Meter power, phase R The cited template negates and scales it by 0.1, so a positive register value means export. | Int32 | W | -0.1 | R |
| 38818 | 2 | Meter power, phase S | Int32 | W | -0.1 | R |
| 38820 | 2 | Meter power, phase T | Int32 | W | -0.1 | R |
| 39237 | 2 | Battery charge/discharge power | Int32 | W | 1 | R |
| 39279 | 2 | PV1 power | Int32 | W | 1 | R |
| 39281 | 2 | PV2 power | Int32 | W | 1 | R |
| 39283 | 2 | PV3 power | Int32 | W | 1 | R |
| 39285 | 2 | PV4 power | Int32 | W | 1 | R |
| 39287 | 2 | PV5 power | Int32 | W | 1 | R |
| 39289 | 2 | PV6 power | Int32 | W | 1 | R |
| 39617 | 2 | Grid consumption total | UInt32 | kWh | 0.01 | R |
| 46001 | 1 | Remote control The cited template writes 0 (disabled) and 1 (enabled). | UInt16 | - | 1 | RW |
| 46002 | 1 | Remote control timeout The cited template writes 60. | UInt16 | s | 1 | RW |
| 46003 | 2 | Remote active power setpoint The template writes a negative value to force charging; the word layout is high word at 46003 and low word at 46004. | Int32 | W | 1 | RW |
| 46608 | 1 | Battery maximum discharge current The template writes the configured current multiplied by 10. Its help text says the inverter factory default is 50 A on H3-Pro/Smart (26 A on the older H3), and that 0 blocks discharge completely. | UInt16 | A | 0.1 | RW |
| 46609 | 1 | Minimum state of charge | UInt16 | % | 1 | RW |
| 46610 | 1 | Maximum state of charge | UInt16 | % | 1 | RW |
| 46611 | 1 | Minimum state of charge, on-grid reserve Discharge floor that must stay below the maximum state of charge; the inverter rejects a maximum SOC at or below this value. | UInt16 | % | 1 | RW |
| 49203 | 1 | Work mode The cited template writes 1 for self use and 3 for back-up. | UInt16 | - | 1 | RW |
Read this device live with Modbus Connect, free for Windows, macOS and Linux
Related guides
Notes
Source: the evcc meter template https://raw.githubusercontent.com/evcc-io/evcc/master/templates/definition/meter/fox-ess-h3-smart.yaml, used as a secondary source; no FoxESS register document was retrieved. It covers the FoxESS H3-Pro / H3 Smart series hybrid inverter and the A-Tronix AX Plus. This is NOT the same map as the older H3 generation in the fox-ess-h3 seed: that one lives in the 31xxx/41xxx/44xxx blocks, while this generation reports PV, battery and meter data in the 37xxx/38xxx/39xxx blocks and is controlled through 46xxx/49xxx. Do not use the two interchangeably. The template offers RS-485 and TCP access with unit ID 247; this seed records the TCP path (port 502, unit ID 247) because the template states no RS-485 baud rate or framing. All rows are holding registers; the PV rows are read as one 12-register block (39279-39290). Scales, types and the write values above are the template's own encoding. The template needs the battery's maximum discharge current as a parameter (it writes it back when leaving hold mode), which is why the 0.1 A scaling of 46608 is recorded here.