HAN port, serielldataproblem
Postat: 2 januari 2023, 19:35:26
Då har jag äntligen fått nya elmätaren med HAN/P1 port, och vattenfall har äntligen öppnat upp den (tog dem bara 2 månader).
Jag använder koppling + kod från Pär Svanström (https://github.com/psvanstrom/esphome-p1reader)

Problemet jag har nu är att datat från elmätaren kommer... nästan fram till min ESP8266, typ första 4-5 mätvärdena kommer fin-fint, men sen blir det tvärstopp och resten av datat försvinner ngnstans och jag kan inte läsa färdigt meddelandet.
Mon 19:14:00.47,DEBUG,Raw (20 bytes): /AUX5<vet inte resten här är "privat">
Mon 19:14:00.50,DEBUG,Raw (1 bytes):
Mon 19:14:00.53,DEBUG,Raw (57 bytes): 0-0:96.1.0(<ngt id här, gissar mitt anläggningsid>)
Mon 19:14:00.57,DEBUG,Raw (25 bytes): 0-01.0.0(230102191400W) <- notera ngt konstigt tecken istället för ett kolon som det ska vara
Mon 19:14:00.57,DEBUG,Raw (26 bytes): 1-0:1.8.0(003331.936*kWh)
Mon 19:14:01.58,DEBUG,Raw (17 bytes): 1-0:2.8.0(0000810 <- här avbryts datat.
Jag kör SoftwareSerial (115200 8N1 enl spec), har satt 128 bytes som buffer för den. Iom att ovan data är det jag nästan får varje gång undrar jag om det är buffringsproblem på ngt sätt. Summerar man antalet lästa bytes ovan (det som står inom parantes) så blir det 146 vilket är hyffsat nära 128
Ökar jag bufferten för SoftwareSerial så går det att läsa mer data innan det dör.
Jag tycker att jag läser så snabbt jag kan från Serial objektet, och jag använder samma kod som psvanstrom ovan som bevisligen fungerar.
Under tiden jag läser från elmätaren är det det enda jag gör, har inga interrupts som jag själv startat. Wifikoppling är igång.
Ser ni vad jag gör fel? Tips på felsökning?
Jag använder koppling + kod från Pär Svanström (https://github.com/psvanstrom/esphome-p1reader)

Problemet jag har nu är att datat från elmätaren kommer... nästan fram till min ESP8266, typ första 4-5 mätvärdena kommer fin-fint, men sen blir det tvärstopp och resten av datat försvinner ngnstans och jag kan inte läsa färdigt meddelandet.
Mon 19:14:00.47,DEBUG,Raw (20 bytes): /AUX5<vet inte resten här är "privat">
Mon 19:14:00.50,DEBUG,Raw (1 bytes):
Mon 19:14:00.53,DEBUG,Raw (57 bytes): 0-0:96.1.0(<ngt id här, gissar mitt anläggningsid>)
Mon 19:14:00.57,DEBUG,Raw (25 bytes): 0-01.0.0(230102191400W) <- notera ngt konstigt tecken istället för ett kolon som det ska vara
Mon 19:14:00.57,DEBUG,Raw (26 bytes): 1-0:1.8.0(003331.936*kWh)
Mon 19:14:01.58,DEBUG,Raw (17 bytes): 1-0:2.8.0(0000810 <- här avbryts datat.
Jag kör SoftwareSerial (115200 8N1 enl spec), har satt 128 bytes som buffer för den. Iom att ovan data är det jag nästan får varje gång undrar jag om det är buffringsproblem på ngt sätt. Summerar man antalet lästa bytes ovan (det som står inom parantes) så blir det 146 vilket är hyffsat nära 128

Ökar jag bufferten för SoftwareSerial så går det att läsa mer data innan det dör.
Jag tycker att jag läser så snabbt jag kan från Serial objektet, och jag använder samma kod som psvanstrom ovan som bevisligen fungerar.
Under tiden jag läser från elmätaren är det det enda jag gör, har inga interrupts som jag själv startat. Wifikoppling är igång.
Ser ni vad jag gör fel? Tips på felsökning?