Hoymiles OpenDTU setup with OH3 (mqtt)

Thanks!

Quick question: How do you avoid the status of the respective items going to UNDEF when the PV modules don’t deliver any power / the inverter goes into hibernation?

In my case, outside of the times when the inverter is powered on (see example below)…

… the state of the items goes to UNDEF, which does not look nice in dashboards (more a cosmetic problem)…
image
… but also causes problems when using the values as input for calculations in rules.

I read found this thread here but was wondering whether there’s a better way to do this? This thread here would solve the problem for “current power”, but overwriting e.g. “daily energy” to zero if the inverter goes down would simply produce wrong results.

Any ideas?

From what I can see, the easiest fix would be if openDTU would continue to submit the last value, even if the inverter goes down?

Try to use persistence.
I use RR4J/InfluxDB

Can you please specify?

I am using openHab 3.4 with InfluxDB already, still with the above described behavior.

It depends on different things:
Persistence strategy, whether the inverter does reply on messages after sunset etc. My inverter/s are set to be silent at night. This+persistence helps me to get no false values. I do reset certain values at midnight using a rule.

I do the same.

I am using an HM-600. From what I can see, there is no way for me to change the behavior of the inverter. :confused:

If your inverter is set to be silent at night, you should be having the same problem I’m having (no response from the inverter → UNDEF in openHAB)?

Update: Maybe I’m looking at an MQTT problem / integration problem into openHAB. When running mosquitto_sub -h 192.168.0.150 -u username -P password -v -t solar/# the output shows the desired values even if the inverter is down (at night), so I have to check the MQTT channel tomorrow.

solar/dtu/status online
solar/dtu/uptime 23254
solar/dtu/ip 192.168.X.X
solar/dtu/hostname OpenDTU-30AAC0
solar/dtu/rssi -33
solar/dtu/bssid XX:XX:XX:XX:XX:XX
solar/inverterid/name Wechselrichter
solar/inverterid/device/bootloaderversion 104
solar/inverterid/device/fwbuildversion 10010
solar/inverterid/device/fwbuilddatetime 2021-11-01 08:42:00
solar/inverterid/device/hwpartnumber 269553683
solar/inverterid/device/hwversion 01.10
solar/inverterid/status/limit_relative 100.00
solar/inverterid/status/limit_absolute 600.00
solar/inverterid/status/reachable 0
solar/inverterid/status/producing 0
solar/inverterid/status/last_update 1690139392
solar/inverterid/0/powerdc 0.5
solar/inverterid/0/yieldday 1118
solar/inverterid/0/yieldtotal 109.306
solar/inverterid/0/voltage 230.8
solar/inverterid/0/current 0.00
solar/inverterid/0/power 0.0
solar/inverterid/0/frequency 49.98
solar/inverterid/0/powerfactor 0.000
solar/inverterid/0/efficiency 0.000
solar/inverterid/0/reactivepower 0.0
solar/inverterid/0/temperature 28.4
solar/inverterid/1/voltage 12.0
solar/inverterid/1/current 0.02
solar/inverterid/1/power 0.3
solar/inverterid/1/yieldday 521
solar/inverterid/1/yieldtotal 42.587
solar/inverterid/1/irradiation 0.000
solar/inverterid/2/voltage 12.0
solar/inverterid/2/current 0.02
solar/inverterid/2/power 0.2
solar/inverterid/2/yieldday 597
solar/inverterid/2/yieldtotal 66.719
solar/inverterid/2/irradiation 0.000
solar/ac/power 0.0
solar/ac/yieldtotal 109.306
solar/ac/yieldday 1118
solar/ac/is_valid 0
solar/dc/power 0.5
solar/dc/irradiation 0.000
solar/dc/is_valid 0

Solution: The flag “enable expiration” has to be disabled for the items to contain data without gaps when the inverter is switched off. I found the solution here on openDTUs Github page.

image

3 Likes