Integration Solar inverter huawei 2000L

I can confirm, after adding unit=1 it is also working for me. I only check in python under windows.

Python 3.9.4 (tags/v3.9.4:1f2e308, Apr  6 2021, 13:40:21) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import huawei_solar
>>> inverter = huawei_solar.HuaweiSolar ('192.168.5.82')
>>> inverter.get ("model_name")
Result(value='SUN2000-8KTL-M0', unit=None)

@Emilv2
Maybe you can add new option in config to use it with ethernet?.

1 Like

I have to integrate 2 sun 2000l, they are in the same network and obviously have two different ip’s. if I add some configurator:

sensor:

  • platform: huawei_solar
    host: ‘192.168.1.153’

so it detects one, if I have to add the second ???
if I add one more

 host: '192.168.1.95'

but by mistake. how should i do ??

@Emilv2
PLEASE… i need it too… :pray: :pray: :pray:
Now, with last firmware SPC120 the SDongle have modbus over port 502… under FE connection
I’ve checked from my pc using (slave 1):

with this… we don´t need to have middle hardware to do it…
@Emilv2 great job… and you are very kind to share you excellent work

SUN2000-5KTL-M1
SDongle (firmware: SPC120) with Fast Ethernet cable connection

I made it with HA ModBus.
using “slave: 1” inside the sensor definitions

But i can’t have data @sec, it stops HA and i need to shutdown rpi
I’m working fine with scan_interval: 10 (but for me is poor)

modbus:
  - name: Solar
    type: tcp
    host: 192.168.1.76
    port: 502
    sensors:
      - name: Solar SunPower
        slave: 1
        address: 32080
        unit_of_measurement: W
        data_type: int
        count: 2
        scale: 1
        precision: 1
        scan_interval: 10
      - name: Solar GridPower
        slave: 1
        address: 37113
        unit_of_measurement: W
        data_type: int
        count: 2
        scale: 1
        precision: 1
        scan_interval: 10

I have problems after sunset… it seems the inverter ModBus STOPS
Any one have some information about that?
Some configuration with FusionSolar?

imagem

Can someone explain how to update the dongle firmware?

Hello gieljnssns

  1. Send an e-mail to [email protected] requesting the firmware package (zip file)
    You need to detail your devices SN (Inverter and SDongle)

  2. With FusionSolar connect you smartphone to WIFI SDongle AP, not the inverter SSID
    (here, i needed to restart my inverter, the SDongle SSID only appear during startup, and it seems easier to use QR code)

  3. After connection, select:
    Configurations » Update firmware » select package file » and wait…
    (keep your phone near the SDongle… :stuck_out_tongue:)

  4. When finish (about 10min) restart inverter
    DC » OFF and after that AC » OFF

  5. Wait 15 seconds… and AC » ON and DC » ON

Voilá
:clinking_glasses:

There is an issue in the ModBus integration which hangs the Lovelace interface:

Current workaround is downgrade to core-2021.4.6 and wait for 2021.6.

The issue comes from the upgrade of the pymodbus library which they have been updating lately so it is possible that Emil integration broke a while ago due to a similar reason.

1 Like

Thanks… already downgraded…

I had made a custom component from this core/homeassistant/components/modbus at 2021.4.6 · home-assistant/core · GitHub
So you can stay on 2021.5.x

Hello,
could you please tell me, where you were able to download firmware SPC120 for the Smart Dongle?
My environment doesn’t offer v120 - only v118 - therefore Modbus TCP is not working via FE?
With Huawei ‘Device Upgrade’ I can only choose btw. v116 and v118… :man_shrugging:
Would be great to share a link or the upgrade package itself!!!
Many Thanks!

Hello
7 posts up

1 Like

I have a Sun2000 5KTL L1 (1 phase) inverter. The integration works perfectly, but I noticed that the following parameters are always 0:

grid_exported_energy
energy_used

Is this normal, or do I need to change to configuration to see those values?

I think those properties are available only when power meter is connected to the inverter. Mine shows some big values :), but i ignore them.

Grid exported energy 21474836.47
Grid accumulated energy 21474836.47

1 Like

@Emilv2 any fix for this? I have set temporarly battery = false so that it works without battery info.
Logger: homeassistant.components.sensor
Source: custom_components/huawei_solar/sensor.py:321
Integration: Sensor (documentation, issues)
First occurred: 4:17:01 (1 occurrences)
Last logged: 4:17:01

huawei_solar: Error on device update!
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/helpers/entity_platform.py”, line 358, in _async_add_entity
await entity.async_device_update(warning=False)
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 466, in async_device_update
await task
File “/usr/local/lib/python3.8/concurrent/futures/thread.py”, line 57, in run
result = self.fn(*self.args, **self.kwargs)
File “/config/custom_components/huawei_solar/sensor.py”, line 321, in update
self._storage_charge_current_day_charge_capacity = self._inverter.get(
File “/usr/local/lib/python3.8/site-packages/huawei_solar/huawei_solar.py”, line 39, in get
reg = REGISTERS[name]
KeyError: ‘storage_charge_current_day_charge_capacity’
Thanks!

I had requested the new firmware, and I had received a zip file.
But the only way to update the firmware seem to be with an android phone.
So now I’m searching a phone to borrow from friends…

Do you have the latest version from Github? That error should have been fixed already.

For all the other questions/issues:
You can keep posting them here or on Github. I have seen a few things I can quickly fix and I’ll do that. Starting from June/July I should have some more time again and I’ll try to get all the other issues fixed then.

1 Like

Ciao @Emilv2
Just redownloaded to be sure it was the last one, but I’m afraid error is still there:

Logger: homeassistant.components.sensor
Source: custom_components/huawei_solar/sensor.py:343
Integration: Sensor (documentation, issues)
First occurred: 3:03:08 PM (1 occurrences)
Last logged: 3:03:08 PM

huawei_solar: Error on device update!

Traceback (most recent call last): File “/usr/src/homeassistant/homeassistant/helpers/entity_platform.py”, line 365, in _async_add_entity await entity.async_device_update(warning=False) File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 482, in async_device_update await task File “/usr/local/lib/python3.8/concurrent/futures/thread.py”, line 57, in run result = self.fn(*self.args, **self.kwargs) File “/config/custom_components/huawei_solar/sensor.py”, line 343, in update self._storage_power_charging_cutoff_capacity = self._inverter.get( File “/usr/local/lib/python3.8/site-packages/huawei_solar/huawei_solar.py”, line 39, in get reg = REGISTERS[name] KeyError: ‘storage_power_charging_cutoff_capacity’

Thanks in advance!

Oops, two more copy paste mistakes :sweat_smile: I fixed them, does it work now with the latest version from Github?

@Emilv2 Just updated sensor.py, but still same error :frowning:
huawei_solar: Error on device update!
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/helpers/entity_platform.py”, line 365, in _async_add_entity
await entity.async_device_update(warning=False)
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 482, in async_device_update
await task
File “/usr/local/lib/python3.8/concurrent/futures/thread.py”, line 57, in run
result = self.fn(*self.args, **self.kwargs)
File “/config/custom_components/huawei_solar/sensor.py”, line 343, in update
self._storage_power_charging_cutoff_capacity = self._inverter.get(
File “/usr/local/lib/python3.8/site-packages/huawei_solar/huawei_solar.py”, line 39, in get
reg = REGISTERS[name]
KeyError: ‘storage_power_charging_cutoff_capacity’

What about now?