Modul für E Corsa bzw. PSA

Begonnen von Chris_XXX, 12 Januar 2021, 19:53:03

Vorheriges Thema - Nächstes Thema

Chris_XXX

Hallo zusammen,

Hat es zufällig jemand geschafft den Corsa e(lektro) an FHEM anzubinden? Vom Hersteller PSA soll es wohl eine API dafür geben....

Viele Grüße
Christian

amenomade

#1
Ja, es gibt eine API für Endkunden https://developer.groupe-psa.io/webapi/b2c/overview/about/#article
Die ist für "connected cars". Heisst: nicht nur elektro, aber das ist ein anderes Service bei PSA, unabhängig vom Elektro.

Allerdings habe ich noch nichts hier im Forum diesbzgl. gesehen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

kjmEjfu

Es gibt einen (Python) Service unter https://github.com/flobz/psa_car_controller den könnte man installieren und dann über HTTP-Befehle steuern.
Schön ist das dann aber nicht ;-)
Migriere derzeit zu Home Assistant

Chris_XXX

Schön ist es nicht aber selten  ;D
Und das beste: es funktioniert. Habe mir auch so behelfen.

kjmEjfu

Magst du deinen FHEM-Teil mal teilen? Dann muss den sich nicht jeder selber nachbauen  :)
Migriere derzeit zu Home Assistant

Chris_XXX

Mach ich gerne.... bin aber momentan weit weg von meinem Fhem Server. Kann es in ca. 2 Wochen schicken falls das reicht. Wichtig ist meiner Meinung nach das man die URL mit der Cache Option verwendet. Sonst weckt er das Auto dauernd auf

karpate

Hallo, melde auch Interesse an.
Für ioBroker gibt es anscheinend einen Adapter (https://www.iobroker.net/#de/adapters/adapterref/iobroker.psa/README.md). Dann wäre eventuell noch eine Möglichkeit ioBroker zu nutzen und dies mit FHEM zu verbinden. Auch nicht schön...
# Pi3 (BBB;FB7390)
# TCM310, CUL V4, HM-CFG-LAN,JeeLink,Tradfri,ESP32-Cam@MQTT: Wasseruhr

Chris_XXX

Hallo,

hier der Teil wie ich es in FHEM gebracht habe. Wie bereits erwähnt ist das PSA Skript dafür Voraussetzung.

defmod Corsa HTTPMOD http://w.x.y.z:5000/get_vehicleinfo/EureFIN?from_cache=1 300
attr Corsa DbLogExclude .*
attr Corsa DbLogInclude timed_odometer_mileage,energy_01_level
attr Corsa disable 0
attr Corsa enableControlSet 1
attr Corsa event-on-change-reading timed_odometer_mileage:2,energy_01_level,energy_01_autonomy,energy_01_charging_status,energy_01_charging_plugged
attr Corsa extractAllJSON 1
attr Corsa reading01Name Ladung
attr Corsa reading01Regex "level": ([\d\.\d]+)
attr Corsa room E-Auto
attr Corsa showBody 0
attr Corsa stateFormat {sprintf("Ladung: %.1f Prozent %.2f km Reichweite", ReadingsVal($name,"energy_01_level",undef), ReadingsVal($name,"energy_01_autonomy",undef))}
attr Corsa verbose 0


Das bringt mir einiges an Werten inklusive den Ladestand in FHEM.

Viele Grüße
Christian

Ajuba

Danke Chris für deinen Fhem Teil. Damit habe ich es gestern relativ schnell zum Laufen gebracht und mich über die Daten gefreut.
Zitat von: Chris_XXX am 11 September 2021, 12:15:33
Hallo,
hier der Teil wie ich es in FHEM gebracht habe. Wie bereits erwähnt ist das PSA Skript dafür Voraussetzung.
Das bringt mir einiges an Werten inklusive den Ladestand in FHEM.
Viele Grüße
Christian

Heut Früh war es aber schnell vorbei mit der Freude weil mir einige Dinge aufgefallen sind:

  • Obwohl heute an der Skript-Weboberfläche aktualisierte Werte vorhanden waren waren das letzte HTTPMOD Update gestern Abend. Erst durch löschen von "from_cache=1 300" kam ich an die aktuellen Werte.
  • Am Abend reagierte die Weboberfläche nicht mehr.
  • Ich lasse das Python Skript in einem QNAP Container laufen und habe diesen kurzerhand neu gestartet. Nach dem Neustart des Skripts im Container musste ich mich wieder komplett neu bei Peugeot anmelden mit Passwort und SMS PIN.

Deshalb ein hätte ich paar Fragen an euch:

  • Wie schnell kommen Updates bei euch?
  • Wie stabil läuft das Skript bei euch?
  • Müsst ihr euch bei einem Neustart auch wieder komplett registrieren?
FHEM auf RPi3, Homematic CCU3 mit Cuxd und CUL 868 für FS20, Siemens S7 über CP343-1,
DbLog zu MySQL auf NAS QNAP TS-253D,
Yeelight

Chris_XXX

Hallo,

also ich kann bei mir nicht klagen. Klappt super und das vom Cache. Es sei denn der PSA Server zickt mal wieder. Ich lasse das Script aber auch nicht in einem Container laufen.

VG
Chris

mahil

Hallo,

eine kleine möglicherweise hilfreiche Ergänzung zu den obigen Einstellungen mit der man die Standheizung bzw. den Ladevorgang steuern kann:


attr MeinAuto set01Hint 0,1
attr MeinAuto set01Name Standheizung
attr MeinAuto set01URL http://<ip>:5000/preconditioning/MeineFIN/$val
attr MeinAuto set02Hint 0,1
attr MeinAuto set02Name laden
attr MeinAuto set02URL http://<ip>:5000/charge_now/MeineFIN/$val
Raspberry Pi4; CUL_MAX: MAX! Heizkörperthermostat basic; Zigbee über Deconz ConBee II: Xiaomi (Thermostate, Fenstersensoren, Bewegungsmelder), Ikea (Bewegungsmelder, Repeater, Leuchtkörper); Shelly: Dimmer, Schalter; Tasmota: Steckdosen, Rollladenschalter

beimaik

@mahil vielen Dank!

die Position des Fahrzeugs scheint aber nicht ermittelt zu werden oder?

Ralli

#12
Hallo zusammen,

ich hole den alten Thread mal hoch. Ich habe gemäß Anweisung das Python-Script installiert und zum Schluss


psa-car-controller --web-conf


aufgerufen. Da bleibt er dann aber bei "2022-07-07 18:14:54,250 :: INFO :: update_data" hängen. Hatte das auch jemand? Gibt's irgendwo noch Logs außer dem mageren im Home-Verzeichnis?
Gruß,
Ralli

Proxmox 8.1 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.6.20240316) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa

mahil

Hi Ralli,

hast du versucht dich mit dem Webinterface unter http://localhost:5000 zu verbinden?
Raspberry Pi4; CUL_MAX: MAX! Heizkörperthermostat basic; Zigbee über Deconz ConBee II: Xiaomi (Thermostate, Fenstersensoren, Bewegungsmelder), Ikea (Bewegungsmelder, Repeater, Leuchtkörper); Shelly: Dimmer, Schalter; Tasmota: Steckdosen, Rollladenschalter

Ralli

#14
Ich gestehe: nein, habe es von einem anderen Rechner aus versucht. Der Rechner, auf dem das Python-Script läuft, ist headless und ohne GUI.

Edit: Binden an die LAN-IP geht mit dem Parameter "-l", dann komme ich drauf.
Gruß,
Ralli

Proxmox 8.1 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.6.20240316) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa