Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong PV readings from Solax X3-Ultra #18503

Open
1 task done
spn91 opened this issue Jan 30, 2025 · 2 comments
Open
1 task done

Wrong PV readings from Solax X3-Ultra #18503

spn91 opened this issue Jan 30, 2025 · 2 comments
Labels
devices Specific device support

Comments

@spn91
Copy link

spn91 commented Jan 30, 2025

Describe the bug

PV readings for the Solax X3-Ultra (Gen5 Hybrid inverter) are not reproducible. You can compare the readings from the screenshot and the readings from the logs. The screenshot is from the Home Assistant Solax Modbus integration. HA and Solax reading are similar, only evcc is off.

Both, the HA Solax integration and evcc are reading the values from the HA modbus proxy addon. It seems that evcc reads a wrong register, or is doing some wrong calculations (if the value is calculated by evcc). I have only a simple site without any other smart meter or load on this site yet, as you can see in the configuration. Also, the bigger the PV power, the bigger the difference between the readings from HA and evcc gets.

Unfortunately the nightly version isn't provided via HA, so please excuse me that I wasn't able to test it with the nightly version.

Image

Steps to reproduce

Nothing special needed, just using the Solax X3-Ultra inverter, which is one of the Solax Gen5 Hybrid inverters.

Configuration details

## minimal configuration example
log: info
levels:
  lp-1: trace
  site: trace
site:
  title: Home # display name for UI
  meters:
    pv:
      - solax_x3_ultra

# define your loadpoints according your needs
# see https://docs.evcc.io/en/docs/reference/configuration/loadpoints
loadpoints:
  - title: Parkplatz # display name for UI
    vehicle: tesla_m3 # default vehicle
    charger: twc3

# meter definitions
# name can be freely chosen and is used as reference when assigning meters to site and loadpoints
# for documentation see https://docs.evcc.io/docs/devices/meters
meters:
  # replace with your real grid meter
  # replace with your real pv system
  - name: solax_x3_ultra
    type: template
    template: solax
    usage: pv
    # Modbus TCP
    modbus: tcpip
    id: 1
    host: 192.168.1.1 # Hostname
    port: 502 # Port
  # replace with your real battery
  - name: my_pv
    type: template
    template: demo-meter
    usage: pv
    power: 7000 # 4 kW production

chargers:
  - name: twc3
    type: template
    template: twc3
    host: 192.168.2.1:8080 # IP-Adresse oder Hostname

# replace with your real vehicle (optional)
# see https://docs.evcc.io/docs/devices/vehicles
vehicles:
  - name: tesla_m3
    type: template
    template: tesla
    title: Tesla Model 3
    capacity: 60 # Akkukapazität in kWh (optional)
    clientId: aaa # Kunden ID deiner [Tesla Developer App](https://developer.tesla.com/dashboard).
    accessToken: aaa # von [myteslamate.com](https://app.myteslamate.com/).
    refreshToken: aaa # von [myteslamate.com](https://app.myteslamate.com/).
    proxyToken:  aaaa

# enter your real grid tariff and feed-in price
# see https://docs.evcc.io/docs/devices/tariffs


# mqtt broker
mqtt:
  broker: 192.168.1.1:1883
  topic: evcc # root topic for publishing, set empty to disable
  user: evcc
  password: evcc

Log details

[site  ] DEBUG 2025/01/30 15:30:23 ----
[lp-1  ] DEBUG 2025/01/30 15:30:23 charge power: 0W
[lp-1  ] DEBUG 2025/01/30 15:30:23 charge currents: [0 0 0]A
[site  ] DEBUG 2025/01/30 15:30:23 pv 1 power: 4647W
[site  ] DEBUG 2025/01/30 15:30:23 site power: -4647W
[lp-1  ] DEBUG 2025/01/30 15:30:23 charge voltages: [0 0 0]V
[lp-1  ] DEBUG 2025/01/30 15:30:23 charger status: A
[site  ] DEBUG 2025/01/30 15:30:33 ----
[lp-1  ] DEBUG 2025/01/30 15:30:33 charge power: 0W
[lp-1  ] DEBUG 2025/01/30 15:30:33 charge currents: [0 0 0]A
[site  ] DEBUG 2025/01/30 15:30:33 pv 1 power: 4570W
[site  ] DEBUG 2025/01/30 15:30:34 site power: -4570W
[lp-1  ] DEBUG 2025/01/30 15:30:34 charge voltages: [0 0 0]V
[lp-1  ] DEBUG 2025/01/30 15:30:34 charger status: A
[site  ] DEBUG 2025/01/30 15:30:43 ----
[lp-1  ] DEBUG 2025/01/30 15:30:43 charge power: 0W
[lp-1  ] DEBUG 2025/01/30 15:30:43 charge currents: [0 0 0]A
[site  ] DEBUG 2025/01/30 15:30:43 pv 1 power: 4610W
[site  ] DEBUG 2025/01/30 15:30:43 site power: -4610W
[lp-1  ] DEBUG 2025/01/30 15:30:43 charge voltages: [0 0 0]V
[lp-1  ] DEBUG 2025/01/30 15:30:43 charger status: A
[site  ] DEBUG 2025/01/30 15:30:53 ----

What type of operating system or environment does evcc run on?

HomeAssistant Add-on

Nightly build

  • I have verified that the issue is reproducible with the latest nightly build

Version

0.133.0

@andig andig added the devices Specific device support label Jan 30, 2025
@spn91
Copy link
Author

spn91 commented Jan 31, 2025

Some more infos regarding inverter firmware

ARM: 018.02-000.09
DSP: 017.05

@spn91
Copy link
Author

spn91 commented Feb 5, 2025

Looking at the Code from the Solax HA Modbus Integration I found out that they are using

register=0x6C for inverter power L1
register=0x70 for inverter power L2
register=0x74 for inverter power L3

and then calculating the sum of the three values to get the total inverter power. Searching in the solax template for these registers, I'm unable to find them, even when converting the hex values to decimal representation.

Comparing the values from evcc and HA, it seems that one of the three phases is not counted in evcc. Thinking more about it, I believe evcc is using just the MPPT values? As I'm pretty new to the pv topic, I have not really experience with it, but I guess using the power values of the MPPTs is anyway not the right way to calculate the power output of the inverter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
devices Specific device support
Projects
None yet
Development

No branches or pull requests

2 participants