TeslaSolarCharger - PV-Überschussladen mit beliebiger Wallbox (Teil 1)

in der docker-compose.yml den TeslaMate API und TeslaSolarCharger Teil ergänzen (Bei den Kommentaren aufpassen, dass es mit den vorherigen Daten zusammen stimmt und unten bei den Volumes natürlich nur das neue ergänzen):

  teslamateapi:
    image: tobiasehlert/teslamateapi:latest
    logging:
        driver: "json-file"
        options:
            max-file: "5"
            max-size: "10m"
    restart: always
    depends_on:
      - database
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret ##You can change your password here
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
      - MQTT_HOST=mosquitto
      - TZ=Europe/Berlin ##You can change your Timezone here
      - ENABLE_COMMANDS=true
      - COMMANDS_ALL=true
      - API_TOKEN_DISABLE=true
      - ENCRYPTION_KEY=supersecret ##You can change your encryption key here
    #ports:
    #  - 8080:8080

  teslasolarcharger:
    image: pkuehnel/teslasolarcharger:latest
    container_name: teslasolarcharger
    logging:
        driver: "json-file"
        options:
            max-file: "10"
            max-size: "100m"
    restart: always
    depends_on:
      - teslamateapi
    environment:
#      - Serilog__MinimumLevel__Default=Verbose #uncomment this line and recreate container with docker compose up -d for more detailed logs
      - TZ=Europe/Berlin ##You can change your Timezone here
    ports:
      - 7190:80
    volumes:
      - teslasolarcharger-configs:/app/configs

volumes:
  teslamate-db:
  teslamate-grafana-data:
  mosquitto-conf:
  mosquitto-data:
  teslasolarcharger-configs:
1 „Gefällt mir“

Prima, Danke dir!

es gibt für den ioBroker den Teslamateapi Adapter, den habe ich jetzt installiert.

Dort wird in der Config nach „Das Zugriffstoken für den TeslaMateAPI-Dienst“ gefragt. Weißt du woher ich diesen bekommen kann? Scheint ja kein neu zu erstellender zu sein wenn ich das richtig verstehe.

Leer lassen geht nicht? Man kann einen Token angeben, dass der Zugriff auf TeslaMateAPI geschützt ist, das hab ich im TSC aber nicht implementiert, sprich TSC geht nur ohne Token. Einen TeslaMate Adapter gibts nicht? Das Müsste dann das MQTT sein. Oder allgemein einfach MQTT? ist vermutlich das einfachste… dann müsstest du halt den Port 1883 beim Mosquitto container aufmachen in der Docker-compose.yml

nee leer scheint nicht zu funktionieren…

MQTT habe ich noch nie gemacht, da muss ich dann mal schauen, wie das funktioniert, damit ich Werte zum ioBroker bekomme. Vielleicht weiß das hier ja jemand, wie ich das angehen muss.

Gibt im ioBroker ansonsten noch einen REST-API-Adapter für Swagger, habe ich aber auch noch nie was mit gemacht, wie ich da dann die Werte rüber in ioBroker bekomme.

@Mane123 MQTT war einfacher als ich dachte, super, Danke für deine Tipps. Einfach den Port geöffnet und dann im ioBroker den MQTT Adapter installieren und die URL plus Port angeben, schon sind alle Werte im ioBroker vorhanden!

Danke dir für den tollen Support hier!

PS: Was mir jetzt allerdings noch fehlt ist der kw-Wert mit dem das Auto gerade geladen wird. Wäre ein Zugriff über Swagger wohl doch besser, aber da Blicke ich nicht durch :slight_smile:

es gibt zwar teslamate/cars/$car_id/charger_power allerdings ist das nur auf 1kW genau. Ich berechne es wie folgt:

float? calculatedCurrent;
//Next lines because of wrong actual current on currents below 5A
if (ChargerRequestedCurrent < 5 && ChargerActualCurrent == ChargerRequestedCurrent + 1)
{
    calculatedCurrent = (float?)(ChargerActualCurrent + ChargerRequestedCurrent) / 2;
}
else
{
    calculatedCurrent = ChargerActualCurrent;
}
var power = (int?)(calculatedCurrent * ChargerVoltage * ActualPhases);

Bei weniger als 5A lädt er oftmals mit ein bisschen mehr Ampere, als vorgegeben und zeigt dann auch 1A zu viel an, daher die unterscheidung… Vereinfacht ist es einfach nur

ChargerActualCurrent * ChargerVoltage * ActualPhases Wobei die API von Tesla bei den Phasen nur 1 oder 2 zurückgibt, also wenn da 2 steht ist es dreiphasig…

Prima. Das ist per Script in ioBroker ja auch umsetzbar. Vielen Dank

1 „Gefällt mir“

Eine Kleinigkeit in eigener Sache und ziemlich off topic hier.

Mein Vater hat sein Model Y nach Dänemark verkauft, Vertrag sieht 1000 Euro Anzahlung vor, aber Käufer (motorleasing.dk) zahlt nicht. Haben wir hier einen Anwalt/Jurist, der sich den Vertrag mal kurz anschauen kann und eine Handlungsempfehlung gibt? Ich habe schon mal mit jemanden per PN geschrieben, aber ich kann mich nicht mehr erinnern, wer es war und ich finde die Nachricht auch nicht :expressionless:

2 „Gefällt mir“

@teslaundrecht vielleicht?

1 „Gefällt mir“

Kenne ich, wars aber nicht, und nachdem er mich schon mal 20 Minuten kostenlos beraten hat, will ich ihm nicht schon wieder auf die Nerven gehen, bin aber nach einer Ersteinschätzung natürlich bereit auch weitere Schritte zu gehen.

1 „Gefällt mir“

Ich war das wohl. Hast ne PN

1 „Gefällt mir“

Ich bin Mal gespannt wann das in einer Tesla App bei uns auftaucht.
Dann kann TSC theoretisch den WallConnector Gen 3 für andere nicht-Teslafahrzeuge direkt steuern statt dem Auto. Tesla scheint da endlich eine funktionale API zu integrieren.

https://x.com/real__whit/status/1691560694217351592?s=19

Wird spannend. Außer es ist wirklich nur ein Start/Stopp Ding was schade wäre.

1 „Gefällt mir“

Ich hoffe, dass nicht bald eine massivste Einschränkung kommt, was die API betrifft, mein Vater hat gerade eben ein Auto neu abgeholt, solange der Handyschlüssel nicht verbunden ist, ist nur der Standort in der App sichtbar. Ob der TSC trotzdem steuern kann, sehen wir morgen…

Edit: grade mal probiert mit TSC manuell das ChargeLimit umzustellen, das klappt, also noch scheint es keine Probleme zu geben.

Es gibt bereits die erste OAuth App mit Tesla.

Also man arbeitet an einer vernünftigen Integration der API.

Was ich mir vorstellen kann ist sowas wie bei Reddit, kommerzielle / große Anwendungen mit vielen Nutzern müssen zahlen, für den Eigenbedarf aber hat man z.B. 100Requests/min frei. So macht’s Reddit aktuell, damit geht weiterhin meine Third-Party App Infinity durch Verwendung meines eigenen API Tokens, aber eben die „kommerziellen“ Apps müssten zahlen.

Sollte es so kommen mindert man definitiv schon Mal die Abuse Möglichkeiten von den Online-Darenloggern, sowas wie Teslamate/TSC wird dann aber weiterhin funktionieren, wenn auch nur mit offiziellem OAuth.

Hast du da mehr Details?

Mehr als das hier auch nicht:
https://x.com/WholeMarsBlog/status/1688774858258436096?s=19

Und

1 „Gefällt mir“

Die Support-Seite wurde über Nacht auch aktualisiert - der Abschnitt über die Tesla-App ist neu. Hoffentlich tut sich da was.

2 „Gefällt mir“

@Mane123 - bei uns ist zwar gerade Urlaub, aber wenn es nicht arg eilig ist, gerne den Fall kurz über unsere Website einreichen. Wir haben mehrere derartige Fälle.

2 „Gefällt mir“

Hallo miteinander. Wie kann ich einstellen, dass ich immer morgens um 6 Uhr mindestens 70% Ladestand habe? Wenn ich es in der Tesla App setze, wird das doch durch TSC überschrieben. Oder habe ich einen Denkfehler? Muss ich auch noch was einstellen? Stehe da gerade auf dem Schlauch…