TheRealKillaruna / nano_pk

Home Assistant integration of Hargassner Nano-PK
Apache License 2.0
18 stars 17 forks source link

Stop working for NEO-HV30 #13

Closed zeniale closed 8 months ago

zeniale commented 1 year ago

It's worked a lot with Hargassner NEO HV-30, then stop working. My Hargassner Software Version V10.2l1 and Firmware I/O Version 2.0i. Home assistant configuration is: nano_pk: host: 192.168.1.210 msgformat : "<DAQPRJ><ANALOG><CHANNEL id='0' name='ZK' dop='0'/><CHANNEL id='1' name='O2' unit='%'/><CHANNEL id='2' name='O2_soll' unit='%'/><CHANNEL id='3' name='TK' unit='°C'/><CHANNEL id='4' name='TKsoll' unit='°C' dop='0'/><CHANNEL id='5' name='TRL' unit='°C'/><CHANNEL id='6' name='TRLsoll' unit='°C'/><CHANNEL id='7' name='TRG' unit='°C'/><CHANNEL id='8' name='Leistung' unit='%' dop='0'/><CHANNEL id='9' name='SZist' unit='%' dop='0'/><CHANNEL id='10' name='SZsoll' unit='%'/><CHANNEL id='11' name='TPo' unit='°C'/><CHANNEL id='12' name='TPm' unit='°C'/><CHANNEL id='13' name='TPu' unit='°C'/><CHANNEL id='14' name='Spreizung' unit='°C'/><CHANNEL id='15' name='RLP/PuffPumpe' unit='%' dop='0'/><CHANNEL id='16' name='PufLad' unit='%'/><CHANNEL id='17' name='Störungs Nr' dop='0'/><CHANNEL id='18' name='Programm' dop='0'/><CHANNEL id='19' name='Prim.soll' unit='%' dop='0'/><CHANNEL id='20' name='Prim.ist' unit='%' dop='0'/><CHANNEL id='21' name='Sek.soll' unit='%' dop='0'/><CHANNEL id='22' name='Sek.ist' unit='%' dop='0'/><CHANNEL id='23' name='Heiz P Lambda' unit='W' dop='2'/><CHANNEL id='24' name='Heiz U Lambda' unit='V' dop='2'/><CHANNEL id='25' name='Heiz I Lambda' unit='mA' dop='0'/><CHANNEL id='26' name='Sens U Lambda' unit='mV'/><CHANNEL id='27' name='Tplat' unit='°C' dop='0'/><CHANNEL id='28' name='TVG' unit='°C'/><CHANNEL id='29' name='TVG2' unit='°C'/><CHANNEL id='30' name='Taus' unit='°C'/><CHANNEL id='31' name='TA Gem.' unit='°C'/><CHANNEL id='32' name='Verb-Anforderung' unit='°C' dop='0'/><CHANNEL id='33' name='min.Leist.TRG' unit='%'/><CHANNEL id='34' name='max.Leist.TRG' unit='%'/><CHANNEL id='35' name='TFW' unit='°C'/><CHANNEL id='36' name='FW-Anforderung' unit='°C' dop='0'/><CHANNEL id='37' name='Programm HKM1' dop='0'/><CHANNEL id='38' name='Solltmp. ExtHK' unit='°C' dop='0'/><CHANNEL id='39' name='Solltmp. ExtHK_2' unit='°C' dop='0'/><CHANNEL id='40' name='TVL_A' unit='°C'/><CHANNEL id='41' name='TVLs_A' unit='°C' dop='0'/><CHANNEL id='42' name='TRA_A' unit='°C'/><CHANNEL id='43' name='TRs_A' unit='°C'/><CHANNEL id='44' name='HKZustand_A' dop='0'/><CHANNEL id='45' name='FRA Zustand' dop='0'/><CHANNEL id='46' name='TVL_1' unit='°C'/><CHANNEL id='47' name='TVLs_1' unit='°C' dop='0'/><CHANNEL id='48' name='TRA_1' unit='°C'/><CHANNEL id='49' name='TRs_1' unit='°C'/><CHANNEL id='50' name='HKZustand_1' dop='0'/><CHANNEL id='51' name='FR1 Zustand' dop='0'/><CHANNEL id='52' name='TVL_2' unit='°C'/><CHANNEL id='53' name='TVLs_2' unit='°C' dop='0'/><CHANNEL id='54' name='TRA_2' unit='°C'/><CHANNEL id='55' name='TRs_2' unit='°C'/><CHANNEL id='56' name='HKZustand_2' dop='0'/><CHANNEL id='57' name='FR2 Zustand' dop='0'/><CHANNEL id='58' name='TVL_3' unit='°C'/><CHANNEL id='59' name='TVLs_3' unit='°C' dop='0'/><CHANNEL id='60' name='TRA_3' unit='°C'/><CHANNEL id='61' name='TRs_3' unit='°C'/><CHANNEL id='62' name='HKZustand_3' dop='0'/><CHANNEL id='63' name='FR3 Zustand' dop='0'/><CHANNEL id='64' name='TVL_4' unit='°C'/><CHANNEL id='65' name='TVLs_4' unit='°C' dop='0'/><CHANNEL id='66' name='TRA_4' unit='°C'/><CHANNEL id='67' name='TRs_4' unit='°C'/><CHANNEL id='68' name='HKZustand_4' dop='0'/><CHANNEL id='69' name='FR4 Zustand' dop='0'/><CHANNEL id='70' name='TVL_B' unit='°C'/><CHANNEL id='71' name='TVLs_B' unit='°C' dop='0'/><CHANNEL id='72' name='TRA_B' unit='°C'/><CHANNEL id='73' name='TRs_B' unit='°C'/><CHANNEL id='74' name='HKZustand_B' dop='0'/><CHANNEL id='75' name='FRB Zustand' dop='0'/><CHANNEL id='76' name='TBA' unit='°C'/><CHANNEL id='77' name='TBs_A' unit='°C' dop='0'/><CHANNEL id='78' name='TB1' unit='°C'/><CHANNEL id='79' name='TBs_1' unit='°C' dop='0'/><CHANNEL id='80' name='BoiZustand_1' dop='0'/><CHANNEL id='81' name='TB2' unit='°C'/><CHANNEL id='82' name='TBs_2' unit='°C' dop='0'/><CHANNEL id='83' name='BoiZustand_2' dop='0'/><CHANNEL id='84' name='TBB' unit='°C'/><CHANNEL id='85' name='TBs_B' unit='°C' dop='0'/><CHANNEL id='86' name='HKR Anf' unit='°C'/><CHANNEL id='87' name='Anf. HKR0' unit='°C' dop='0'/><CHANNEL id='88' name='Anf. HKR1' unit='°C' dop='0'/><CHANNEL id='89' name='Anf. HKR2' unit='°C' dop='0'/><CHANNEL id='90' name='Anf. HKR3' unit='°C' dop='0'/><CHANNEL id='91' name='Anf. HKR4' unit='°C' dop='0'/><CHANNEL id='92' name='Anf. HKR5' unit='°C' dop='0'/><CHANNEL id='93' name='Anf. HKR6' unit='°C' dop='0'/><CHANNEL id='94' name='Anf. HKR7' unit='°C' dop='0'/><CHANNEL id='95' name='Anf. HKR8' unit='°C' dop='0'/><CHANNEL id='96' name='Anf. HKR9' unit='°C' dop='0'/><CHANNEL id='97' name='Anf. HKR10' unit='°C' dop='0'/><CHANNEL id='98' name='Anf. HKR11' unit='°C' dop='0'/><CHANNEL id='99' name='Anf. HKR12' unit='°C' dop='0'/><CHANNEL id='100' name='Anf. HKR13' unit='°C' dop='0'/><CHANNEL id='101' name='Anf. HKR14' unit='°C' dop='0'/><CHANNEL id='102' name='Anf. HKR15' unit='°C' dop='0'/><CHANNEL id='103' name='DiffR3TWq' unit='°C'/><CHANNEL id='104' name='DiffR3 K1' dop='0'/><CHANNEL id='105' name='DiffR3 K2' dop='0'/><CHANNEL id='106' name='DiffR3TDiff1' unit='°C'/><CHANNEL id='107' name='DiffR3TDiff2' unit='°C'/><CHANNEL id='108' name='DiffR3 P1' unit='%' dop='0'/><CHANNEL id='109' name='DiffR3 P2' unit='%' dop='0'/><CHANNEL id='110' name='DiffR3 P3' unit='%' dop='0'/></ANALOG><DIGITAL><CHANNEL id='0' bit='0' name='Störung'/><CHANNEL id='0' bit='1' name='STB'/><CHANNEL id='0' bit='2' name='TKS'/><CHANNEL id='0' bit='4' name='RLm_auf'/><CHANNEL id='0' bit='5' name='RLm_zu'/><CHANNEL id='0' bit='10' name='WS freig.'/><CHANNEL id='0' bit='11' name='Akt. Code'/><CHANNEL id='0' bit='14' name='FW Freig.'/><CHANNEL id='0' bit='15' name='gFlP'/><CHANNEL id='0' bit='16' name='gFlM auf'/><CHANNEL id='0' bit='17' name='gFlM zu'/><CHANNEL id='0' bit='18' name='gFl2P'/><CHANNEL id='0' bit='19' name='gFl2M auf'/><CHANNEL id='0' bit='20' name='gFl2M zu'/><CHANNEL id='1' bit='0' name='Lamdaheiz.'/><CHANNEL id='1' bit='1' name='Zündheiz.'/><CHANNEL id='1' bit='2' name='FW Pumpe'/><CHANNEL id='1' bit='3' name='FLP'/><CHANNEL id='1' bit='4' name='SLK_auf'/><CHANNEL id='1' bit='5' name='SLK_zu'/><CHANNEL id='1' bit='6' name='PLK_auf'/><CHANNEL id='1' bit='7' name='PLK_zu'/><CHANNEL id='1' bit='8' name='Geb. Relais'/><CHANNEL id='1' bit='9' name='Schnellladev.'/><CHANNEL id='2' bit='0' name='HKPA'/><CHANNEL id='2' bit='1' name='MAA'/><CHANNEL id='2' bit='2' name='MAZ'/><CHANNEL id='2' bit='3' name='HKP1'/><CHANNEL id='2' bit='4' name='M1A'/><CHANNEL id='2' bit='5' name='M1Z'/><CHANNEL id='2' bit='6' name='HKP2'/><CHANNEL id='2' bit='7' name='M2A'/><CHANNEL id='2' bit='8' name='M2Z'/><CHANNEL id='2' bit='9' name='HKP3'/><CHANNEL id='2' bit='10' name='M3A'/><CHANNEL id='2' bit='11' name='M3Z'/><CHANNEL id='2' bit='12' name='HKP4'/><CHANNEL id='2' bit='13' name='M4A'/><CHANNEL id='2' bit='14' name='M4Z'/><CHANNEL id='2' bit='15' name='HKP5'/><CHANNEL id='2' bit='16' name='M5A'/><CHANNEL id='2' bit='17' name='M5Z'/><CHANNEL id='2' bit='18' name='HKP6'/><CHANNEL id='2' bit='19' name='M6A'/><CHANNEL id='2' bit='20' name='M6Z'/><CHANNEL id='2' bit='21' name='HKPB'/><CHANNEL id='2' bit='22' name='MBA'/><CHANNEL id='2' bit='23' name='MBZ'/><CHANNEL id='3' bit='0' name='BPA'/><CHANNEL id='3' bit='1' name='BP1'/><CHANNEL id='3' bit='2' name='BP2'/><CHANNEL id='3' bit='3' name='BP3'/><CHANNEL id='3' bit='4' name='BPB'/><CHANNEL id='3' bit='5' name='ZP Boi.A'/><CHANNEL id='3' bit='6' name='ZP Boi.1'/><CHANNEL id='3' bit='7' name='ZP Boi.2'/><CHANNEL id='3' bit='8' name='ZP Boi.3'/><CHANNEL id='3' bit='9' name='ZP Boi.B'/><CHANNEL id='5' bit='0' name='PK_L Heiz.'/><CHANNEL id='5' bit='1' name='PK_Z Heiz.'/><CHANNEL id='5' bit='2' name='PK_Z Geb.'/><CHANNEL id='5' bit='3' name='PK_LambdaOk'/><CHANNEL id='5' bit='4' name='PK_Fuellstand'/><CHANNEL id='5' bit='5' name='PK_Aschebox'/><CHANNEL id='5' bit='6' name='PK_ES Run'/><CHANNEL id='5' bit='7' name='PK_ES Dir'/><CHANNEL id='5' bit='8' name='PK_AS Saug'/><CHANNEL id='5' bit='9' name='PK_AS RA Run'/><CHANNEL id='5' bit='10' name='PK_AS RA Dir'/><CHANNEL id='5' bit='11' name='PK_Rein En'/><CHANNEL id='5' bit='12' name='PK_Rein Run'/><CHANNEL id='5' bit='13' name='PK_AA Run'/><CHANNEL id='5' bit='14' name='PK_AA Dir'/><CHANNEL id='5' bit='15' name='PK_RLm_auf'/><CHANNEL id='5' bit='16' name='PK_RLm_zu'/><CHANNEL id='5' bit='17' name='PK_RL Pumpe'/><CHANNEL id='5' bit='18' name='PK_RL Verz Aktiv'/><CHANNEL id='5' bit='19' name='Spülung Aktiv'/><CHANNEL id='6' bit='0' name='Ext.Anf'/><CHANNEL id='6' bit='1' name='Ext.Anf 2'/><CHANNEL id='6' bit='2' name='Ext.Anf 3'/><CHANNEL id='6' bit='3' name='HKP Ext'/><CHANNEL id='6' bit='4' name='HKP Ext_2'/><CHANNEL id='6' bit='5' name='HKP Ext_3'/><CHANNEL id='7' bit='0' name='DReg P2'/><CHANNEL id='7' bit='1' name='DReg P3'/><CHANNEL id='7' bit='2' name='DReg Mi auf'/><CHANNEL id='7' bit='3' name='DReg Mi zu'/><CHANNEL id='7' bit='5' name='DReg2 P2'/><CHANNEL id='7' bit='6' name='DReg2 Mi auf'/><CHANNEL id='7' bit='7' name='DReg2 Mi zu'/><CHANNEL id='7' bit='9' name='DReg3 P2'/><CHANNEL id='7' bit='10' name='DReg3 P3'/><CHANNEL id='7' bit='11' name='DReg3 Mi auf'/><CHANNEL id='7' bit='12' name='DReg3 Mi zu'/></DIGITAL></DAQPRJ>" devicename: NEO-HV30 parameters: FULL language: EN

On Home Assistant Log I'm getting this error: `Logger: homeassistant.components.sensor Source: components/sensor/init.py:487 Integration: Sensor (documentation, issues) First occurred: 12:24:43 AM (2 occurrences) Last logged: 12:24:43 AM

Error adding entities for domain sensor with platform nano_pk Error while setting up nano_pk platform for sensor Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 504, in async_add_entities await asyncio.gather(*tasks) File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 788, in _async_add_entity await entity.add_to_platform_finish() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1006, in add_to_platform_finish self.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 742, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 810, in _async_write_ha_state state = self._stringify_state(available) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 748, in _stringify_state if (state := self.state) is None: ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/sensor/init.py", line 487, in state raise ValueError( ValueError: Sensor sensor.neo_hv30_boiler_state has a unit of measurement and thus indicating it has a numeric value; however, it has the non-numeric device class: enum`

Someone can help me on these error? Tanks

TheRealKillaruna commented 1 year ago

Could you update your nano_pk installation with the latest files from the repository, restart Home Assistant and check if that resolved it?

zeniale commented 1 year ago

After updating I receive some data, but get 2 errors: `This error originated from a custom integration.

Logger: custom_components.nano_pk.sensor Source: custom_components/nano_pk/sensor.py:181 Integration: Hargassner Nano-PK (documentation) First occurred: 10:33:43 PM (24 occurrences) Last logged: 10:35:37 PM

HargassnerBridge.getUnit(): Parameter key Verbrauchszähler not known. HargassnerBridge.getUnit(): Parameter key Verbrauchszähler not known. HargassnerBridge.getValue(): Parameter key Verbrauchszähler not known.`

`This error originated from a custom integration.

Logger: homeassistant.helpers.entity Source: custom_components/nano_pk/sensor.py:133 Integration: Hargassner Nano-PK (documentation) First occurred: 10:33:44 PM (24 occurrences) Last logged: 10:35:37 PM

Update for sensor.neo_hv30_energy_consumption fails Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 699, in async_update_ha_state await self.async_device_update() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 940, in async_device_update await hass.async_add_executor_job(self.update) File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, *self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/nano_pk/sensor.py", line 133, in update self._value = 4.8 float(self._bridge.getValue(self._paramName)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: float() argument must be a string or a real number, not 'NoneType' `

TheRealKillaruna commented 9 months ago

This error should be handled by the latest updates. Could you try?

TheRealKillaruna commented 8 months ago

Resolved.