SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Anfragen zum Erstellen von Modulen, Fragen zu Modulen
Pendragon
Beiträge: 145
Registriert: Di Jan 30, 2024 5:43 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Pendragon »

hg6807 hat geschrieben: So Feb 25, 2024 8:55 am Hat jemand schon eine Lösung für bzw. über ioBroker?
Bei mir kommen gerade noch keine Werte, da ich vermutlich seit gestern abend das Fahrzeug noch nicht bewegt habe, aber das Ziel ist es die Werte über die http-Abfragen zu holen:
https://github.com/flobz/psa_car_contro ... acc_api.md
openWB series 2 custom 1/3 Umschaltung 22kW & RFID
16kWp mit Huawei Sun2000-12KTL
Opel Corsa-e mit 46kWh
Datenfluss: Datenabfrage via Solaranzeige.de (alle 20s), Verarbeitung mit Edomi und direkte Weiterleitung via MQTT
Donny
Beiträge: 15
Registriert: Mi Feb 24, 2021 9:01 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Donny »

mrinas hat geschrieben: Di Feb 06, 2024 12:54 pm Jup, ich hab' das auch eben bei mir erlebt. Hab' meine Logs eben gepostet, müsste sich das openWB Team anschauen woher das kommt.
Habt ihr hierfür schon eine Lösung gefunden.
In dieses Problem läuft mein e-208 mit OpenWB Softwarestand 2024-02-23 11:32:37 +0100 [7da01f7d3] ebenfalls immer wieder.
Interessant ist: Der SOC wird beim Einstecken richtig abgerufen, aber bei Ladebeginn (11:03) verworfen...
-> Umstellung von STOP oder StandBy auf PV

Ein aus- und wieder anstecken des Fahrzeugs ist hilfreich, aber lästig...

Code: Alles auswählen


2024-02-25 10:15:04,188 - {modules.common.store._api:30} - {INFO:store soc_ev1} - Saving CarState(soc=45, range=92, soc_timestamp=1708852400000)
2024-02-25 11:03:23,514 - {modules.common.fault_state:49} - {ERROR:fetch soc_ev1} - Tronity: FaultState FaultStateLevel.ERROR, FaultStr <class 'TypeError'> ("unsupported operand type(s) for -: 'float' and 'NoneType'",), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_vehicle.py", line 66, in update
    car_state = self._get_carstate_by_source(vehicle_update_data, source)
  File "/var/www/html/openWB/packages/modules/common/configurable_vehicle.py", line 111, in _get_carstate_by_source
    return CarState(soc=calc_soc.calc_soc(vehicle_update_data,
  File "/var/www/html/openWB/packages/modules/vehicles/common/calc_soc/calc_soc.py", line 13, in calc_soc
    imported_since_start = vehicle_update_data.imported - imported_start
TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'

[....]

2024-02-25 13:26:03,848 - {modules.common.fault_state:49} - {ERROR:fetch soc_ev1} - Tronity: FaultState FaultStateLevel.ERROR, FaultStr <class 'TypeError'> ("unsupported operand type(s) for -: 'float' and 'NoneType'",), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_vehicle.py", line 66, in update
    car_state = self._get_carstate_by_source(vehicle_update_data, source)
  File "/var/www/html/openWB/packages/modules/common/configurable_vehicle.py", line 111, in _get_carstate_by_source
    return CarState(soc=calc_soc.calc_soc(vehicle_update_data,
  File "/var/www/html/openWB/packages/modules/vehicles/common/calc_soc/calc_soc.py", line 13, in calc_soc
    imported_since_start = vehicle_update_data.imported - imported_start
TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'


2024-02-25 13:31:49,234 - {modules.common.store._api:30} - {INFO:store soc_ev1} - Saving CarState(soc=46, range=98, soc_timestamp=1708864201000)
2024-02-25 13:31:52,235 - {modules.common.store._api:30} - {INFO:store soc_ev1} - Saving CarState(soc=98, range=290, soc_timestamp=1708864205000)
Milchmann
Beiträge: 5
Registriert: Do Okt 07, 2021 2:36 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Milchmann »

Mein Workaround geht über psa_car_controller auf dem Raspi4, gestartet in crontab mit der Zeile

Code: Alles auswählen

@reboot <USER> sleep 10 && python3 /home/<USER>/.local/bin/psa-car-controller --web-conf -p 5000 -l 0.0.0.0
und Node-RED auf dem gleichen Raspi mit folgenden Nodes:

Code: Alles auswählen

[
    {
        "id": "5dcd72290d5c99a5",
        "type": "debug",
        "z": "6440f0d1b248b507",
        "name": "debug 1",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 500,
        "y": 840,
        "wires": []
    },
    {
        "id": "1845364c838762d0",
        "type": "http request",
        "z": "6440f0d1b248b507",
        "name": "",
        "method": "GET",
        "ret": "obj",
        "paytoqs": "ignore",
        "url": "http://<ip:port>/get_vehicleinfo/<yourVIN>",
        "tls": "",
        "persist": false,
        "proxy": "",
        "insecureHTTPParser": false,
        "authType": "",
        "senderr": false,
        "headers": [],
        "x": 310,
        "y": 760,
        "wires": [
            [
                "5dcd72290d5c99a5",
                "6110dd8833bebe9a"
            ]
        ]
    },
    {
        "id": "23eff85f42d02611",
        "type": "inject",
        "z": "6440f0d1b248b507",
        "name": "",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "600",
        "crontab": "",
        "once": true,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "",
        "payloadType": "date",
        "x": 110,
        "y": 760,
        "wires": [
            [
                "1845364c838762d0"
            ]
        ]
    },
    {
        "id": "6110dd8833bebe9a",
        "type": "rbe",
        "z": "6440f0d1b248b507",
        "name": "",
        "func": "rbe",
        "gap": "",
        "start": "",
        "inout": "out",
        "septopics": true,
        "property": "payload.energy[0].level",
        "topi": "topic",
        "x": 510,
        "y": 760,
        "wires": [
            [
                "368e52e00d381d88"
            ]
        ]
    },
    {
        "id": "e71f227f0a178faf",
        "type": "mqtt out",
        "z": "6440f0d1b248b507",
        "name": "SOC setzen",
        "topic": "openWB/set/lp/1/%Soc",
        "qos": "0",
        "retain": "",
        "respTopic": "",
        "contentType": "",
        "userProps": "",
        "correl": "",
        "expiry": "",
        "broker": "cd7464abf11d1ee0",
        "x": 950,
        "y": 760,
        "wires": []
    },
    {
        "id": "368e52e00d381d88",
        "type": "change",
        "z": "6440f0d1b248b507",
        "name": "",
        "rules": [
            {
                "t": "set",
                "p": "payload",
                "pt": "msg",
                "to": "payload.energy[0].level",
                "tot": "msg"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 730,
        "y": 760,
        "wires": [
            [
                "e71f227f0a178faf",
                "2aa901cced305946"
            ]
        ]
    },
    {
        "id": "cd7464abf11d1ee0",
        "type": "mqtt-broker",
        "name": "OpenWB",
        "broker": "<ip der OpenWB>",
        "port": "1883",
        "clientid": "",
        "autoConnect": true,
        "usetls": false,
        "protocolVersion": "4",
        "keepalive": "60",
        "cleansession": true,
        "birthTopic": "",
        "birthQos": "0",
        "birthPayload": "",
        "birthMsg": {},
        "closeTopic": "",
        "closeQos": "0",
        "closePayload": "",
        "closeMsg": {},
        "willTopic": "",
        "willQos": "0",
        "willPayload": "",
        "willMsg": {},
        "userProps": "",
        "sessionExpiry": ""
    }
]
Die machen eine Http-Abfrage auf den car_controller und schreiben den SOC mit MQTT auf die OpenWB.
openWB Serie2
Corsa E 09/21
Solarfabrik/Kostal Wechselrichter 10,9 kWp
Volkszähler am Zweirichtungszähler
Pendragon
Beiträge: 145
Registriert: Di Jan 30, 2024 5:43 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Pendragon »

So in der Art mache ich es jetzt auch gerade. Und wie ich gerade sehe updated der PSA-Controller den Ladezustand auch während des Ladens. Somit muss man nicht auf die Berechnung gehen :)

Da der Tronity Fehler, wie oben auch bei mir regelmäßig auftrat bin ich nun davon weg...

Nebenbei: Was habt ihr für einen Maximalstrom beim Zielladen eingestellt?
openWB series 2 custom 1/3 Umschaltung 22kW & RFID
16kWp mit Huawei Sun2000-12KTL
Opel Corsa-e mit 46kWh
Datenfluss: Datenabfrage via Solaranzeige.de (alle 20s), Verarbeitung mit Edomi und direkte Weiterleitung via MQTT
loderunner
Beiträge: 14
Registriert: Do Mai 27, 2021 9:19 am

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von loderunner »

Hallo,
leider verstehe ich nur Bahnhof. Kann mir mal einer der Experten die Sache mit dem PSA-Controller auf den Raspberry bitte Schritt für Schritt erklären? Einen Rasoberry habe ich eh' laufen für den ioBroker, vielleicht könnte der das mit erledigen? Und gibt es irgendwo eine Anleitung, wie ich die openWB in den ioBroker einbinde?
Das ganze läuft doch dann ohne ein kostenpflichtiges Abo, richtig?
Gruß
loderunner
Pendragon
Beiträge: 145
Registriert: Di Jan 30, 2024 5:43 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Pendragon »

Für den PSA-Controller lies dir mal diese Seite durch:
https://github.com/flobz/psa_car_controller

Dort ist die Installation beschrieben. Es handelt sich um freie Software, somit keine Kosten. Probiere es mit den Schritten für die Linux Installation. Ein ganz wenig musst du aber mit der Linux Shell umgehen können...
openWB series 2 custom 1/3 Umschaltung 22kW & RFID
16kWp mit Huawei Sun2000-12KTL
Opel Corsa-e mit 46kWh
Datenfluss: Datenabfrage via Solaranzeige.de (alle 20s), Verarbeitung mit Edomi und direkte Weiterleitung via MQTT
loderunner
Beiträge: 14
Registriert: Do Mai 27, 2021 9:19 am

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von loderunner »

Hallo,
Pendragon hat geschrieben: Mi Feb 28, 2024 7:32 pm Für den PSA-Controller lies dir mal diese Seite durch:
Herzlichen Dank, mache ich!
Linux und Shell ist zwar nicht mein Kerngebiet, habe ich aber schon benutzt. Mal sehen, ob ich das zum Laufen bekomme...
Gruß
loderunner
sonnencorsa
Beiträge: 69
Registriert: Mi Jul 07, 2021 11:55 am

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von sonnencorsa »

Pendragon hat geschrieben: Mi Feb 28, 2024 2:01 pm So in der Art mache ich es jetzt auch gerade. Und wie ich gerade sehe updated der PSA-Controller den Ladezustand auch während des Ladens. Somit muss man nicht auf die Berechnung gehen :)

Da der Tronity Fehler, wie oben auch bei mir regelmäßig auftrat bin ich nun davon weg...
Milchmann hat geschrieben: Di Feb 27, 2024 5:40 pm Mein Workaround geht über psa_car_controller auf dem Raspi4, gestartet in crontab mit der Zeile
(...)

Wie sind denn mittlerweile die Erfahrungen mit dem geupdateten PSA-Controller? Funktioniert das zuverlässig? Und muss man diesen Hickhack mit dem manuellen Kopieren des Codes aus der URL regelmäßig machen, oder nur einmalig bei der Installation?
Benutzeravatar
mrinas
Beiträge: 2148
Registriert: Mi Jan 29, 2020 10:12 pm
Has thanked: 8 times
Been thanked: 7 times

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von mrinas »

Das manuelle Kopieren des Codes sollte nur einmalig bei der Inbetriebnahme notwendig sein. Danach werden die Tokens automatisch aktualisiert, sofern der PSA CarController läuft.
15,2kWp SMA (SB4000TL-21, SB3.0, STP6.0-SE + BYD HVS, EnergyMeter), openWB Standard+, openWB Pro, Smart #1 (ersetzt den e2008), Tesla Model Y LR.
Lobot
Beiträge: 6
Registriert: Di Feb 09, 2021 3:29 pm

Re: SoC für den neuen Opel Corsa e (ggf. auch Peugeot 208e?)

Beitrag von Lobot »

Bei mir klappt es nun auch relativ gut über Eck:

PSA-Controller als Docker Container auf nem QNAP-> Raspberry mit FHEM holt sich zyklisch die Daten via HTTPMOD -> Änderungen werden per MQTT an die openWB gesendet :lol:

Besser als manuelle Eingabe, was man(n) durchaus mal vergessen kann und Frau dann morgens schnell ins andere Auto springen muss, weil der Akku leer ist :roll: :roll: :roll:
Antworten