Modul für Steuerung einer Go-ECharger Wallbox [= go-e oder go-echarger]

Begonnen von LR66, 16 April 2020, 19:50:12

Vorheriges Thema - Nächstes Thema

Stonemuc

Auch wenn ich auf die letzte Frage noch keine Antwort bekommen habe und mir per HTTPMOD geholfen habe und den aktuellen Phasenwert angreife, hier mal meine nächste Frage.

Ich hab einen Opel Mokka-e - dieser schläft ja immer nach einer gewissen Zeit ein und der Status vom Fahrzeug heißt dann "...warten auf Fahrzeug". Ich kann dann die Ladung aus FHEM heraus nicht starten....aus der App geht es aber, da sie dann erst das Aufwachsignal über "Ausstrecken simulieren" sendet. Kann ich das auch aus dem goE Modul schicken?
FHEM aus Raspberry PI 3 B+, Haussteuerung auf EnOcean Basis, Tecalor THZ 404eco Wärmepumpe

Eckat

Gute Frage. Mein e-Niro schläft nicht so tief ein.

Mit welcher App machst du das denn? Mit der vom go-eCharger oder der von Opel?

Stonemuc

Aus der go-E App lässt er sich problemlos wecken, da die ja dann ein "Ausstecken" und "Wiedereinstecken" des Kabels simuliert - geht aber meinesWissens erst ab der V3 Version vom go-E Charger, deshalb hatte ich mir auch bewusst die Version geholt.
Aber aus FHEM heraus kann ich die Ladung dann nicht starten, wenn das Auto "so tief" eingeschlafen ist.
FHEM aus Raspberry PI 3 B+, Haussteuerung auf EnOcean Basis, Tecalor THZ 404eco Wärmepumpe

Eckat

Ich habe jetzt letztens eine V3 als Garantietausch bekommen, hatte aber noch keine Zeit mich näher mit den Unterschieden beschäftigen zu können.

Das aktuelle Modul in fhem ist für die damals einzige Version 1 der API geschrieben worden.
Soweit ich es mitbekommen habe, gibt es einige neue Funktionen der V2 API, die z.B. auch "einfacher" die Phasenumschaltung kann.
Meine Vermutung ist, dass dieses Problem mit dem Nicht-Aufwecken mit der V2 API machbar wäre.

Jetzt müsste "nur" jemand für die V2 ein fhem-Modul schreiben oder die neue Version in das bestehende integrieren, z.B. mit einer Einstellung, welche Version genutzt werden soll.
Ich habe bisher kaum was in Perl gemacht, würde mich grundsätzlich gerne damit beschäftigen. Aber aktuell fehlt einfach die Zeit.

xerion

Die API Version sagt nichts über die Umschaltmöglichkeit der Phasen, das ist bei beiden API´s möglich. Wichtig ist das man einen V3 hat.
Ich habe mal eine neue Version erstellt wo man mit set force_single_phase die Phasen umstellen kann. Zusätzlich gibt es nun das Reading force_single_phase wo man den Status sehen kann.
Bitte mal testen.

Zur Info: Bin kein Programmierer sondern versuche nur zu Helfen.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

xerion

Zur Info:
Die neue Version (0.2.3) ist auch ab sofort über den FHEM Update Prozess installierbar, sofern ihr den Updateprozess wie auf Seite 1 beschrieben, hinzugefügt habt.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

DerTom71

Hallo,

die Temperaturen des Controllers kann man ab V3 mit dem Parameter "tma" auslesen. (tma ist ein array[1])
Ich habe dafür folgenden Patch bei mir eingefügt. Könnte man das so oder ähnlich in das offz. Modul übernehmen? Danke.

}elsif($r eq 'tma'){
my @vtmp=@{$responsedata->{'tma'}};
$tmpr='tma1';
$tmpv=sprintf("%.1f",$vtmp[0]);
readingsBulkUpdate($hash,$tmpr,$tmpv);
$tmpr='tma2';
$tmpv=sprintf("%.1f",$vtmp[1]);
readingsBulkUpdate($hash,$tmpr,$tmpv);
$r="";
}

DerTom71

Hallo,

ich habe 2 Charger. Einer mit FW 053.3 und einer mit FW 054.7. Diese Verhalten sich im STATE unterschiedlich.
Ich vermute das mit FW 054.7 etwas am  Paramter alw geändert wurde. Und zwar wird ohne Auto (car=1) jetzt alw=0 vom charger zurückgegeben.
Daher bekomme ich im STATE (FW 054.7) jetzt ein "not_allowed" und nicht wie früher ein "ready_no_car".

Im Modul ist dafür diese Zeile verantortlich. Die Abfrage auf alw macht eigentlich keinen Sinn, oder ?

$tmpv=sprintf("%d",($responsedata->{car}));
   if ($tmpv ==1){
      if (($responsedata->{alw})==1){
         $tmpstate='ready_no_car';
      }else{
          $tmpstate='not_allowed';
      }



isy

Ein Weg wird erst zu einem Weg, wenn man ihn geht

xerion

Ich habe eine neue Version mit den o.g. Vorschlägen erstellt. Bitte wie auf Seite 1 beschrieben updaten und testen.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

DerTom71

Ich habe jetzt die Version 0.2.4 vom git probiert:
---
"not_allowed" und "ready_no_car" funktionieren bei mir jetzt.
---
tma sind bei V3 nur 2 Werte, daher folgende Warnungen im log:
Use of uninitialized value $vtmp[2] in sprintf at ./FHEM/46_GoECharger.pm line 908
Use of uninitialized value $vtmp[3] in sprintf at ./FHEM/46_GoECharger.pm line 911
Use of uninitialized value $vtmp[4] in sprintf at ./FHEM/46_GoECharger.pm line 914
Use of uninitialized value $vtmp[5] in sprintf at ./FHEM/46_GoECharger.pm line 917
-----
Aber irgenwie funktionieren einige readings bei mir nicht mehr richtig. Alle readings sind doppelt vorhanden.
z.B. gibt es bei mir jetzt das reading "pha" und "phases_available" oder "rbc" und "reboot_counter".
So wirklich einen Fehler im Modul kann ich aber nicht finden.

xerion

setze Mal das Attribut used_api_keys neu, dann werden die Readings neue gesetzt. Bei mir sieht das alles gut aus. Und nach dem Update am besten einen FHEM Neustart durchführen.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

xerion

Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

DerTom71

Dankeschön. Ein neu setzen von used_api_keys und alles geht wieder.

Nochmal zum "tma". Im Modul steht "tma" jetzt 2x drin:
tma      =>   'temperature_tma',      #R# Temperatur des Controllers in °C (ersetzt ab V3 tmp)
tma      =>   'curr_sense_Typ2',      # Array 0,1,2,3,4 Stromsensoren Typ2

Ist das egal ?

xerion

Zitat von: DerTom71 am 28 Oktober 2022, 19:48:20
Dankeschön. Ein neu setzen von used_api_keys und alles geht wieder.

Nochmal zum "tma". Im Modul steht "tma" jetzt 2x drin:
tma      =>   'temperature_tma',      #R# Temperatur des Controllers in °C (ersetzt ab V3 tmp)
tma      =>   'curr_sense_Typ2',      # Array 0,1,2,3,4 Stromsensoren Typ2

Ist das egal ?

In der V1-API Doku habe ich nichts darüber gefunden das tma mal curr_sense_Typ2 war. Habe es entsprechend entfernt.
Neu ist euch eine einfache "Erkennung" ob es ein V3 oder V2 ist, damit es keine Probleme mehr beim "tma Array" gibt. Auch kann man nun nur noch die Phasen per set umschalten wenn ein V3 erkannt wurde.
Zur Info:Die Erkennung läuft jetzt erst mal einfach über das Auslesen der Firmware Version.
Welche HW erkannt wurde, kann man im reading "hardware" erkennen.

Viel Spaß beim testen.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880