Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. gelöst MQTT: Tesla SOC auslesen und openWB in einem topic

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    146

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

gelöst MQTT: Tesla SOC auslesen und openWB in einem topic

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
24 Beiträge 5 Kommentatoren 2.4k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Offline
    L Offline
    lumajo
    schrieb am zuletzt editiert von lumajo
    #1

    Hallo,
    ich habe eine mqtt Frage und weis nicht wie ich das angehen soll.
    Ich habe den Telsa Adapter installiert und der funktioniert auch und gibt mir unter anderem den SoC aus.

    Damit ich bei der OpenWB nicht auch noch den Tesla Token aktivieren muss, würde ich gerne diesen Wert (xx%) in einem Topic (openWB/set/lp/2/%Soc Ladezustand in %, int, 0-100 ) alle x minuten der openWB übergeben.
    wie stelle ich denn sowas an?

    Klar mach ich das in einem Skript, blockly wenn es geht.
    oder womöglich nodeRed?

    edit:
    Hab das jetzt in NodeRed soweit realisiert,das ich einen fiktiven SOC per MQTT übermittlen kann, was ja trivial ist. Aber der Ausgelesene Wert aus dem iobroker wird leider nicht übermittelt. Muss ich diesen konvertieren?

    DANKE

    B 1 Antwort Letzte Antwort
    0
    • L lumajo

      Hallo,
      ich habe eine mqtt Frage und weis nicht wie ich das angehen soll.
      Ich habe den Telsa Adapter installiert und der funktioniert auch und gibt mir unter anderem den SoC aus.

      Damit ich bei der OpenWB nicht auch noch den Tesla Token aktivieren muss, würde ich gerne diesen Wert (xx%) in einem Topic (openWB/set/lp/2/%Soc Ladezustand in %, int, 0-100 ) alle x minuten der openWB übergeben.
      wie stelle ich denn sowas an?

      Klar mach ich das in einem Skript, blockly wenn es geht.
      oder womöglich nodeRed?

      edit:
      Hab das jetzt in NodeRed soweit realisiert,das ich einen fiktiven SOC per MQTT übermittlen kann, was ja trivial ist. Aber der Ausgelesene Wert aus dem iobroker wird leider nicht übermittelt. Muss ich diesen konvertieren?

      DANKE

      B Offline
      B Offline
      bommel_030
      schrieb am zuletzt editiert von
      #2

      @lumajo
      Hi, hast du es jetzt geschafft den richtigen SoC aus ioBroker per MQTT an die openWB zu senden?
      Du kannst auch den SoC via simpleAPI ADapter von der Wallbox auslesen lassen. Spart dir ein Skript im iobroker.

      L 1 Antwort Letzte Antwort
      0
      • B bommel_030

        @lumajo
        Hi, hast du es jetzt geschafft den richtigen SoC aus ioBroker per MQTT an die openWB zu senden?
        Du kannst auch den SoC via simpleAPI ADapter von der Wallbox auslesen lassen. Spart dir ein Skript im iobroker.

        L Offline
        L Offline
        lumajo
        schrieb am zuletzt editiert von lumajo
        #3

        @bommel_030 also ich hab das jetzt mit nem Skript gelöst, aber bin trotzdem interessiert, wie die OWB das auslesen kann.
        simple API hab ich, aber wo gibt man das bei der OpenWB ein?

        ich habs gefunden, statt dem MQTT einfach die http Abfrage..dann holt sich due openWB die Werte. Ist auch ne gute Lösung...probier ich mal aus, danke dafür

        B 1 Antwort Letzte Antwort
        0
        • L lumajo

          @bommel_030 also ich hab das jetzt mit nem Skript gelöst, aber bin trotzdem interessiert, wie die OWB das auslesen kann.
          simple API hab ich, aber wo gibt man das bei der OpenWB ein?

          ich habs gefunden, statt dem MQTT einfach die http Abfrage..dann holt sich due openWB die Werte. Ist auch ne gute Lösung...probier ich mal aus, danke dafür

          B Offline
          B Offline
          bommel_030
          schrieb am zuletzt editiert von
          #4

          @lumajo
          Läuft "gefühlt" stabiler als per MQTT. Die 1.x kommt da scheinbar mit ihren cronjobs aus'm Takt.

          L 1 Antwort Letzte Antwort
          0
          • B bommel_030

            @lumajo
            Läuft "gefühlt" stabiler als per MQTT. Die 1.x kommt da scheinbar mit ihren cronjobs aus'm Takt.

            L Offline
            L Offline
            lumajo
            schrieb am zuletzt editiert von
            #5

            @bommel_030
            obs besser läuft weis ich nicht, ist aber die bessere weil viel einfachere Lösung.
            Irgendwie habe ich das zumindest gedanklich übersehen, ist aber sehr elegant, wenn es openWB schon so einfach zur Verfügung stellt.
            Danke nochmal

            1 Antwort Letzte Antwort
            0
            • X Offline
              X Offline
              XWing
              schrieb am zuletzt editiert von
              #6

              Ich nutze den Teslalogger um mir via MQTT die Daten zuspielen zu lassen. Dort gibt es auch den Wert für den SoC. Er wird als Zahl in folgendem Objekt abgelegt:

              {
                "common": {
                  "name": "battery_level",
                  "desc": "Manuell erzeugt",
                  "role": "state",
                  "type": "number",
                  "read": true,
                  "write": true,
                  "def": 0
                },
                "type": "state",
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1629204859393,
                "_id": "0_userdata.0.Tessi.battery_level"
              }
              

              Im Objectbaum der openWB habe ich, wie von der openWB vorgegeben folgendes Object angelegt:

              {
                "common": {
                  "name": "%Soc",
                  "desc": "mqtt client variable",
                  "role": "variable",
                  "type": "number",
                  "read": true,
                  "write": true,
                  "def": 0
                },
                "type": "state",
                "_id": "mqtt.0.openWB.set.lp.1.%Soc",
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1642502005768
              }
              

              Gebe ich in der letzten Variablen einen Wert an, so wird mir dieser auch in der openWB angezeigt. Das Object mqtt.0.openWB.lp.1.%Soc aktualisiert sich entsprechend.
              Da ich zwei Autos habe, nutze ich nicht die Auslesefunktion der openWB, sondern möchte gerne mit folgendem Script die jeweiligen Werte in das Object schreiben lassen:

              on({id: '0_userdata.0.Tessi.charge_port_door_open', val: true}, async function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                setState("mqtt.0.openWB.set.lp.1.%Soc"/*%Soc*/, getState("0_userdata.0.Tessi.battery_level").val, true);
              });
              on({id: '0_userdata.0.Blue.charge_port_door_open', val: true}, async function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                setState("mqtt.0.openWB.set.lp.1.%Soc"/*%Soc*/, getState("0_userdata.0.Blue.battery_level").val, true);
              });
              

              Das funktioniert aber nicht. Der SoC wird nicht in das Objekt geschrieben. Im Protokoll kommt filgende Infomeldung:

              State value to set for "mqtt.0.openWB.set.lp.1.socFaultState" has to be type "number" but received type "string" 
              

              Wieso String? Ich übergebe doch den Inhalt eines "Number" Objektes.
              Kann mir jemand sagen, wie ich das Problem gelöst bekomme?

              L 1 Antwort Letzte Antwort
              0
              • X XWing

                Ich nutze den Teslalogger um mir via MQTT die Daten zuspielen zu lassen. Dort gibt es auch den Wert für den SoC. Er wird als Zahl in folgendem Objekt abgelegt:

                {
                  "common": {
                    "name": "battery_level",
                    "desc": "Manuell erzeugt",
                    "role": "state",
                    "type": "number",
                    "read": true,
                    "write": true,
                    "def": 0
                  },
                  "type": "state",
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1629204859393,
                  "_id": "0_userdata.0.Tessi.battery_level"
                }
                

                Im Objectbaum der openWB habe ich, wie von der openWB vorgegeben folgendes Object angelegt:

                {
                  "common": {
                    "name": "%Soc",
                    "desc": "mqtt client variable",
                    "role": "variable",
                    "type": "number",
                    "read": true,
                    "write": true,
                    "def": 0
                  },
                  "type": "state",
                  "_id": "mqtt.0.openWB.set.lp.1.%Soc",
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1642502005768
                }
                

                Gebe ich in der letzten Variablen einen Wert an, so wird mir dieser auch in der openWB angezeigt. Das Object mqtt.0.openWB.lp.1.%Soc aktualisiert sich entsprechend.
                Da ich zwei Autos habe, nutze ich nicht die Auslesefunktion der openWB, sondern möchte gerne mit folgendem Script die jeweiligen Werte in das Object schreiben lassen:

                on({id: '0_userdata.0.Tessi.charge_port_door_open', val: true}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  setState("mqtt.0.openWB.set.lp.1.%Soc"/*%Soc*/, getState("0_userdata.0.Tessi.battery_level").val, true);
                });
                on({id: '0_userdata.0.Blue.charge_port_door_open', val: true}, async function (obj) {
                  var value = obj.state.val;
                  var oldValue = obj.oldState.val;
                  setState("mqtt.0.openWB.set.lp.1.%Soc"/*%Soc*/, getState("0_userdata.0.Blue.battery_level").val, true);
                });
                

                Das funktioniert aber nicht. Der SoC wird nicht in das Objekt geschrieben. Im Protokoll kommt filgende Infomeldung:

                State value to set for "mqtt.0.openWB.set.lp.1.socFaultState" has to be type "number" but received type "string" 
                

                Wieso String? Ich übergebe doch den Inhalt eines "Number" Objektes.
                Kann mir jemand sagen, wie ich das Problem gelöst bekomme?

                L Offline
                L Offline
                lumajo
                schrieb am zuletzt editiert von
                #7

                @xwing diesen fehler habe ich auch bei der Übergabe von NodeRed bekommen, allerdings wurde der Wert trotzdem geschrieben. Eine Umwandlung innerhalb von NodeRed war dabei völlig irrelevant.

                Versteh ich richtig, dass du den iobroker gar nicht verwendest, sondern direkt vom Teslalogger auf die openWB schreibst?

                X 1 Antwort Letzte Antwort
                0
                • L lumajo

                  @xwing diesen fehler habe ich auch bei der Übergabe von NodeRed bekommen, allerdings wurde der Wert trotzdem geschrieben. Eine Umwandlung innerhalb von NodeRed war dabei völlig irrelevant.

                  Versteh ich richtig, dass du den iobroker gar nicht verwendest, sondern direkt vom Teslalogger auf die openWB schreibst?

                  X Offline
                  X Offline
                  XWing
                  schrieb am zuletzt editiert von
                  #8

                  @lumajo
                  Nein.
                  Ich lasse den Teslalogger an ioBroker senden und splitte die Antwort in die verschiedenen Objekte. Der Teslalogger sendet ja keine Einzelwerte. Deswegen der Umweg über den ioBroker.
                  Aber leider funktioniert das nicht. Wenn ich per Hand den Wert in openWB.set.lp.1.%Soc eingebe, wird der Wert auch in der openWB angezeigt und in openWB.lp.1.%Soc übergeben.
                  Wenn ich in openWB.set.lp.1.%Soc den Wert über das Script eintrage, geschieht dies nicht.

                  B 1 Antwort Letzte Antwort
                  0
                  • X XWing

                    @lumajo
                    Nein.
                    Ich lasse den Teslalogger an ioBroker senden und splitte die Antwort in die verschiedenen Objekte. Der Teslalogger sendet ja keine Einzelwerte. Deswegen der Umweg über den ioBroker.
                    Aber leider funktioniert das nicht. Wenn ich per Hand den Wert in openWB.set.lp.1.%Soc eingebe, wird der Wert auch in der openWB angezeigt und in openWB.lp.1.%Soc übergeben.
                    Wenn ich in openWB.set.lp.1.%Soc den Wert über das Script eintrage, geschieht dies nicht.

                    B Offline
                    B Offline
                    bommel_030
                    schrieb am zuletzt editiert von
                    #9

                    @xwing
                    Hast du mal versucht was passiert wenn du das true am Ende von setState weglässt?

                    X 1 Antwort Letzte Antwort
                    0
                    • B bommel_030

                      @xwing
                      Hast du mal versucht was passiert wenn du das true am Ende von setState weglässt?

                      X Offline
                      X Offline
                      XWing
                      schrieb am zuletzt editiert von
                      #10

                      @bommel_030
                      Leider keine Änderung.

                      tate value to set for "mqtt.0.openWB.set.lp.1.socFaultState" has to be type "number" but received type "string" 
                      

                      Wert wird in das openWB.set.lp.1.%Soc Objekt geschrieben aber nicht verarbeitet.

                      B 1 Antwort Letzte Antwort
                      0
                      • X XWing

                        @bommel_030
                        Leider keine Änderung.

                        tate value to set for "mqtt.0.openWB.set.lp.1.socFaultState" has to be type "number" but received type "string" 
                        

                        Wert wird in das openWB.set.lp.1.%Soc Objekt geschrieben aber nicht verarbeitet.

                        B Offline
                        B Offline
                        bommel_030
                        schrieb am zuletzt editiert von
                        #11

                        @xwing
                        Zeig mal bitte deine MQTT Config. Hatte das am Anfang auch, wenn ich nen String geliefert habe wollte er ne number, hab ich es in numer geändert wollte er nen string....
                        Kann mich aber nicht mehr dran erinnern was die Lösung war...

                        X 1 Antwort Letzte Antwort
                        0
                        • B bommel_030

                          @xwing
                          Zeig mal bitte deine MQTT Config. Hatte das am Anfang auch, wenn ich nen String geliefert habe wollte er ne number, hab ich es in numer geändert wollte er nen string....
                          Kann mich aber nicht mehr dran erinnern was die Lösung war...

                          X Offline
                          X Offline
                          XWing
                          schrieb am zuletzt editiert von
                          #12

                          @bommel_030
                          4f19a1ad-6887-4a97-9b2b-98173cbca807-grafik.png
                          8336ee2a-91a2-4636-9e1d-bebee70ce0ed-grafik.png

                          B 1 Antwort Letzte Antwort
                          0
                          • X XWing

                            @bommel_030
                            4f19a1ad-6887-4a97-9b2b-98173cbca807-grafik.png
                            8336ee2a-91a2-4636-9e1d-bebee70ce0ed-grafik.png

                            B Offline
                            B Offline
                            bommel_030
                            schrieb am zuletzt editiert von
                            #13

                            @xwing
                            Die Einstellungen sehen aus wie meine. Welche Version der openWB hast du am laufen?
                            Die Wallbox schon mal neu gestartet? Alternativ lass dir den gewünschten SoC in einen eigenen Datenpunkt schreiben und hole es über die SimpleAPI ab. Die openWB 2.x ist ja (hoffentlich) demnächst mal fertig. Da werden die Topics und die SoCs / Fahrzeuge eh geändert.

                            X 1 Antwort Letzte Antwort
                            0
                            • B bommel_030

                              @xwing
                              Die Einstellungen sehen aus wie meine. Welche Version der openWB hast du am laufen?
                              Die Wallbox schon mal neu gestartet? Alternativ lass dir den gewünschten SoC in einen eigenen Datenpunkt schreiben und hole es über die SimpleAPI ab. Die openWB 2.x ist ja (hoffentlich) demnächst mal fertig. Da werden die Topics und die SoCs / Fahrzeuge eh geändert.

                              X Offline
                              X Offline
                              XWing
                              schrieb am zuletzt editiert von
                              #14

                              @bommel_030
                              Ich habe die stable 1.9.244 am laufen.
                              Die 2.0 ist noch alpha und wurde mir vom Support nicht empfohlen.

                              B 1 Antwort Letzte Antwort
                              0
                              • X XWing

                                @bommel_030
                                Ich habe die stable 1.9.244 am laufen.
                                Die 2.0 ist noch alpha und wurde mir vom Support nicht empfohlen.

                                B Offline
                                B Offline
                                bommel_030
                                schrieb am zuletzt editiert von
                                #15

                                @xwing
                                Bin mir der 1.9.250 nightly unterwegs, da wird immer mal wieder was geändert.
                                Nein, die 2.0 solltest du nicht verwenden, so war das nicht gemeint. Nur als Hinweis, bevor du jetzt unnötig viel Arbeit in die Fehlersuche steckst und mit der 2.0 wird wieder alles geändert. Daher der Vorschlag lass es dir über http aus nem eigenen Datenpunkt holen und wenn die 2.0 produktiv ist kannst du es auch ändern.

                                X 1 Antwort Letzte Antwort
                                0
                                • B bommel_030

                                  @xwing
                                  Bin mir der 1.9.250 nightly unterwegs, da wird immer mal wieder was geändert.
                                  Nein, die 2.0 solltest du nicht verwenden, so war das nicht gemeint. Nur als Hinweis, bevor du jetzt unnötig viel Arbeit in die Fehlersuche steckst und mit der 2.0 wird wieder alles geändert. Daher der Vorschlag lass es dir über http aus nem eigenen Datenpunkt holen und wenn die 2.0 produktiv ist kannst du es auch ändern.

                                  X Offline
                                  X Offline
                                  XWing
                                  schrieb am zuletzt editiert von
                                  #16

                                  @bommel_030
                                  Danke für den Tip!
                                  Damit scheint es zu gehen.

                                  C 1 Antwort Letzte Antwort
                                  0
                                  • X XWing

                                    @bommel_030
                                    Danke für den Tip!
                                    Damit scheint es zu gehen.

                                    C Offline
                                    C Offline
                                    Chilihead
                                    schrieb am zuletzt editiert von
                                    #17

                                    @xwing @bommel_030 habt Ihr vielleicht nen Tip warum bei den MQTT Objects kein openWB.set.lp.1.%Soc auftaucht als Objekt? Muss ich das erst erzeugen? Sorry mit MQTT bin ich noch nicht so fit.

                                    madingM 1 Antwort Letzte Antwort
                                    0
                                    • C Chilihead

                                      @xwing @bommel_030 habt Ihr vielleicht nen Tip warum bei den MQTT Objects kein openWB.set.lp.1.%Soc auftaucht als Objekt? Muss ich das erst erzeugen? Sorry mit MQTT bin ich noch nicht so fit.

                                      madingM Offline
                                      madingM Offline
                                      mading
                                      schrieb am zuletzt editiert von
                                      #18

                                      @chilihead ja musst du erzeugen. Wird nicht standardmässig erstellt.

                                      C 1 Antwort Letzte Antwort
                                      0
                                      • madingM mading

                                        @chilihead ja musst du erzeugen. Wird nicht standardmässig erstellt.

                                        C Offline
                                        C Offline
                                        Chilihead
                                        schrieb am zuletzt editiert von Chilihead
                                        #19

                                        @mading wie mach ich denn das? Wahrscheinlich wieder in JS? Da bin ich ja überhaupt nicht fit :-(
                                        Ohkeh :-) Expertenmodus an, dann gehts

                                        madingM 1 Antwort Letzte Antwort
                                        0
                                        • C Chilihead

                                          @mading wie mach ich denn das? Wahrscheinlich wieder in JS? Da bin ich ja überhaupt nicht fit :-(
                                          Ohkeh :-) Expertenmodus an, dann gehts

                                          madingM Offline
                                          madingM Offline
                                          mading
                                          schrieb am zuletzt editiert von
                                          #20

                                          @chilihead Expertenmodus an, den Ordner 1 markieren und oben auf das +. Dann Type number und Name %Soc.

                                          dd2190e4-e1a7-4be7-af23-8a150b641d00-grafik.png

                                          Du kannst im Nachgang noch die Einheit über den Stift ganz rechts ändern, schaus dir mal bei anderen DP an wie die Einheit dort angegeben wurde.

                                          15a7af16-9829-4605-a05a-c31baeac1f21-grafik.png

                                          L 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          534

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe