GoodWe GW10K-ET – Registers for daily grid import/export

Hi,
which registers show how much energy has been bought from and sold to the grid today on a GoodWe GW10K-ET inverter?

For registers 35199 (E-Day-Sell) and 35202 (E-Day-Buy) it seems to me that they only reflect energy exchanged with the grid as a result of battery charging and discharging.

Could someone please advise?

You’re correct - these registers show inverter-side energy, not the actual grid energy. They primarily reflect battery charge/discharge operations, not the total energy exchanged with the grid.

For actual grid energy, use these registers instead:

Meter-based values (36xxx registers):

  • E_TOTAL_SELL (Register 36015) - Float, total energy sold to grid
  • CT2_E_TOTAL_SELL (Register 36047) - CT2 total sell energy
  • CT2_E_TOTAL_BUY (Register 36049) - CT2 total buy energy

Unfortunately, there don’t appear to be daily (E_DAY) equivalents for these meter-based registers in the GoodWe protocol.

How OpenEMS solves this:

The GoodWeGridMeter component calculates grid energy by integrating power values over time:

// Calculated from ActivePower:
if (activePower > 0) {
// Buy-From-Grid → ACTIVE_PRODUCTION_ENERGY
} else {
// Sell-To-Grid → ACTIVE_CONSUMPTION_ENERGY
}

Recommendation:

For daily grid energy values, you have two options:

  1. Use the meter total registers (36015, 36047, 36049) and calculate daily differences yourself
  2. Use OpenEMS’s calculated channels ACTIVE_PRODUCTION_ENERGY / ACTIVE_CONSUMPTION_ENERGY from the GoodWeGridMeter component

Registers 35199/35202 are unfortunately not suitable for tracking actual grid import/export energy.

1 Like