marq24 / ha-tibber-pulse-local

Local/LAN Tibber Pulse/Bridge Integration for Home Assistant. My Tibber invitation Link: https://invite.tibber.com/6o0kqvzf (Code: six, oscar, zero, kilo, quebec, victor, zulu, foxtrot)
Apache License 2.0
73 stars 3 forks source link

Errormessage: string index out of range while process data - plaintext... #20

Closed mager33 closed 4 months ago

mager33 commented 4 months ago

Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 -SY5Q3DA1004 V3.03 1-0:0.0.0*255(1001015088) 1-0:1.8.0*255(00034030.0572206*kWh) 1-0:21.7.255*255(000029.18*W) 1-0:41.7.255*255(000024.12*W) 1-0:61.7.255*255(000047.78*W) 1-0:1.7.255*255(000101.08*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !

marq24 commented 4 months ago

a) can you please share a screenshot of the webgui: http://admin:[BRIDGE_PASSWORD]@[YOUR_IP]/data.json?node_id=1 b) and the full debug log would also help (getting the line number that cause the IndexOutOfBounds)

mager33 commented 4 months ago

This return a JSON, so you question to send a scrennshot of the GUI  does not make sense :-)

The JSON:

 

/ESY5Q3DA1004 V3.03

1-0:0.0.0*255(100101XXXX)

1-0:1.8.0255(00034039.6148658kWh)

1-0:21.7.255255(000110.63W)

1-0:41.7.255255(000022.59W)

1-0:61.7.255255(000047.32W)

1-0:1.7.255255(000180.54W)

1-0:96.5.5*255(82)

0-0:96.1.255*255(1ESY103800XXXX)

!

marq24 commented 4 months ago

If you want to get support/help, then it would be really kind, if I am asking for something, I could receive what I am asking for...

Copy from console/logs and paste here in markdown formatted text inputs (without using ```) have the potential, that important characters will get lost... that's why I am asking for a screenshot...

With all tests that I was able to perform based on the information you shared I could not reproduce any kind of 'index out of range'... (BTW - this is not a JSON) - So was this just "one" error - but in general the integration is working - or do you have plenty (100+) messages like that...

Additionally to the screenshot providing debug log information (as it'd described here [https://github.com/marq24/ha-senec-v3/blob/master/docs/HA_DEBUG.md]) would also help.

mager33 commented 4 months ago

There is no screenshot, Firefox just starts a download of the JSON. Will send that later if it helps... dont have that on my phone.

marq24 commented 4 months ago

doh! - I am very sorry - that was just the wrong URL... here is the correct one

http://[LOCAL-IP-HERE]/nodes/1/data

but in case, that you get constantly no longer data from the bridge - emailing me the download file from Firefox will indeed help... [+ the HA log file with DEBUG mode enabled] - TIA

mager33 commented 4 months ago

myTibber

mager33 commented 4 months ago

mytibber2

Logger: custom_components.tibber_local Source: custom_components/tibber_local/init.py:309 Integration: Tibber Pulse Local (polling) (documentation, issues) First occurred: 10. Februar 2024 um 17:56:29 (73 occurrences) Last logged: 20:05:04

Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 -SY5Q3DA1004 V3.03 1-0:0.0.0*255(1001000000) 1-0:1.8.0*255(00034049.4946189*kWh) 1-0:21.7.255*255(000024.12*W) 1-0:41.7.255*255(000022.30*W) 1-0:61.7.255*255(000047.88*W) 1-0:1.7.255*255(000094.30*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !
Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 -SY5Q3DA1004 V3.03 1-0:0.0.0*255(1001000000) 1-0:1.8.0*255(00034049.5842879*kWh) 1-0:21.7.255*255(000133.88*W) 1-0:41.7.255*255(000022.35*W) 1-0:61.7.255*255(000016.79*W) 1-0:1.7.255*255(000173.02*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !
Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 -SY5Q3DA1004 V3.03 1-0:0.0.0*255(1001000000) 1-0:1.8.0*255(00034049.8497539*kWh) 1-0:21.7.255*255(000096.99*W) 1-0:41.7.255*255(000024.11*W) 1-0:61.7.255*255(000025.37*W) 1-0:1.7.255*255(000146.47*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !
Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 1-0:0.0.0*255(1001000000) 1-0:1.8.0*255(00034049.9150220*kWh) 1-0:21.7.255*255(000091.46*W) 1-0:41.7.255*255(000024.92*W) 1-0:61.7.255*255(000025.93*W) 1-0:1.7.255*255(000142.31*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !
Exception string index out of range while process data - plaintext: /ESY5Q3DA1004 V3.03 -SY5Q3DA1004 V3.03 1-0:0.0.0*255(1001000000) 1-0:1.8.0*255(00034051.8705260*kWh) 1-0:21.7.255*255(000187.37*W) 1-0:41.7.255*255(000024.01*W) 1-0:61.7.255*255(000296.41*W) 1-0:1.7.255*255(000507.79*W) 1-0:96.5.5*255(82) 0-0:96.1.255*255(1ESY1038000288) !
marq24 commented 4 months ago

Thanks a lot for the screenshots - this info helped me

when you compare the content of the screenshot with the output of the log, then you can see, that in the case of the 'warning' (in the log) the plaintext that can be read from the bridge seams to be corrupted...

ESY5Q3DA1004 V3.03 -SY5Q3DA1004...

after the V3.03 the first obis code should start - but in some cases your bridge deliver a -SYS5Q3DA... - which is again the start (except that the E is missing). So at the bottom line, the bridge currently delivers "invalid data"... This is exactly a behaviour that have been observed by other users (frequent CRC errors)... I will update the documentation...

There is not much I am able to solve the problem in the integration - but there is something you can do/try - rotating the reading head slightly few degrees anti clockwise - that helped other users in comparable situations: https://github.com/marq24/ha-tibber-pulse-local/issues/6#issuecomment-1791117188

marq24 commented 4 months ago

@mager33 do you have any feedback concerning my last comment?

mager33 commented 4 months ago

Thank you for the advice. I am happy how it works now. It took me some time and rotations to find the current (mostly) working position. The serial data from my meter is encoded 7E1, i.e. with a parity bit - but the tibber pulse does not seem to care about that. As most data is fine, I'd happily just dismiss the corrupted data (if i can be identifed as corrupted).

marq24 commented 4 months ago

So when I understand this correctly, then "rotating" improved the situation - but you still have error messages from time to time? - Would you like to have an additional setting, that these messages will handled just as "info" (and not as warning/error) ?!

mager33 commented 4 months ago

Yes, that makes sense. (As messages come in every few seconds, i personally would not care and just silently discard corrupt data)

marq24 commented 4 months ago

With the latest release there is now such a setting... So close this issue here... If you feel that's not solved in your opinion - please do not hesitate to re-open it... TIA