Support: Manuell + Berechnung

Alles rund um SoC (Ladezustand des Fahrzeuges). Probleme, Fragen, Fehlfunktionen gehören hier hin
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

Momentan steht der Lademodus auf "Stop".
Das Verbinden mit mqtt funktioniert. Es kam keine übriggebliebene Nachricht an. Nach dem manuellen Setzen finde ich nur die entsprechenden zwei Botschaften im Topic und im openWB-MQTT-Log:

Code: Alles auswählen

2022-09-23 11:09:43 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 11:09:33 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 11:09:32 Topic: openWB/set/system/topicSender Message: local client uid: mnohe sent: openWB/set/lp/1/manualSoc
2022-09-23 11:09:32 Topic: openWB/set/lp/1/manualSoc Message: 90
2022-09-23 11:09:23 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 11:09:13 Topic: openWB/set/houseBattery/faultState Message: 0
Wenn ich die Internetverbindung resetiere kommt im Log nichts auffälliges.

und im mqtt-client nur ein RequestDyGraph:

Code: Alles auswählen

2022-09-23 12:26:03 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 12:25:53 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 12:25:43 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 12:25:42 Topic: openWB/set/system/topicSender Message: local client uid: rzhpd sent: openWB/set/graph/RequestDayGraph
2022-09-23 12:25:42 Topic: openWB/set/graph/RequestDayGraph Message: 0
2022-09-23 12:25:42 Topic: openWB/set/graph/RequestMonthGraph Message: 0
2022-09-23 12:25:42 Topic: openWB/set/graph/RequestYearGraphv1 Message: 0
Mir fiel auf, daß zwischen 10:44 und 10:46 sich die lokale client-ID von x auf mnohe geändert hat (das ist auch vorher schon passiert):

Code: Alles auswählen

2022-09-23 10:46:45 Topic: openWB/set/graph/RequestDayGraph Message: 0
2022-09-23 10:46:45 Topic: openWB/set/system/topicSender Message: local client uid: mnohe sent: openWB/set/graph/RequestDayGraph
2022-09-23 10:46:45 Topic: openWB/set/graph/RequestDayGraph Message: 20220923
2022-09-23 10:46:42 Topic: openWB/set/houseBattery/faultState Message: 0
2022-09-23 10:46:41 Topic: openWB/set/graph/RequestDayGraph Message: 0
2022-09-23 10:46:38 Topic: openWB/set/system/topicSender Message: local client uid: rgxmr sent: openWB/set/graph/RequestDayGraph
2022-09-23 10:46:38 Topic: openWB/set/graph/RequestDayGraph Message: 20220923
2022-09-23 10:46:32 Topic: openWB/set/houseBattery/faultState Message: 0
Es sieht so aus, als wenn die Verbindungstrennung diesmal nichts bewirkt hat. Ich werde also, wenn das Auto mal wieder entladen ist, das Ganze nochmal starten. Auf meinem raspi, der an meiner Heizung hängt, könnte ich ein mosquitto auf das Topic die Nacht über subscriben. Vielleicht bekommt der nochwas mit. Ich habe übrigens Zugang auf meine Wallbox. Falls ich da etwas von liefern soll, sag gerne Bescheid.
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

Gestern habe ich ein mosquitto_sub auf einem raspi im Haus eingerichtet, der sowieso immer läuft. Der fängt jetzt SOC-setz-Topics mit:

Code: Alles auswählen

#!/bin/bash
mosquitto_sub -h 192.168.1.102 -p 1883 -t openWB/set/lp/1/manualSoc | ts > openWBset.log
dann kam kurz nach Mitternacht ein Verbindungs-Neuaufbau der Fritzbox:

Code: Alles auswählen

24.09.22 00:49:00 IPv6-Präfix wurde erfolgreich aktualisiert. Neues Präfix: 2003:e0:1737:d900::/56
24.09.22 00:34:01 IPv6-Präfix wurde erfolgreich bezogen. Neues Präfix: 2003:e0:1737:d900::/56
24.09.22 00:34:00 Internetverbindung IPv6 wurde erfolgreich hergestellt. IP-Adresse: 2003:e0:17ff:37ce:3631:c4ff:fe78:6023
24.09.22 00:34:00 Internetverbindung wurde erfolgreich hergestellt. IP-Adresse: 93.238.180.223, DNS-Server: 217.237.150.205 und 217.237.149.142, Gateway: 62.155.242.193, Breitband-PoP: GIFJ01
24.09.22 00:33:56 DSL ist verfügbar (DSL-Synchronisierung besteht mit 61488/12712 kbit/s).
24.09.22 00:32:58 Internetverbindung wurde getrennt.
24.09.22 00:32:58 PPPoE-Fehler: Zeitüberschreitung.
24.09.22 00:32:48 DSL-Synchronisierung beginnt (Training).
24.09.22 00:32:17 DSL antwortet nicht (Keine DSL-Synchronisierung).
24.09.22 00:32:13 DSL ist verfügbar (DSL-Synchronisierung besteht mit 62408/12712 kbit/s).
24.09.22 00:31:04 DSL-Synchronisierung beginnt (Training).
24.09.22 00:30:48 Zeitüberschreitung bei der PPP-Aushandlung.
24.09.22 00:30:48 Internetverbindung IPv6 wurde getrennt, Präfix nicht mehr gültig.
24.09.22 00:30:48 Internetverbindung wurde getrennt.
24.09.22 00:30:45 DSL antwortet nicht (Keine DSL-Synchronisierung).
Und tatsächlich wurde eine passende Botschaft gefangen (die ersten drei sets waren von mir zum Ausprobieren):

Code: Alles auswählen

pi@heizung:~ $ cat openWBset.log 
Sep 23 16:24:05 87
Sep 23 16:24:25 88
Sep 23 21:09:29 84
Sep 24 00:34:11 84
Es scheint also sehr sicher so zu sein, daß "irgendwer" ein set an lp1 absetzt, sobald die Internetverbindung getrennt und neu aufgebaut wird. Frage ist nur, wer?
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

/var/log/mosquitto hat anscheinend den Verbindungsverlust bemerkt:

Code: Alles auswählen

1663972429: Error creating bridge: Temporary failure in name resolution.
1663972429: Client openWB-SmartHome-bulkpublisher-8736 already connected, closing old connection.
(Der Unix-Timestamp bedeutet in meiner Zeitzone Sat Sep 24 2022 00:33:49 GMT+0200)
yankee
Beiträge: 481
Registriert: Sa Mai 16, 2020 11:34 am

Re: Support: Manuell + Berechnung

Beitrag von yankee »

zut hat geschrieben: Sa Sep 24, 2022 1:31 pm

Code: Alles auswählen

#!/bin/bash
mosquitto_sub -h 192.168.1.102 -p 1883 -t openWB/set/lp/1/manualSoc | ts > openWBset.log
Mach doch mal mit `-v` und schau nach ob wenn du ein SoC einstellst direkt hinterher eine leere Nachricht kommt. Sollte so aussehen:

Code: Alles auswählen

$ mosquitto_sub -h localhost -p 1883 -t openWB/set/lp/2/manualSoc -v | ts
Sep 24 16:42:49 openWB/set/lp/2/manualSoc 55
Sep 24 16:42:49 openWB/set/lp/2/manualSoc (null)
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

So sieht es aus:

Code: Alles auswählen

pi@heizung:~ $ cat openWBset.log 
Sep 24 17:32:05 openWB/set/lp/1/manualSoc 80
Sep 24 17:32:05 openWB/set/lp/1/manualSoc (null)
Ich verwende zum Einstellen übrigens das Theme "colors" - falls das eine Rolle spielt.
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

im syslog sehe ich die dhcpcd und avahi aktiv werden:

Code: Alles auswählen

Sep 24 00:30:49 openWB dhcpcd[355]: eth0: deleting default route via fe80::3631:c4ff:fe78:601f
Sep 24 00:34:01 openWB dhcpcd[355]: eth0: adding address fd00::1853:8670:9221:df8c/64
Sep 24 00:34:01 openWB avahi-daemon[308]: Registering new address record for fe80::b8c4:f0e5:1640:51a7 o
n eth0.*.
Sep 24 00:34:01 openWB dhcpcd[355]: eth0: adding route to fd00::/64
Sep 24 00:34:02 openWB avahi-daemon[308]: Registering new address record for fd00::1853:8670:9221:df8c o
n eth0.*.
Sep 24 00:34:02 openWB avahi-daemon[308]: Withdrawing address record for 2003:e0:1726:b400:9f9:c96f:7367
:5076 on eth0.
Sep 24 00:34:02 openWB avahi-daemon[308]: Withdrawing address record for fe80::b8c4:f0e5:1640:51a7 on et
h0.
Sep 24 00:34:07 openWB dhcpcd[355]: eth0: adding address 2003:e0:1737:d900:92ed:4f15:f944:a7c1/64
Sep 24 00:34:07 openWB dhcpcd[355]: eth0: adding route to 2003:e0:1737:d900::/64
Sep 24 00:34:07 openWB dhcpcd[355]: eth0: adding default route via fe80::3631:c4ff:fe78:601f
Sep 24 00:34:07 openWB avahi-daemon[308]: Registering new address record for 2003:e0:1726:b400:9f9:c96f:
7367:5076 on eth0.*.
Sep 24 00:34:07 openWB avahi-daemon[308]: Registering new address record for fe80::b8c4:f0e5:1640:51a7 o
n eth0.*.
Sep 24 00:34:09 openWB avahi-daemon[308]: Registering new address record for 2003:e0:1737:d900:92ed:4f15
:f944:a7c1 on eth0.*.
Sep 24 00:34:09 openWB avahi-daemon[308]: Withdrawing address record for fd00::1853:8670:9221:df8c on et
h0.
Sep 24 00:34:09 openWB avahi-daemon[308]: Withdrawing address record for 2003:e0:1726:b400:9f9:c96f:7367
:5076 on eth0.
Sep 24 00:34:09 openWB avahi-daemon[308]: Withdrawing address record for fe80::b8c4:f0e5:1640:51a7 on eth0.
Sep 24 00:34:15 openWB dhcpcd[355]: eth0: deleting address 2003:e0:1726:b400:9f9:c96f:7367:5076/64
Sep 24 00:34:15 openWB avahi-daemon[308]: Leaving mDNS multicast group on interface eth0.IPv6 with address 2003:e0:1726:b400:9f9:c96f:7367:5076.
Sep 24 00:34:15 openWB avahi-daemon[308]: Joining mDNS multicast group on interface eth0.IPv6 with address 2003:e0:1737:d900:92ed:4f15:f944:a7c1.
Sep 24 00:34:15 openWB dhcpcd[355]: eth0: deleting route to 2003:e0:1726:b400::/64
Wäre es denkbar, daß systemd mosquitto als abhängigen Dienst neu startet oder die Konfiguration neu einlesen läßt? Oder daß mosquitto die persistenten Botschaften neu verschickt?
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

Wenn ich mit dem mosquitto-tool mosquitto_dump_db mir den Inhalt von /var/lib/mosquitto/mosquitto.db anzeigen lasse, finde ich die zuletzt eingestellten 84% nicht, statt dessen stolpert das Tool:

Code: Alles auswählen

./mosquitto_db_dump ~/mosquitto.db | grep -5 "lp/1"

Code: Alles auswählen

...
DB_CHUNK_MSG_STORE:
        Length: 111
        Store ID: 351096063
        Source Port: 1883
        Source MID: 0
        Topic: openWB/lp/1/manualSoc
        QoS: 0
        Retain: 1
        Payload Length: 2
:Warning: Unsupported chunk "8" in persistent database file. Ignoring.
        Expiry Time: 0
        Payload: 80
        ...
        
Das erklärt aber nicht, warum nach der Internet-Unterbrechung der zuletzt manuell eingegebene SOC unte manualSOC gesetzt wird.
yankee
Beiträge: 481
Registriert: Sa Mai 16, 2020 11:34 am

Re: Support: Manuell + Berechnung

Beitrag von yankee »

zut hat geschrieben: Sa Sep 24, 2022 4:47 pm Wenn ich mit dem mosquitto-tool mosquitto_dump_db mir den Inhalt von /var/lib/mosquitto/mosquitto.db anzeigen lasse, finde ich die zuletzt eingestellten 84% nicht, statt dessen stolpert das Tool:

Code: Alles auswählen

[..]
        Topic: openWB/lp/1/manualSoc
        QoS: 0
        Retain: 1
        Payload Length: 2
:Warning: Unsupported chunk "8" in persistent database file. Ignoring.
        Expiry Time: 0
        Payload: 80
Und du bist sicher, dass du 84% suchst und nicht 80%? Weil das steht da nämlich.
zut hat geschrieben: Sa Sep 24, 2022 4:47 pm Das erklärt aber nicht, warum nach der Internet-Unterbrechung der zuletzt manuell eingegebene SOC unte manualSOC gesetzt wird.
Was heißt das "Unsupported chunk"? Ist deine DB korrupt? Wenn ja kann das alles erklären. Keine Ahnung wie sich mosquitto dann verhält. Wobei ich dann eigentlich schon irgendwelche Fehler in der /var/log/mosquitto/mosquitto.log erwarten würde. Vielleicht also nur ein Problem von mosquitto_dump_db?

Ein Versuch wäre es wert: Wie wäre es wenn du den Mosquitto einmal ausschaltest, die DB löschst und Mosquitto wieder startest und dann mal schaust ob der Fehler noch da ist? Ich meine in openWB 1 ist in der DB nichts von dauerhafter Interesse, du solltest damit nichts kaputt machen (im Gegensatz zu oWB 2, da wird das anders). Ein Backup da zu behalten schadet aber natürlich nie...
zut
Beiträge: 609
Registriert: Di Feb 23, 2021 9:34 pm
Has thanked: 5 times
Been thanked: 11 times

Re: Support: Manuell + Berechnung

Beitrag von zut »

Ja, ich suche nach 84% - ich hatte extra nochmal manuell den SOC verändert, zuletzt auf 84%, was mein pi auch mitbekommen hat:

Code: Alles auswählen

pi@heizung:~ $ cat openWBset.log 
Sep 24 17:32:05 openWB/set/lp/1/manualSoc 80
Sep 24 17:32:05 openWB/set/lp/1/manualSoc (null)
Sep 24 18:15:20 openWB/set/lp/1/manualSoc 81
Sep 24 18:15:20 openWB/set/lp/1/manualSoc (null)
Sep 24 18:15:34 openWB/set/lp/1/manualSoc 82
Sep 24 18:15:34 openWB/set/lp/1/manualSoc (null)
Sep 24 18:16:31 openWB/set/lp/1/manualSoc 83
Sep 24 18:16:31 openWB/set/lp/1/manualSoc (null)
Sep 24 18:33:13 openWB/set/lp/1/manualSoc 84
Sep 24 18:33:13 openWB/set/lp/1/manualSoc (null)
Sep 24 18:41:57 openWB/set/lp/1/manualSoc 83
Sep 24 18:41:57 openWB/set/lp/1/manualSoc (null)
Sep 24 18:42:02 openWB/set/lp/1/manualSoc 84
Sep 24 18:42:02 openWB/set/lp/1/manualSoc (null)
Ich habe die Datenbank danach extra nochmal auf meinen aktuellen Rechner kopiert, wo ich das Tool hab drüberlaufen lassen. Ich bin auch nicht ganz sicher, ob das Auswertetool sich an einem Format einer alten Version verschluckt, aber ich habe mir die mosquitto-Datenbank geclont

Code: Alles auswählen

git clone https://github.com/eclipse/mosquitto
und das Tool kompiliert,

Code: Alles auswählen

cd mosquitto/apps/db_dump/
make
sollte also aktuell sein.

Ich werde die Datenbank als nächstes löschen und die WB neu starten. Mal sehen, ob das was bringt.
yankee
Beiträge: 481
Registriert: Sa Mai 16, 2020 11:34 am

Re: Support: Manuell + Berechnung

Beitrag von yankee »

zut hat geschrieben: Sa Sep 24, 2022 6:35 pm Ja, ich suche nach 84% - ich hatte extra nochmal manuell den SOC verändert, zuletzt auf 84%, was mein pi auch mitbekommen hat:
Mosquitto schreibt in der Standard-OpenWB-Konfig die DB nur alle 4h auf die Platte. Es hilft

Code: Alles auswählen

sudo pkill -SIGUSR1 mosquitto
Damit mosquitto einmalig die DB sofort schreibt.
Antworten