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

additional data not showing up #12

Closed davidm-glitch closed 6 months ago

davidm-glitch commented 6 months ago

Hey, mostly its working very good but there are lots of sensor that do not show any values. What could possibly be wrong?

image

marq24 commented 6 months ago

can you quickly check the (debug) log of the integration? Are there some/plenty CRC messages? -> If 'yes' start rotating the pulse reading head anti-clock wise... https://support.tibber.com/de/articles/6498539-hilfestellung-rund-um-das-thema-pulse-ir

Feedback from users who have tried this approach: https://github.com/marq24/ha-tibber-pulse-local/issues/6#issuecomment-1791130913

davidm-glitch commented 6 months ago

There was one message about parsing error from tonight but thats it.

Rotating the head didnt help, The best position is at 6. Otherwise I dont even get the current power measurement.

marq24 commented 6 months ago

ok - copy - can you check, what type of data your power-meter provides? -> open the [IP]/nodes/1/data via a browser... is this some sort of binary data - or is it plaintext...

If it's plaintext - please be so kind and share the content here (with ``` )...

Here is the theory of operation - Different power meters will provide different amount of data (OBIS-Codes)... During the startup the integration is checking what obis-codes are available and only for them Entities will/should be added... Of course there are always good reasons, why the code is not working as designed...

Just another idea comes to my mind - could it be, that your meter is still "locked"? [or did you entered already the PIN?]

davidm-glitch commented 6 months ago

This is whats shown

image

The meter is unlocked, otherwise tibber wouldnt work as well

davidm-glitch commented 6 months ago

This is the meter type that is selected

image

marq24 commented 6 months ago

when you enable the debug log for the integration - and you will restart your HA do you see/get a INFO: available sensors found [LIST-HERE] ?! - if there is not such a line this will explain, why you have all possible available entities...

Also what would help me here, if you can capture the response-bytes from the request http://[IP]/data.json?node_id=1 (a python notation would be the coolest... something like data = b"\x1b\x1b\x1b\x1b...." )

davidm-glitch commented 6 months ago

2023-12-30 14:35:26.324 INFO (MainThread) [custom_components.tibber_local.sensor] available sensors found: dict_keys(['010060320101', '0100600100ff', '0100010800ff', '0100020800ff', '0100100700ff'])

Now I also get CRC errors:

023-12-30 14:36:13.605 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02`b\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xabu\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa3\x01c\x84\xb7\x00v\x05\x01\x8b\x02ab\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa3uw\x07\x01\x00`2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\x9b\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01B\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xad\x01\x01\x01c\xc1C\x00v\x05\x01\x8b\x02bb\x00b\x00rc\x02\x01q\x01c\xda\x05\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02\xf8\xd9'
2023-12-30 14:36:16.144 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02`b\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xabu\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa3\x01c\x84\xb7\x00v\x05\x01\x8b\x02ab\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa3uw\x07\x01\x00`2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\x9b\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01B\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xad\x01\x01\x01c\xc1C\x00v\x05\x01\x8b\x02bb\x00b\x00rc\x02\x01q\x01c\xda\x05\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02\xf8\xd9'
2023-12-30 14:36:16.144 DEBUG (MainThread) [custom_components.tibber_local] Finished fetching tibber_local data in 2.630 seconds (success: True)
2023-12-30 14:36:17.537 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02`b\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xabu\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa3\x01c\x84\xb7\x00v\x05\x01\x8b\x02ab\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa3uw\x07\x01\x00`2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\x9b\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa3b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01B\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xad\x01\x01\x01c\xc1C\x00v\x05\x01\x8b\x02bb\x00b\x00rc\x02\x01q\x01c\xda\x05\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02\xf8\xd9'
2023-12-30 14:36:20.155 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02rb\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xab{\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa9\x01cCY\x00v\x05\x01\x8b\x02sb\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa9uw\x07\x01\x00@2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\xa2\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01b\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xb2\x01\x01\x01c\x87Q\x00v\x05\x01\x8b\x02tb\x00b\x00rc\x02\x01q\x01c\xe8\x81\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02"\xd8'
2023-12-30 14:36:20.156 DEBUG (MainThread) [custom_components.tibber_local] Finished fetching tibber_local data in 2.642 seconds (success: True)
2023-12-30 14:36:21.589 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02rb\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xab{\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa9\x01cCY\x00v\x05\x01\x8b\x02sb\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa9uw\x07\x01\x00@2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\xa2\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01b\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xb2\x01\x01\x01c\x87Q\x00v\x05\x01\x8b\x02tb\x00b\x00rc\x02\x01q\x01c\xe8\x81\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02"\xd8'
2023-12-30 14:36:24.154 INFO (MainThread) [custom_components.tibber_local] CRC while parse data - payload: b'\x1b\x1b\x1b\x1b\x01\x01\x01\x01v\x05\x01\x8b\x02rb\x00b\x00rc\x01\x01v\x01\x07\xff\xff\xff\xff\xff\xff\x05\x00\x83\xab{\x0b\n\x01LGZ\x00\x03\x8cr\xecrb\x01e\x02\xe5C\xa9\x01cCY\x00v\x05\x01\x8b\x02sb\x00b\x00rc\x07\x01w\x07\xff\xff\xff\xff\xff\xff\x0b\n\x01LGZ\x00\x03\x8cr\xec\x07\x01\x00b\n\xff\xffrb\x01e\x02\xe5C\xa9uw\x07\x01\x00@2\x01\x01\x01\x01\x01\x01\x04LGZ\x01w\x07\x01\x00`\x01\x00\xff\x01\x01\x01\x01\x0b\n\x01LGZ\x00\x03\x8cr\xec\x01w\x07\x01\x00\x01\x08\x00\xffe\x00\x1cA\x04rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x03\x81\xbc\xa2\x01w\x07\x01\x00\x02\x08\x00\xff\x01rb\x01e\x02\xe5C\xa9b\x1eR\xffi\x00\x00\x00\x00\x00\x19\xd3\xf6\x01w\x07\x01\x00\x10\x07\x00\xff\x01\x01b\x1bR\x00Y\x00\x00\x00\x00\x00\x00\x01\xb2\x01\x01\x01c\x87Q\x00v\x05\x01\x8b\x02tb\x00b\x00rc\x02\x01q\x01c\xe8\x81\x00\x00\x00\x1b\x1b\x1b\x1b\x1a\x02"\xd8'
marq24 commented 6 months ago

I assume "now" (after you have seen this logout put available sensors found: dict_keys(['010060320101', '0100600100ff', '0100010800ff', '0100020800ff', '0100100700ff']), that you only have 3 Entities in the Integration Overview... (010060320101 and 0100600100ff will be ignored)...

At your first HA restart, the Integration was not able to read the node-date (CRC errors) - therefor the list of available sensors found was empty - which cause, that ALL possible Entries will be added... Since sometimes the data can be read, the three entities will be populated with data...

I have a "theory" where these CRC errors comes from - but I do not have any proof - all I can say is, that the integration code itself can't do anything in order to improve the situation - Tibber Bridge will provide an inconsistent data stream...

I already mentioned, there are at least two users with a comparable error picture, that they solved by slightly rotating the reading head few degrees anti-clock-wise (see the pictures). Unfortunately there is IMHO not mich that I can do here.

davidm-glitch commented 6 months ago

Okay, but now we know its not an error from the integration! Thanks!

marq24 commented 6 months ago

you might want to give the "head rotation" a second try... It might be really just few degrees that can make a difference https://github.com/marq24/ha-tibber-pulse-local/issues/6#issuecomment-1791130913

PattaFeuFeu commented 6 months ago

@marq24 Is there a way for me to know if my meter doesn’t support those values or if rotation or other issues might be at play?

When running the debug log for half a minute, I don’t get any CRC errors. The only log entries I get for it are like Finished fetching tibber_local data in 0.088 seconds (success: True).

Going after Volkszähler’s Wiki for my meter, it looks like the other values are not supposed to be available?

marq24 commented 6 months ago

When I started with this integration I was not aware, that different power meters provide a different (sub)set of OBIS codes... I was just very lucky, that my first power meter provided all the different fields (that are now potentially available in the integration)...

I just had to learn in the past two month, that there seams to be no rule (what meter will provide what fields)... At the end of this year my digital meter (with all that fields) got replaced by a smart-meter which also only provide view of the possible fields - which really SUCKS...

I have to check, if my ABB EnFluRi [B23 112-100] will provide more data - but I need some extra free time in order to check that...

So at the bottom line - when the Meter is unlocked with it's PIN - then the number of fields that will be feed via the optical interface depends only from the manufacture of the device. Some meters allow an additional configuration/switch to send "more" data (my new one does)... But "more" does not mean much (at least that's my personal experience with the new eBzD-H https://emh-metering.com/en/products/domestic-meters-smart-meters/ebzd-h/ )

The "rotate (slightly) the reading" will only ensure, that the provided data is 'consistent' - no invalid chars (plaintext-mode) or no CRC (SML-Mode)... That's all - I am not aware, that after the rotation more/less fields had become available.