Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Node-Red
  5. ich brauche etwas Nachhilfe mit Node Red und RS232

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    1.1k

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.6k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    6.2k

ich brauche etwas Nachhilfe mit Node Red und RS232

Geplant Angeheftet Gesperrt Verschoben Node-Red
43 Beiträge 5 Kommentatoren 455 Aufrufe 3 Beobachtet
  • Ä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.
  • A andibr

    @OliverIO
    Für mich als ex. Elektroninstallateur ist es eben vielfach einfacher in einer Maske zu sehen was der Code eigentlich machen sollte, als in einem strukturierten Text.

    Wir verwenden bei uns im Job auch sehr viel strukturierte Text für Steuerungsfunktionen, aber das ist in der Regel eine andere Abteilung, ich bin nur zuständig, dass die Elektropläne korrekt und vollständig für alle sind.

    Klar, dass interesse an den Möglichkeiten ist schon lange geweckt, aber wie bei allem, wenn man das nicht oft macht, vergisst man sehr vieles wieder. Bei mir ist entstehen solche Dinge eben manchmal aus "dummen" Ideen, oder eben aus "herausforderungen" die man nicht direkt sucht.

    Ich arbeite mich jetzt mal rund um und schaue was da raus kommt.
    Nochmals herzlichen Dank

    Gruss Andi
    (aus der überhitzten Schweiz)

    A Offline
    A Offline
    andibr
    schrieb am zuletzt editiert von
    #32

    Die versprochene Zusammenfassung des ganze:

    Das BMS der Pytes 48100R-C16 lässt sich über den Konsolen-Anschluss parallel zum regulären Betrieb mit BMS-CAN auslesen.
    Mit einem einfachen Terminal auf dem PC (Putty, Hyperterm, minicom, screen usw..) lässt sich eine einfach serielle Verbinung aufbauen und mit ein paar wenigen Befehlen bekommt man eine grosse Anzahl an Informationen. Dabei braucht es nur 1 serielle Verbindung zum Master-BMS der Rest läuft intern zwischen den einzelnen Batteriepacks ab.

    Ich habe mir einen USBtoRS232 Adapter (mit einem FTDI FTFS8I5L) und einem Konsolenkabel von einer Cisco-Firewall eine Verbindung mit 115200 8N1 geschaffen. Nun kann man an der Konsole im Terminal mit dem Befehl "help" folgende Anzeige auslesen:

    bat      Battery data show - bat [pwr][index]
    data     History data load - data [event/history][item]
    datalist Show recorded data - datalist {event/history}{item}}
    disp     Display Info at regular intervals - disp [(pwrs pwrNo)/val]/[(bats batNo)/volt/curr/temp]
    help     Help [cmd]
    info     Device infomation - info
    log      Log information show - log
    login    Login Admin mode - login [password]
    logout   user mode  - logout
    pwr      Power data show - pwr [index]
    shut     Shut down - shut
    soh      State of health - soh [addr]
    stat     Statistic data show - stat
    time     Time - time [year] [month] [day] [hour] [minute] [second]
    trst     Test Soft Reset - trst
    updata   updata system - updata
    ver      firmware info - ver
    

    mit dem Befehl "bat nn" lassen sich dann die aktuellen Werte jeder einzelnen Zelle aus den Blöcke auslesen und immer pro BMS anzeigen lassen (das Master-BMS hat die Nr. 1).

    Damit das ganze auch einigermassen nutzbar ist, habe ich (mit Hilfe) ein Node-Red Flow gebastelt, der mir die so erhaltenen Daten sortiert und verarbeitet und in die Iobroker Datenpunkte füllt.

    flows_Pytes.json

    Leider läuft es immer mal wieder in einen Timeout und/oder in den Fehler das er den String nicht zerlegen kann.

    Ich hoffe verständlich erklärt zu haben was ich wollte und wie ich das gemacht habe? Bei fragen einfach hier schreiben.

    Andi

    OliverIOO 1 Antwort Letzte Antwort
    0
    • HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      schrieb am zuletzt editiert von
      #33

      Kennst du das hier:
      https://forum.iobroker.net/post/1052677

      kein Support per PN! - Fragen im Forum stellen - Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      A 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        Kennst du das hier:
        https://forum.iobroker.net/post/1052677

        A Offline
        A Offline
        andibr
        schrieb am zuletzt editiert von
        #34

        @homoran Ja das idt genau der Adapter mit den ich es fast ein ganzen Tag probiert habe und darauf beschlossen habe, es selber zu probieren.
        Scheinbar gibt es eben Unterschiede zwischen Pytes und Pylontech BMS. Auf dem CAN Port scheinen sie identisch zu sein oder die Pytes sprechen die Pylontech Sprache.

        1 Antwort Letzte Antwort
        0
        • HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          schrieb am zuletzt editiert von
          #35

          @andibr

          Aber laut github Seite
          https://github.com/PLCHome/iobroker.pylontech

          Ist der auch für pytes
          2471.jpg

          kein Support per PN! - Fragen im Forum stellen - Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          A 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @andibr

            Aber laut github Seite
            https://github.com/PLCHome/iobroker.pylontech

            Ist der auch für pytes
            2471.jpg

            A Offline
            A Offline
            andibr
            schrieb am zuletzt editiert von
            #36

            @Homoran
            Ja, ich weiss. Und ich habe etliches getestet, nur er hat weder die Schnittstelle noch die Pytes gefunden.
            Mit den genau gleichen Vorgaben und Linux Rechten schafft es mein Node-Red aus dem gleichen LXC Container raus das Master BMS zu erreichen. Der Adapter schaffte es aber nicht, zu dem hat er automatisch Datenpunkte angelegt beim einfügen der Instanz, die es gar nicht gibt.
            Ich gehe davon aus, dass der Adapter mal geschaffen und getesten wurde mit Pylontech und weil die BMS vieleicht mal identisch gearbeitet hatten das dann so reingekommen ist. Leider hat auch der Entwickler des Adapters bis jetz keine Reaktion gezeigt, so dass ich davon aus gehe, dass kein Interesse mehr besteht. Darum habe ich eben den mir einigermassen gangbare Weg gewählt. Adapterentwicklung oder Anpassung ist ausserhalb meiner Fähigkeiten.
            Ich helfe gerne wenn ich was testen kann, aber wie man im ganzen Verlauf sehen kann, begreife ich gewisse Software Dinge irgend wie nicht.
            Ich weiss man könnte auch den Flow viel eleganter machen mit einer Liste und immer der gleichen Abfrage, aber ich habe es nicht hingekriegt.

            1 Antwort Letzte Antwort
            1
            • HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              schrieb am zuletzt editiert von
              #37

              Mein Problem ist, dass ich mit node-red vielleicht vor knapp 10 Jahren zuletzt gearbeitet hatte.
              Seit es Blockly gibt bin ich damit unterwegs.

              Aber selbst wenn es mit dem Pytes-Kabel direkt ginge, wüsste ich überhaupt nicht wie ich die Schnittstelle ansprechen müsste.

              kein Support per PN! - Fragen im Forum stellen - Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              A 1 Antwort Letzte Antwort
              0
              • A andibr

                Die versprochene Zusammenfassung des ganze:

                Das BMS der Pytes 48100R-C16 lässt sich über den Konsolen-Anschluss parallel zum regulären Betrieb mit BMS-CAN auslesen.
                Mit einem einfachen Terminal auf dem PC (Putty, Hyperterm, minicom, screen usw..) lässt sich eine einfach serielle Verbinung aufbauen und mit ein paar wenigen Befehlen bekommt man eine grosse Anzahl an Informationen. Dabei braucht es nur 1 serielle Verbindung zum Master-BMS der Rest läuft intern zwischen den einzelnen Batteriepacks ab.

                Ich habe mir einen USBtoRS232 Adapter (mit einem FTDI FTFS8I5L) und einem Konsolenkabel von einer Cisco-Firewall eine Verbindung mit 115200 8N1 geschaffen. Nun kann man an der Konsole im Terminal mit dem Befehl "help" folgende Anzeige auslesen:

                bat      Battery data show - bat [pwr][index]
                data     History data load - data [event/history][item]
                datalist Show recorded data - datalist {event/history}{item}}
                disp     Display Info at regular intervals - disp [(pwrs pwrNo)/val]/[(bats batNo)/volt/curr/temp]
                help     Help [cmd]
                info     Device infomation - info
                log      Log information show - log
                login    Login Admin mode - login [password]
                logout   user mode  - logout
                pwr      Power data show - pwr [index]
                shut     Shut down - shut
                soh      State of health - soh [addr]
                stat     Statistic data show - stat
                time     Time - time [year] [month] [day] [hour] [minute] [second]
                trst     Test Soft Reset - trst
                updata   updata system - updata
                ver      firmware info - ver
                

                mit dem Befehl "bat nn" lassen sich dann die aktuellen Werte jeder einzelnen Zelle aus den Blöcke auslesen und immer pro BMS anzeigen lassen (das Master-BMS hat die Nr. 1).

                Damit das ganze auch einigermassen nutzbar ist, habe ich (mit Hilfe) ein Node-Red Flow gebastelt, der mir die so erhaltenen Daten sortiert und verarbeitet und in die Iobroker Datenpunkte füllt.

                flows_Pytes.json

                Leider läuft es immer mal wieder in einen Timeout und/oder in den Fehler das er den String nicht zerlegen kann.

                Ich hoffe verständlich erklärt zu haben was ich wollte und wie ich das gemacht habe? Bei fragen einfach hier schreiben.

                Andi

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von
                #38

                @andibr

                Wenn es einen timeout gibt kommt wahrscheinlich kein String. Entweder eine Fehlermeldung oder nix. Die nachfolgenden nodes verarbeiten das gnadenlos.
                Da müsste man dann das ausfiltern

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                A 1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  Mein Problem ist, dass ich mit node-red vielleicht vor knapp 10 Jahren zuletzt gearbeitet hatte.
                  Seit es Blockly gibt bin ich damit unterwegs.

                  Aber selbst wenn es mit dem Pytes-Kabel direkt ginge, wüsste ich überhaupt nicht wie ich die Schnittstelle ansprechen müsste.

                  A Offline
                  A Offline
                  andibr
                  schrieb am zuletzt editiert von
                  #39

                  @Homoran
                  Keine Ahnung ob man mit Blockly das auch hinkriegen würde, aber grundsätzlich ist es nichts kompliziertes. Wenn du mit dem original Pytes Kabel und dem Windows BMS-Tool drauf zugreifen kannst, geht es mit allem anderen auch.
                  Mit Putty kannst du eine "telnet" Verbindung auf den COMx Port aufbauen und schon kannst du die Daten abholen. Sobald die Verbindung aufgebaut ist, einfach "bat 1" schreiben und ENTER drücken, dann kommen die Daten auf den Bildschirm.
                  Das aufwendige ist eher die angezeigten Daten in etwas vernünftiges zu verwandeln.
                  Die serielle Schnittstelle ist da sehr dankbar, braucht 3 Drähte und die gleiche Einstellungen und die Geräte sprechen miteinander, ist halt eben eine der ersten Computerschnittstellen die es dazumals gab.
                  Leider sind die Distanzen erwas gross in die Schweiz, sonst würde ich gerne auch praktisch helfen.

                  1 Antwort Letzte Antwort
                  1
                  • OliverIOO OliverIO

                    @andibr

                    Wenn es einen timeout gibt kommt wahrscheinlich kein String. Entweder eine Fehlermeldung oder nix. Die nachfolgenden nodes verarbeiten das gnadenlos.
                    Da müsste man dann das ausfiltern

                    A Offline
                    A Offline
                    andibr
                    schrieb am zuletzt editiert von
                    #40

                    @OliverIO ich kopiere morgen mal die Meldungen die mir Node-Red auswirft. Es steht meistens, ....ist kein String....

                    A 1 Antwort Letzte Antwort
                    0
                    • A andibr

                      @OliverIO ich kopiere morgen mal die Meldungen die mir Node-Red auswirft. Es steht meistens, ....ist kein String....

                      A Offline
                      A Offline
                      andibr
                      schrieb zuletzt editiert von
                      #41

                      Mein Flow sieht so aus:Bildschirmfoto vom 2026-08-14 19-32-46.png

                      Manchmal funktioniert es richtig und manchmal eben nicht. Ich habe mir überlegt, ob evt. daran liegen könnte, dass der Port nach der Abfrage nicht geschlossen wird?
                      Wenn ich im Minicom den Connect offen stehen lasse ist mir bis jetzt nicht aufgefallen, dass da keine Antwort kommen würde.

                      Im Log sieht es dann so aus:
                      Bildschirmfoto vom 2026-08-14 19-38-16.png

                      Wenn ich dann den Flow verändere und neu deploye funktioniert es eine Weile ganz gut und plötzlich geht es wieder nicht mehr. Bis jetzt habe ich noch kein Muster gefunden.

                      Ich habe da noch alte USR-TCP232-T2 Adapter rumliegen
                      Bildschirmfoto vom 2026-08-14 19-43-18.png

                      Allenfalls könnte man damit ja auch etwas machen und hätte dann einfach einen Netzwerk-Port zum abfragen, aber ich denke das Thema mit dem Timeout wird gleich bleiben. So wie ich es verstehe kommt der Timeout nicht vom Port sondern ist ein "nicht reagieren des BMS".

                      OliverIOO 1 Antwort Letzte Antwort
                      0
                      • A andibr

                        Mein Flow sieht so aus:Bildschirmfoto vom 2026-08-14 19-32-46.png

                        Manchmal funktioniert es richtig und manchmal eben nicht. Ich habe mir überlegt, ob evt. daran liegen könnte, dass der Port nach der Abfrage nicht geschlossen wird?
                        Wenn ich im Minicom den Connect offen stehen lasse ist mir bis jetzt nicht aufgefallen, dass da keine Antwort kommen würde.

                        Im Log sieht es dann so aus:
                        Bildschirmfoto vom 2026-08-14 19-38-16.png

                        Wenn ich dann den Flow verändere und neu deploye funktioniert es eine Weile ganz gut und plötzlich geht es wieder nicht mehr. Bis jetzt habe ich noch kein Muster gefunden.

                        Ich habe da noch alte USR-TCP232-T2 Adapter rumliegen
                        Bildschirmfoto vom 2026-08-14 19-43-18.png

                        Allenfalls könnte man damit ja auch etwas machen und hätte dann einfach einen Netzwerk-Port zum abfragen, aber ich denke das Thema mit dem Timeout wird gleich bleiben. So wie ich es verstehe kommt der Timeout nicht vom Port sondern ist ein "nicht reagieren des BMS".

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        schrieb zuletzt editiert von OliverIO
                        #42

                        @andibr

                        Als erstes muss man rausfinden an welcher Node der Fehler entsteht.
                        Dann in dieser function node etwas debug code einbauen
                        Damit man sieht was für ein datentyp da ankommt und was für Inhaltsangaben ankommt.
                        Dann muss man bewerten wie man damit umgeht.
                        Wenn es sonst funktioniert, dann kann man das einfach durch Code ausfiltern, also keine msg zurückgeben, so das die nachfolgenden nodes nicht getriggert werden.

                        Nur mit einem Bild vom Flow kann niemand was anfangen.
                        Mit mehr, kann ich erst Ende nächster woche weitermachen

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        A 1 Antwort Letzte Antwort
                        0
                        • OliverIOO OliverIO

                          @andibr

                          Als erstes muss man rausfinden an welcher Node der Fehler entsteht.
                          Dann in dieser function node etwas debug code einbauen
                          Damit man sieht was für ein datentyp da ankommt und was für Inhaltsangaben ankommt.
                          Dann muss man bewerten wie man damit umgeht.
                          Wenn es sonst funktioniert, dann kann man das einfach durch Code ausfiltern, also keine msg zurückgeben, so das die nachfolgenden nodes nicht getriggert werden.

                          Nur mit einem Bild vom Flow kann niemand was anfangen.
                          Mit mehr, kann ich erst Ende nächster woche weitermachen

                          A Offline
                          A Offline
                          andibr
                          schrieb zuletzt editiert von
                          #43

                          @OliverIO ich versuche morgen noch etwas mehr raus zu holen. Eben es verwirrt mich das es manchmal durchläuft und dann plötzlich nicht mehr.
                          Für mich als Laie sieht es irgendwie so aus, wie wenn das BMS irgendwie auf was warten würde und daher nicht mehr.

                          1 Antwort Letzte Antwort
                          0

                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                          Registrieren Anmelden
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          380

                          Online

                          33.0k

                          Benutzer

                          83.6k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2026
                          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