[Modul] Tesla

Hallo Kai,
ist es möglich die Reifen drücke mit in das Modul mit aufzunehmen, die sollen jetzt auch in API mit eingeflossen sein? Vieleicht nicht essentiell wichtig, aber nice to have.

Gruß Torsten

1 „Gefällt mir“

ja, das wäre auch noch geil!!

würde ich sofort tun, ich weiß aber nicht wie man mit IPS View einzelne Seites exportiert.
Und du musst natürlich IPS View nutzen.
wenn du es hast kopiere ich einfach gleich alles in ein neues View und werfe die hardlinks mit PWs raus, dann hast du halt mein ganzes Haus.

Ich muss dazu sagen, da sind aber noch extras drin, das sollte ic per TeamViewer zeigen.

  1. Milen in KM umrechnen
  2. Euros ist meien Wallbox
  3. Ladestrom ist aktuell meine Wallbox, könnte man aber sicher aufs Auto ändern.
  4. Für Lüftung aus und an sind schon diverse skripte nötig das es geht. der Wacht ja nicht immer sofort freiwilig auf. udn dann ist das skript ggf. durch, daher brauchst du die auch .
  5. Ladelimit habe ich einen Ablaufplan gebaut, könnte man auch kopieren oder oben den Befehl nehmen den ich nicht kannte.
  6. gibt noch geile featueres die hier nicht sichtbar sind.
  • PC in der Firma fährt hoch wenn ich auf den Parkplatz fahre
  • Klima geht an wenn ich den PC runterfahre und es kalt oder warm ist
  • Ladelimit nach standort (50% Zuhause, 80% Firma, 90% sonst wo)
  • Geofances für funktionen wie gartenbeleuchtung, coming home light
  • und so weiter…

Ja, ich benutze auch IPSView…aber ich kann das eigentlich auch alles selber umsetzen…da brauch ich deine Zeit nicht zu belasten, die Idee es so zu machen find ich super und hat mich schon inspiriert, ich bastele sowieso grad an den Ladelimits je Ort … ich weiß ja jetzt wen ich fragen kann bei Problemen :slight_smile: . Eins aber, wo hast du das Image vom Auto her ?
Gruß Michael

hi, das weiß ich nicht mehr. ich schicke es Dir als PN. freue mich auf auf deine Lösung, evlt. gibt es da ja noch ideen für mich.
Kannst gerne immer fragen. Vieles muss man ja nicht doppelt überlegen.

Ich schließe mich natürlich dem Dank an @Dustin723 an :relieved:. Über den von ihm mitgeteilten „geheimen“ Link hab ich mir wohl das geholt, was man bei anderen Anwendungen „Magic Numbers“ nennt. Das Feld „Fahrzeuge“ in der Splitter-Konfiguration erschien allerdings erst, nachdem ich mir mit einer App auf meinem Handy den RefreshToken erzeugt und eingetragen habe.

So richtig läuft das Modul bei mir aber ohne eine zusätzlich Skript-Unterstützung nicht: Die Polls des Moduls IPS-TeslaCharging ließen meinen Tesla nicht mehr „einschlafen“, erst nachdem ich dort das Intervall auf 86400 (1 Tag) gestellt hatte, ging er in den Tiefschlaf.
Ich war dann vorgestern unterwegs nachdem ich verschiedene Variablen auf Archiv gelegt habe und den Intervall auf 60 zurückgestellt hatte: Im Objekt-Baum von IPS konnte ich dann sehen, dass nur die Variablen aus dem Bereich Charging verändert worden sind!!
Auf Deiner Webseite fand ich dann in der etwas kargen Beschreibung das Kommando Tesla_FetchData (funktioniert bei mir nicht mit IPS-TeslaVehicleControl):

Fatal error: Uncaught Exception: Instance does not implement this function in /var/lib/symcon/scripts/__generated.inc.php:270
Stack trace:
#0 /var/lib/symcon/scripts/Test.ips.php(25): Tesla_FetchData(58132)
#1 {main}
thrown in /var/lib/symcon/scripts/__generated.inc.php on line 270

Zuverlässig funktioniert die Variable State (Standby/Online). Ich werde mein Skript darauf triggern und während des Online-Status die verschiedenen Module triggern.

Durch einen „Anstoss“ in diesem Thread bin ich auch noch auf den Gedanken gekommen, nach anderen undokumentierten Aufrufen zu suchen:

6.1 05.03.22 14:21:24
Instanz 58132 Geraete\DAMY\Steuerung\TeslaVehicleControl hat folgende Funktionen:


[variant] - Tesla_ActivateSpeedLimit(integer $InstanceID, integer $value);
[variant] - Tesla_ActuateTrunk(integer $InstanceID, string $value);
[variant] - Tesla_AutoConditioningStart(integer $InstanceID);
[variant] - Tesla_AutoConditioningStop(integer $InstanceID);
[variant] - Tesla_ChargeMaxRange(integer $InstanceID);
[variant] - Tesla_ChargePortDoorClose(integer $InstanceID);
[variant] - Tesla_ChargePortDoorOpen(integer $InstanceID);
[variant] - Tesla_ChargePortStandard(integer $InstanceID);
[variant] - Tesla_ChargeStart(integer $InstanceID);
[variant] - Tesla_ChargeStop(integer $InstanceID);
[variant] - Tesla_ClearPinSpeedLimit(integer $InstanceID, integer $value);
[variant] - Tesla_DeactivateSpeedLimit(integer $InstanceID, integer $value);
[variant] - Tesla_DoorLock(integer $InstanceID);
[variant] - Tesla_DoorUnlock(integer $InstanceID);
[variant] - Tesla_FlashLights(integer $InstanceID);
[variant] - Tesla_HonkHorn(integer $InstanceID);
[variant] - Tesla_MediaNextFav(integer $InstanceID);
[variant] - Tesla_MediaNextTrack(integer $InstanceID);
[variant] - Tesla_MediaPrevFav(integer $InstanceID);
[variant] - Tesla_MediaPrevTrack(integer $InstanceID);
[variant] - Tesla_MediaTogglePlayback(integer $InstanceID);
[variant] - Tesla_MediaVolumeDown(integer $InstanceID);
[variant] - Tesla_MediaVolumeUp(integer $InstanceID);
[variant] - Tesla_RemoteSeatHeaterRequest(integer $InstanceID, integer $heater, integer $level);
[variant] - Tesla_RemoteStartDrive(integer $InstanceID);
[variant] - Tesla_RemoteSteeringWheelHeaterRequest(integer $InstanceID, boolean $value);
[variant] - Tesla_ResetValetPin(integer $InstanceID);
[variant] - Tesla_SetChargeLimit(integer $InstanceID, integer $value);
[variant] - Tesla_SetChargingAmps(integer $InstanceID, integer $value);
[variant] - Tesla_SetSentryMode(integer $InstanceID, boolean $value);
[variant] - Tesla_SetSpeedLimit(integer $InstanceID, integer $value);
[variant] - Tesla_SetTemps(integer $InstanceID, float $driver_temp, float $passenger_temp);
[variant] - Tesla_SetValetMode(integer $InstanceID, integer $pin, boolean $value);
[variant] - Tesla_State(integer $InstanceID);
[variant] - Tesla_SunRoofControl(integer $InstanceID, string $value);
[variant] - Tesla_WakeUP(integer $InstanceID);

Nochmal vielen Dank für das Modul.

Viele Grüße
Harald

Ihr könntet mal schauen, wo der Reifendruck in der API zu finden ist, dann baue ich das ein.

Grüße,
Kai

Hallo Kai,

gefunden https://tesla-api.timdorr.com/vehicle/state/vehiclestate

"tpms_pressure_fl": 0.0,  
"tpms_pressure_fr": 0.0,
"tpms_pressure_rl": 0.0,
"tpms_pressure_rr": 0.0,

Gruß, Peter

Hallo @KaiS ,

soweit ich es verstanden habe, sollte ein Feld Fahrzeuge erscheinen, sobald der Login erfolgreich war:

Sowohl im Modul-Debug-Log erhalte ich keine Ausgaben und auch das Feld Fahrzeuge erscheint nicht.
Woran könnte es scheitern?
Wie kann ich den Fehler eingrenzen?

Gruß

Jürgen

Ich erhalte in refreshToken() folgende Rückmeldung:

refreshToken | API RESULT: {„error“:„invalid_request“,„error_description“:„Internal server error“,„error_uri“:„https://auth.tesla.com/error/reference/…“}

Ideen zur Fehlereingrenzung?

Bist du sicher, dass die ersten 6 Felder im Tesla-Splitter richtig eingegeben sind?
Gruß, Peter

Hallo @pitty ,

die ersten 6 Felder?
Dachte man benötigt nur eMail, Passwort, CliendID und ClientSecret.
Was muss man denn bei AccessToken und RefreshToken eingeben?

EDIT: Vielen Dank für den Hinweis!
Habe von nachfolgender Seite die AccessToken + RefreshToken kopiert und eingefügt:

Nun erhalte ich bei Fahrzeug eine 6 stellige Zahlenfolge zur Auswahl und im Log folgende Meldung:

ForwardData | {„DataID“:"{xxxx}",„Buffer“:{„Command“:„ChargingState“,„Params“:""}}
sendRequest | sent at: 1648402949 token expires at: 1648431491, valid for: 28542
sendRequest | https://owner-api.teslamotors.com/api/1/vehicles/xxxx/data_request/charge_state
sendRequest | 408:
ForwardData | false

Ich denke jetzt bin ich einen Schritt weiter.
Woran könnte es nun scheitern?

War der Tesla bei der Abfrage wach?
Bei Fahrzeug sollte der Name erscheinen, der im Tesla vergeben wurde.

Hm… Keine Ahnung. Woran sehe ich das.
Soeben lädt er und ich habe nachgesehen. Nun kommen auch Werte an.
Vielen Dank!

Habe keinen eigenen Namen definiert, daher werden scheinbar die letzten Stellen der VIN angezeigt.

Ich bin immer wieder froh, dass ihr euch in diesem Thread gegenseitig helft, ohne Tesla kann ich sowas immer sehr schwer nachvollziehen.

Grüße,
Kai

1 „Gefällt mir“

Du hast doch noch „meinen“ :slight_smile: hab die Freigabe nie rausgenommen.

Ja, das aber ich spiele damit ja nicht einfach rum. :wink:

Grüße,
Kai

Der Reifendruck sollte nun in der aktuellen Beta Version vorhanden sein.
Könnt ihr das mal bitte testen?

Grüße,
Kai

die Variablen für Reifendruck sind da und werden auch aktualisiert.
Da der Tesla steht, ist der Wert immer 0
Ich habe eine Variable mal logging gestellt, kann aber erst morgen sagen, ob da auch was brauchbares ankommt.

Hat schon jemand eine Idee, wie man die Werte nutzen kann?

Grüße, Peter

Moin, steht bei mir auch auf 0.
Aber sehr coole Funktion, wenn es geht. Mein Auto hat mich heute morgen gerade angequarkt das VL zuwenig ist.

@KaiS du kannst zum testen gerne mein Auto nutzen.
Nur danach den Abruf deaktivieren, sonst geht der nicht ins den Standby und nukelt am Akku.