Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. JK-BMS über RS485 mit ESPHome auslesen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    JK-BMS über RS485 mit ESPHome auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schneire @Marco 3 last edited by schneire

      @marco-3 danke dir Marco, ich habe jetzt mit Android (IOS geht nicht) die MAC gefunden und siehe da
      MQtt liefert die gewünschten Daten per BLE und Grafana hat schon die gewünschte Werte in der Anzeige!

      Nun habe ich schon im VENUS OS per "serialBatterie" mit RS475 die Anzeige aber eben keine modbus/Mqtt-Daten des JK-BMS.
      Damit doppelt gemoppelt ... sowohl HW/als auch SW.

      Stellt sich also bei mir die Frage ob man nicht schlanker die Daten aus dem VENUS-OS /serialBatterie die Daten in den ioBroker bekommen kann. Servus

      M 1 Reply Last reply Reply Quote 0
      • M
        Marco 3 @schneire last edited by

        @schneire

        doppelt gemoppelt ist manchmal nicht so schlecht. Bei mir ist es auch so Serial Batt in der Venus. Ich fände es sogar besser, wenn man die BT Daten ins Venus füttern könnte und die RS485 Verbindung kappen.... (Galvanische Trennung) Um den Cerbo zu schützen.

        (Meine Sicht) Am Besten wäre, wenn der Cerbo und seine Batterie(en) sich kümmert. Und der IObroker nur ein Zuschauer ist. Daher such ich noch ne Lösung, daß der ESP autarkt die Notabschaltung bei erreichen einer zu hohen Temperatur eines der 32 Dallas Sensoren abschaltet ... Vllt. Hat da syssi eine Lösung ... Ich bin da ein bissel zu "unwissend" 😉

        S 1 Reply Last reply Reply Quote 0
        • S
          schneire @Marco 3 last edited by

          @marco-3 Hast du evtl. eine Lösung/Vorschlag um den ESPHome Nachts zum Schlafen zu bringen? z.B. Ein cron von 00:01 bis 08:00

          M 1 Reply Last reply Reply Quote 0
          • M
            Marco 3 @schneire last edited by

            @schneire
            nein, leider nicht. Da hab ich zu wenig Erfahrung/Ahnung. 🙂

            1 Reply Last reply Reply Quote 0
            • D
              dremeier last edited by

              Ich bin ein wenig verwirrt der Uart pinouts!

              Bei einem ESP32 sagt das Pinout GPIO17=Tx und GPIO16=Rx. In den example files von sissi ist es genau umgekehrt.

                tx_pin: GPIO16
                rx_pin: GPIO17
              

              Kann bitte jemand Licht ins dunkle bringen?

              syssi 1 Reply Last reply Reply Quote 0
              • syssi
                syssi @dremeier last edited by

                @dremeier Die GPIOs können für beliebige Zwecke zum Einsatz kommen. Durch die Konfiguration in der YAML wird definiert, ob sie zum Lauschen oder zum Sprechen zum Einsatz kommen sollen. Antwortet dein BMS nicht auf Anhieb, weil etwas "falsch" angeschlossen ist, dann verdrehst du entweder die Kabel oder vertauschst die GPIOs.

                D 1 Reply Last reply Reply Quote 0
                • D
                  dremeier @syssi last edited by

                  @syssi vielen Dank!
                  Ich war der Meinung die Pins seinen Hardware UART, wenn man sie so frei belegen kann um so besser!
                  Bin gerade dabei eine kleine Platine mit DC/DC converter zu entwickeln, so dass die hohe Batteriespannung, die an dem UART-Stecker des BMS anliegt auf 3,3V geregelt wird. Zusätzlich wird die UART noch galvanisch entkoppelt. Hatte mir schon einige ESP zerschossen.
                  Wenns fertig ist stell ich es hier gern vor.ADUM1201_UART_ESP32.jpg

                  syssi 1 Reply Last reply Reply Quote 0
                  • syssi
                    syssi @dremeier last edited by

                    @dremeier Der ESP32 hat eine GPIO-Matrix und kann deshalb per Software einen der drei Hardware-UARTs auf nahezu beliebige Pins routen. Beim ESP8266 war das anders (festverdrahtet). Ich bin gespannt, ob dein Konverter funktioniert. Ich habe leider schon von vielen rauchenden Komponenten gehoert, sobald der ESP vom DC/DC-Wandler direkt von der Batterie gespeist wurde. Ich hoffe, dass die galvanische Trennung (auf allen Ebenen?) insb. auf der Masse-Leitung zwischen Batterie- und "ESP" bzw. DC/DC-Wandler. Ich habe hier leider zu wenig Ahnung von Schaltkreisen um hier guten Input zu geben.

                    1 Reply Last reply Reply Quote 0
                    • D
                      Dieter_P @syssi last edited by

                      @syssi

                      Hallo Sebastian

                      bin gerade auch dabei per BLE einzubinden da ein anderer Weg aktuell wegen einem Herstellerbug eine Sackgasse ist.

                      Nun holt mich aber wieder ESPHome mit vielen Fragen und Fehlermeldungen ein.

                      Darf ich davon ausgehen, dass die angebotene Lösung nicht nur für HomeAssistant funktionieren soll sondern auch mit dem ESPHome Adapter der in IOBroker läuft?

                      Wie verhält es sich dann mit der Zuordnung? Lt. Anleitung sieht man die fertige Kachel in HA. In IOBroker finde ich derzeit "nur" die Datenpunkt. Muß ich mir die Zuordnung wirklich selbst austüfteln?
                      c7d12c02-2c39-4083-b37e-a6083638cd65-grafik.png

                      Binde ich zusätzlich über Mqtt an sieht es etwas besser aus und ich finde Datenpunkte mit Beschreibung wie der durschnittlichen Zellspannung:

                      160a6769-3022-4dd8-97b3-f4b5fc2dd3b2-grafik.png

                      Was muß ich nun aber tun über hier Settings per Mqtt verändern zu können? Reicht es den Mqtt Datenpunkt in IOB zu ändern oder ist das per command DP zu nutzen?
                      32534bea-debc-4778-a0f0-8fc5f3716a10-grafik.png

                      Ergänzend die Frage, dass mir durch die Integration der Log voll läuft:

                      esphome.0
                      	2025-05-11 10:24:48.349	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:48.348	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:43.237	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:43.235	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:38.110	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:38.109	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:33.069	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:33.068	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:27.780	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:27.780	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:22.654	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:22.652	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:17.540	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:17.540	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:12.408	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:12.407	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:07.291	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:07.289	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:24:02.094	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:24:02.090	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:23:56.967	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      esphome.0
                      	2025-05-11 10:23:56.966	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                      esphome.0
                      	2025-05-11 10:23:51.938	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                      

                      Bin noch auf der Suche was ID:25 ist.

                      Besten Dank für Eure Tips!

                      syssi 1 Reply Last reply Reply Quote 0
                      • syssi
                        syssi @Dieter_P last edited by syssi

                        @dieter_p Hallo Dieter! Ich kann deine Annahmen nur bestätigen: Die Implementierung kann unabhängig oder auch ganze ohne eine Heimautomation genutzt werden. Man hat die Möglichkeit alle Messwerte über einen MQTT-Broker abzusetzen oder Schalter/Einstellungen über MQTT zu verändern. Die geposteten Logbuch-Zeilen scheinen ioBroker spezifisch zu sein und ich weiss nicht, was sie bedeuten.

                        D 1 Reply Last reply Reply Quote 1
                        • D
                          Dieter_P @syssi last edited by

                          @syssi

                          Danke für Dein Feedback. Da ich mir nicht sicher war und einfach mal schauen wollte, hab ich den kleinen local Webserver mal aktiviert und frag mich nicht warum, aber nun sehe ich auch die Beschriftungen der Datenpunkt. Einstellungen verändern geht auch über die Webseite:

                          df8864f4-8bf2-426f-a141-2db0229015a6-grafik.png

                          Was mich noch wundert: Kann mich nicht erinnern irgendwo mein Settings-Kennwort eingetragen zu haben, trotzdem hat man Vollzugriff aufs BMS?

                          Was mich stört: die Fehler im Log:

                          esphome.0
                          	2025-05-11 23:34:43.731	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                          esphome.0
                          	2025-05-11 23:34:43.730	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                          esphome.0
                          	2025-05-11 23:34:38.607	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                          esphome.0
                          	2025-05-11 23:34:38.607	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                          esphome.0
                          	2025-05-11 23:34:33.495	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                          esphome.0
                          	2025-05-11 23:34:33.495	error	ESPHome client 192.168.7.76 Error: Failed find or parsed message type for Id: 25
                          esphome.0
                          	2025-05-11 23:34:28.372	error	ESPHome client 192.168.7.76 TypeError: Cannot set properties of undefined (setting 'length')
                          
                          syssi 1 Reply Last reply Reply Quote 0
                          • syssi
                            syssi @Dieter_P last edited by

                            @dieter_p said in JK-BMS über RS485 mit ESPHome auslesen:

                            Was mich noch wundert: Kann mich nicht erinnern irgendwo mein Settings-Kennwort eingetragen zu haben, trotzdem hat man Vollzugriff aufs BMS?

                            Das Passwort in der Android App ist leider Augenwischerei. Wenn du es setzt, dann wird es zwar auf dem BMS gespeichert. Um es zu validieren, wird es in Plaintext per Bluetooth abgerufen und in der App gegen deine Eingabe verglichen. Stimmt das Passwort, dann bekommst du Zugritt zur jeweiligen View/Funktion (in der App). Per Blueooth akzeptiert das BMS immer jegliche Befehle und unterzieht sie keiner Passwortüberprüfung.

                            D 1 Reply Last reply Reply Quote 0
                            • D
                              Dieter_P @syssi last edited by

                              @syssi said in JK-BMS über RS485 mit ESPHome auslesen:

                              Per Blueooth akzeptiert das BMS immer jegliche Befehle und unterzieht sie keiner Passwortüberprüfung.

                              Puuh, heftiger Tobak. Damit kann man eigentlich das BMS nirgendwo installieren wo Fremde unbeaufsichtigt Zugang haben.
                              Ich frag mich wer so etwas konzipiert....unbegreiflich.

                              Bzgl. der Fehlermeldung mußte ich nun die API deaktivieren und Mqtt nutzen. Hilft ja nix.

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @Dieter_P last edited by

                                @dieter_p sagte in JK-BMS über RS485 mit ESPHome auslesen:

                                Damit kann man eigentlich das BMS nirgendwo installieren wo Fremde unbeaufsichtigt Zugang haben.

                                Punkt 1:
                                Da muss jemand die Energie und das Können haben den BT Verkehr mitzuschneiden und das Kennwort auszulesen.

                                viel Wichtiger ist
                                Punkt 2:
                                Dann kann er den Ladezustand und die anderen Daten lesen

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  Dieter_P @Homoran last edited by Dieter_P

                                  @homoran said in JK-BMS über RS485 mit ESPHome auslesen:

                                  Punkt 1:
                                  Da muss jemand die Energie und das Können haben den BT Verkehr mitzuschneiden und das Kennwort auszulesen.

                                  Nö, wenn jemand weiß dass es ein JK BMS ist kann er ohne ein Passwort sämltliche Einstellungen nach Belieben verstellen.

                                  Alles was er braucht ist die öffentlich bekannte MAC Adresse und den hier besprochenen Github-Inhalt auf einem ESP32.

                                  Zum Glück lässt sich BLE ja im BMS deaktivieren und alles auch über UART-TTL Anbindung per Kabel nutzen.

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  852
                                  Online

                                  31.7k
                                  Users

                                  79.7k
                                  Topics

                                  1.3m
                                  Posts

                                  arduino esphome iobroker jk-bms
                                  11
                                  94
                                  12263
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo