You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Recently purchased a SlimmeLezer+ v1.2 for my Aidon 6534 electricity meter.
Using the sample config for the slimmelezer works. But when changing the meter_sensor from P1Reader to P1ReaderHDLC it stops working. I cant open the web portal, upload ota or connect using Home Assistant. Re-flashing using ESPHome flasher without HDLC makes everything work again.
Compiled using latest ESPHome v2023.6.3, I've also tried to pin the container to the lastest working according to the readme (2022.12.1) but still the same issue.
When compiling with HDLC enabled i also get this warning:
In file included from src/main.cpp:65:
src/p1reader.h: In member function 'bool P1ReaderHDLC::readHDLCStruct(ParsedMessage*)':
src/p1reader.h:364:21: warning: '.' directive writing 1 byte into a region of size between 0 and 4 [-Wformat-overflow=]
364 | sprintf(obis, "%d.%d.%d", buffer[2], buffer[3], buffer[4]);
| ^~~~~~~~~~
src/p1reader.h:364:21: note: directive argument in the range [0, 255]
src/p1reader.h:364:14: note: 'sprintf' output between 6 and 12 bytes into a destination of size 7
364 | sprintf(obis, "%d.%d.%d", buffer[2], buffer[3], buffer[4]);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
but it still compiles successfully. But after uploaded the sensor stops responding. My simple guess from some googling is that it might be causing some buffer overflow? Changing line 346 from char obis[8]; to char obis[12]; does remove the warning but the device still does not respond... so i might just caused other issues, or i am looking in the wrong spot.
The text was updated successfully, but these errors were encountered:
morotsgurka
changed the title
SlimmeLezer+ with HDLC stopps working
SlimmeLezer+ with HDLC stops working
Jul 5, 2023
UPDATE. It works... but with some modification.
I first found this post after posting my initial issue. He seemed to have the same issue as me:
It flashes OK but the SL+ never starts afterwards.
So i followed his steps using forsbers fork. I then used his yaml config that he posted in his thread.
The differences being that i did all of this in ESPHome docker container running v2023.6.3. This gave me compile issues from forsbers p1reader.h but after implementing the changes that MrGlad8 wrote in issue #44 everything works. Adopted into Home Assistant and i am getting readings from the meter now.
So. Something is not working correctly in the current main branch to support Aidon meters on Slimmelezer+ v1.2. But the changes that were suggested in issue #44 seems to be implemented in the current main branch from what i can see.
Hi!
Recently purchased a SlimmeLezer+ v1.2 for my Aidon 6534 electricity meter.
Using the sample config for the slimmelezer works. But when changing the
meter_sensor
fromP1Reader
toP1ReaderHDLC
it stops working. I cant open the web portal, upload ota or connect using Home Assistant. Re-flashing using ESPHome flasher without HDLC makes everything work again.Compiled using latest ESPHome v2023.6.3, I've also tried to pin the container to the lastest working according to the readme (2022.12.1) but still the same issue.
When compiling with HDLC enabled i also get this warning:
but it still compiles successfully. But after uploaded the sensor stops responding. My simple guess from some googling is that it might be causing some buffer overflow? Changing
line 346
fromchar obis[8];
tochar obis[12];
does remove the warning but the device still does not respond... so i might just caused other issues, or i am looking in the wrong spot.The text was updated successfully, but these errors were encountered: