Tasker & Teslalogger mit Android

Zum Hauptartikel “Teslalogger mit Raspberry Pi 3+ MySql + Grafana” geht es hier: LINK

Wie man in den FAQs nachlesen kann, darf man nicht auf die API zugreifen, ansonsten kann das Fahrzeug nicht in den Sleep Modus gehen und verbraucht so bis zu 4 kWh am Tag. Deshalb kann es hin und wieder vorkommen, dass maximal 21 Minuten an Daten fehlen.

Um das zu umgehen, kann man dem Teslalogger mit einem Trick sagen, dass er jetzt wieder zuhören soll. Am einfachsten kann man das mit der APP Tasker machen.

Sobald das Smartphone sich mit der Bluetooth-Freisprecheinrichtung verbindet, sendet Tasker ein HTTP-Get Befehl an unseren Teslalogger und der weiß dann, dass er jetzt wieder Aktiv werden soll.

Voraussetzungen

  • Teslalogger Version 1.14.0.0 (24.01.2019) oder höher.
  • Tasker App

Das Teslalogger Update wird hier erklärt.

Einrichtung Tasker

In Tasker unter Profile ein neues Profil hinzufügen.

“Status” auswählen. Dann “Netzwerk”. Dann “Bluetooth verbunden”.
In Name und Adresse den Tesla auswählen.

“Neuer Task” zum Profil auswählen.
Einen Namen geben. z.B. “Teslalogger”

“+” Auswählen und “Netzwerk”. Dann “HTTP Request”

Unter URL muss “https://teslalogger.de/wakeup.php” stehen.
Unter “Query Parameters” muss das stehen, was im Logfile beim Neustart vom Teslalogger steht.

24.01.2019 09:48:15 : Tasker Config:
Server Port : https://teslalogger.de
Pfad : wakeup.php
Attribute : t=1234abcd

Tasker muss immer laufen. Leider ist da Android ziemlich restriktiv. Darum muss man ein paar Tricks anwenden um Tasker immer im Hintergrund laufen lassen zu können. Je nachdem was für ein Gerät man hat, muss man andere Dinge einstellen. Hier kann man nachlesen, was man machen sollte.

Funktionsprüfung

Wenn Tasker richtig installiert wurde und die Aktuellste Teslalogger Version installiert ist, dann kann man eine Funktionsprüfung durchführen.

  • Zum Auto gehen und warten bis das Smartphone automatisch mit der Freisprecheinrichtung verbunden ist.
  • Teslalogger neu Starten

Beim Neustart des Teslalogger wird überprüft ob das Webservice vom Tasker aufgerufen wurde. Wenn alles geklappt hat, dann steht im Logfile vom Teslalogger:

 24.01.2019 10:24:40 : TaskerWakeupfile available! [Webservice] 

Wollte der Teslalogger gerade aufhören mit dem Fahrzeug zu kommunizieren, dann sieht man im Logfile:

24.01.2019 10:20:28 : Waiting for car to go to sleep 8
24.01.2019 10:21:29 : Waiting for car to go to sleep 9
24.01.2019 10:22:29 : TaskerWakeupfile available! [Webservice]
24.01.2019 10:22:29 : Wakeupfile prevents car to get sleep
24.01.2019 10:22:31 : online
Wenn du meinen Blog unterstützen möchtest, dann würde ich mich über eine kleine Spende freuen:

11 Gedanken zu „Tasker & Teslalogger mit Android“

  1. Ich habe bei mir den Port 26 verwendet.

    Wenn ich jetzt über den Browser:
    http://xyz.ddns.net:26/wakeup.php

    aufrufe, dann funktioniert es. auch von extern, z.B. am Handy über LTE im Browser.

    Wenn ich aber im Tasker bei “Server:Port” die 26 eintrage und bei “Pfad” dann xyz.ddns.net/wakeup.php

    Dann will der Tasker die URL: “http://26/xyz.ddns.net/wakeup.php” aufrufen, aber das funktioniert natürlich nicht, ich kann aber leider im Tasker das Feld “Port” nicht leer lassen und im Feld “Pfad” dann die URL so hinterlegen wie es im Broswer funktioniert.

    Was mache ich da falsch? Geht es wirklich nur über den Port 80, den würde ich von extern hierfür nicht verwenden wollen…

    1. Ok, habe meinen Fehler selbst gefunden!
      Ich dachte “Server:Port” steht nur für den Port aber ok, klar, da muss in dem Fall “xyz.ddns.org:26” rein. Alles klar! Jetzt geht es.

  2. Hallo Christian

    heisst, das, ich muss die Webseite vom Raspberry quasi öffentlich zugänglich machen, damit der Wakeup funktioniert?
    Tasker habe ich, funktioniert noch nicht so ganz für mich (wollte anhand meiner Femto-Zelle zuhause schalten, ob das Handy zuhause ist oder nicht). Aber praktisch müsste ich damit auch ein VPN starten können und dann den Wakeup “senden”. Habe mir jetzt mal den Raspi bestellt (mein 2er ist vermutlich zu alt) und berichte dann gerne, ob das klappt.

        1. Ja, das geht. Du musst quasi nur den “Wakeup” – Button simulieren.
          Die Einstellung in Tasker:
          Server:Port “http://deineadresse.de”
          Path: wakeup.php
          Attribute: Brauchst du nicht

          Ich habs nicht getestet, sollte aber gehen. Wenn nicht, dann melde dich bitte nochmal

  3. Hallo Christian!

    Dein Projekt ist sensationell. Bin sehr begeistert.

    2 Fragen hätte ich:
    1) Spricht etwas dagegen die gosleep.php als Exit-Bedingung für die Bluetoothverbindung beim Tasker einzubauen oder ist das deiner Mng nach nicht notwendig?
    2) Ich hab heute erstmals im Grafana(Trip Dashboard) bei einem Trip im Verbrauch und bei der RangeDiff keine Werte. Hast du eine Ahnung woran das liegen kann?

    1. 1) nicht notwendig.
      2) ich hab vom Problem gehört. Meine Vermutung ist, dass beim Losfahren das Batteriemanagement noch keine Daten über Ladestand kennt, so dass ich keine Differenz bilden kann. Ich bin an einem Workaround dran.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.