Dienstag, 22. August 2017

Tesla Fahrtenbuch DIY


Ein Fahrtenbuch zum selber machen? Ja, für den Tesla ist das "relativ" einfach.
Angefangen hatte alles damit, das Johannes mir gezeigt hat, das es eine "Äpp" gibt, mit der man einige Funktionen vom Tesla aufrufen kann, die nicht bei der Original-Tesla-App vorhanden sind.

Interessant. 

Dabei ist mir aufgefallen, das es in beiden Fällen (also Tesla-App und Dritt-App) mehr oder weniger notwenig ist, die Zugangsdaten für myTesla weiter zu geben. Da es damit auch möglich ist, den Wagen zu öffnen und zu starten, war das etwas, was mir gar nicht zusagte. 

Denn wer garantiert, das die Zugangsdaten die in der Fremdapp eingeben werden müssen, nicht mißbraucht werden. Schließlich ist darüber sichtbar wo erstens das Fahrzeug ist und zweitens kann ich eben den Wagen öffnen.

Also keine Lösung für mich. Ich wollte eine Website generieren, auf der die Person, die gerade mit dem Wagen unterwegs ist, sehen kann, wie das Fahrzeug gerade geladen wird. Das war meine erste Idee. Denn die Website kann man sich auf sein Smartphone holen und bekommt dann alle relevanten Daten. Stromstärke, voraussichtliche Ladezeit und Ladestand.

Nur woher kommen die Daten? Da eine Dritt-App Zugriff auf Tesla-Daten hat, muß es doch eine Schnittstelle geben? Ja, die gibt es.

Und so sieht ein Teil der abgefragten Daten aus dem Netz aus:

{u'user_charge_enable_request': None,
 u'time_to_full_charge': 0.0,
 u'charge_current_request': 16,
 u'charge_enable_request': True,
 u'charge_to_max_range': False,
 u'charger_phases': None,
 u'battery_heater_on': False,
 u'managed_charging_start_time': None,
 u'battery_range': 233.36,
 u'charger_power': 0,
 u'charge_limit_soc': 81,
 u'charger_pilot_current': 32,
 u'charge_port_latch': u'Engaged',
 u'charger_actual_current': 0,
 u'scheduled_charging_pending': False,
 u'fast_charger_type': u'<invalid>',
 u'usable_battery_level': 79,
 u'motorized_charge_port': False,
 u'charge_limit_soc_std': 90,
 u'not_enough_power_to_heat': False,
 u'battery_level': 79,
 u'charge_energy_added': 3.78,
 u'charge_port_door_open': True,
 u'max_range_charge_counter': 0,
 u'timestamp': 1503421956501L,
 u'charge_limit_soc_max': 100,
 u'ideal_battery_range': 186.69,
 u'managed_charging_active': False,
 u'charging_state': u'Complete',
 u'fast_charger_present': False,
 u'trip_charging': False,
 u'managed_charging_user_canceled': False,
 u'scheduled_charging_start_time': None,
 u'est_battery_range': 191.61,
 u'charge_rate': 0.0,
 u'charger_voltage': 0,
 u'charge_current_request_max': 32,
 u'eu_vehicle': True,
 u'charge_miles_added_ideal': 12.0,
 u'charge_limit_soc_min': 50,
 u'charge_miles_added_rated': 14.5}

Ist natürlich nicht so toll.
Aber immerhin. Alle 2 Minuten rufe ich die Daten über die Tesla-API ab. Das besorgt ein Raspi3 für mich. Vollautomatisch.

Problem dabei: wenn der Tesla keine Funkverbindung hat, kommen keine aktuellen Daten. Die werden auch nicht nachgeliefert, wenn später die Verbindung neu zustande kommt.

Um die Daten zu bekommen muß ich hier also meine Zugangsdaten zu myTesla nutzen. Es lassen sich darüber auch mehrere Fahrzeuge verwalten. Das mache ich hier, mangels Masse, nicht.

Ein bißchen Webaufbereitung darf da ruhig hinein. Das sieht dann z.B. so aus:


Di, 22.08.2017 19:20:12
km Stand: 90298
Fahrzeug steht
-

27777 Ganderkesee
An der Loge 56

Strom: Lesefehler: Kein Wert A
DC Leistung (410V): DC Leistung nicht kalkulierbar
Kapazität: 79% = ca. 67.15 kWh
Reichweite: ca. 308 km

Ladestatus: Complete
Rest-Ladezeit: 0:00 Std.
Leistung: 0kW
geladen: 3.68 kWh


Et viola, damit war ich dann schon einen Schritt weiter. Alleine mit den Daten muß ich also meine Zugangsdaten nicht weiter geben und verweise nur auf den Weblink. Hätte ich eine Autovermietung, könnte man diesen Link natürlich auch noch hinter einen Anmeldebildschirm legen, den man für jeden Mieter neu einrichtet.

Besonders schön ist die Anzeige der Ortsangabe statt der Koordinaten.

Und man kann mehr aus den Daten machen. Wie hier im Blog bereits beschrieben, habe ich für die Zoe eine RaspiCam, die regelmäßig Bilder ins Netz schickt. Zusammen mit den Daten, wo sich das Fahrzeug gerade befindet. Aufbereitet auf einer OpenStreetMap Karte, die sich automatisch aktualiert. Die Idee ist geklaut von Glympse, mit dem Unterschied, das hier die komplette Tour dargestellt wird und jede einzelne Tour abgelegt wird.

Also ist schon fast alles da, um das auch für den Tesla zu nutzen.

Das Ergebnis sieht man hier oben. Auf dieser Website befindet sich die aktuelle bzw. letzte Strecke die gefahren wurde und gleichzeitig die Ladedaten.

Da Fahrt und Ladung ausgewertet werden kann, war es da nur noch ein kleiner Schritt zum Fahrtenbuch:


Während die Karte immer rechts fixiert bleibt, kann man mit dem Scrollbalken ganz rechts die Einträge auf der linken Seite rauf und runter scrollen. Dabei haben die Farben folgende Bedeutung: Gelb/Türkis sind die Fahrdaten wobei der Farbwechsel einen Tageswechsel darstellt. Also gleiche Farbe=gleicher Tag. Rot sind die Ladevorgänge. Wenn man bei den Fahrdaten auf die Entfernungszeile klickt, bekommt man auf der Kartenseite die dazu passende zentrierte und skalierte Karte, in die man dann bei Bedarf auch noch zoomen kann. Der Marker zeigt die Mitte der gefahrenen Koordinaten an.


Die Einträge werden automatisch erstellt. Die Seitendarstellung muß momentan noch von Hand angestossen werden. Das wird sich zukünftig aber noch ändern. Genauso wie noch einige Erweiterungen geplant sind.
Ein direkter Einsatz für das Finanzamt (für die sog. 1% Regelung) ist wahrscheinlich nicht möglich. Es sei denn, man schreibt die Einträge ab.

Keine Kommentare:

Kommentar veröffentlichen