Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. SerialBridge - SerialSend5 - ON/OFF [gelöst]

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    SerialBridge - SerialSend5 - ON/OFF [gelöst]

    This topic has been deleted. Only users with topic management privileges can see it.
    • MartinSU
      MartinSU last edited by MartinSU

      Hallo,
      ich habe mit einem ESP01S eine SerialBridge realistiert.
      Damit Tasmota die Einstellung für Baudrate und SerialSend nach einem Stromausfall wieder einstellt, bin ich nach etwas rumprobieren zu dieser Lösung gekommen:

      savedata 1
      Rule2 on System#Boot do Backlog Baudrate 19200; SerialSend5 00 endon
      Rule2 1
      savedata 0
      

      Warum muss die "00" bei SerialSend5 mit angegeben werden? Nur "SerialSend5" => Command Error.
      Soweit funktioniert das alles sehr gut, die Daten kommen vom RxD-Pin im ioBroker bei mqtt.0/tele/24picX/RESULT an.
      Aber manchmal vergisst er das SerialSend5 und die Übertragung stoppt. Wenn ich an der Konsole "SerialSend 5 00" eingebe, klappt wieder alles.
      Da ich die Daten nur jede Stunde einmal benötige, dachte ich mir, ich sende kurz vor dem Lesen vom ioBroker/Blockly das "SerialSend 5 00" an den ESP01S. Aber wie? Ich habe viel gelesen, aber bin zu keinem brauchbarem Ergebnis gekommen.
      Mit dem "sendTo" Block habe ich es geschafft das Relais am GPIO0 des ESP01S EIN/AUS zu schalten, aber SerialSend5 habe ich nicht geschafft. (sendTo = mqtt.0, Befehl=sendMessage2Client, topic=cmnd/24picX/POWER, message=0 für Relais AUS)
      Welchen topic muss ich für die Konsole eintragen? (topic=cmnd, message=SerialSend5 00 => Command Error)
      Ich habe es auch mit dem "exec" Block probiert, Befehl=http://<IP>/cm?cmnd=SerialSend5 00, keine Reaktion in der Konsole. Ich gehe davon aus, dass die Konsole mit "SerialSend Done" bei Erfolg geantwortet hätte.
      Hat da jemand eine Lösung für mich?
      2.Frage:
      Das Gerät am RxD Pin senden jede Sekunde Daten. Das hält natürlich mein WLAN und den ioBroker ziemlich auf Trab. Kann man den RxD Pin duch einen Befehl EIN/AUS schalten?
      Mit dem GPIO0 schalte ich ein Relais. Kann man mit GPIO0=1 etwas verknüpfen, dass nur dann die Daten am RxD verarbeitet werden?
      Danke

      MartinP 1 Reply Last reply Reply Quote 0
      • MartinP
        MartinP @MartinSU last edited by MartinP

        @martinsu Es werden zwei Kommandos geschickt, als Erstes wird die Baudrate auf 19200 gesetzt, und dann noch ein NUL - Zeichen gesendet...

        SerialSend5 ohne dass der Inhalt angegeben wird, der gesendet werden soll ist nicht ausführbar und wirft natürlich einen Fehler ...

        Ich vermute, dass ein Script nur bis zum ersten Kommando ausgeführt wird, das einen Fehler meldet. Wenn SerialSend5 nicht ausgeführt wird, wird es bereits beim Baudrate Kommando einen Fehler gegeben haben - vielleicht ist die Schnittstelle schon durch ein empfangenes Zeichen aktiviert worden.....

        Mit SerialSend5 beackert man den TxD Pin des ESP, und nicht den GPIO0 Pin ...

        MartinSU 1 Reply Last reply Reply Quote 0
        • MartinSU
          MartinSU @MartinP last edited by

          @martinp
          danke für Deine Antwort.
          Meine "Rule2 on System#Boot do Backlog Baudrate 19200; SerialSend5 00 endon" funktioniert. Wie ich inzwischen festgestellt habe, wird nur der SerialSend beim Stromausfall vergessen => siehe Doku. Somit müsste ich die Baudrate eigentlich nicht immer neu setzen.
          Das mit dem manchmal SerialSend5 vergessen meine ich, dass es manchmal Tage, manchmal nur Stunden dauert. Deshalb wollte ich vom ioBroker/Blockly das Serialsend5 nochmal senden, wenn ich es brauche. Und dies bekomme ich nicht hin.

          Ich hatte schon überlegt, mit einem UND-Gatter eine Verknüpfung in Hardware zu bauen. Nur wenn GPIO0=1 ist, kommen die Daten am RxD an.
          Bild2.jpg
          Aber bevor ich so etwas in Hardware gieße, dachte ich es gäbe vielleicht eine Software Lösung in Tasmota

          MartinP 1 Reply Last reply Reply Quote 0
          • MartinP
            MartinP @MartinSU last edited by

            @martinsu Eventuell in der Tasmota-Konfiguration den RxD Pin auf eine andere Funktion "umbiegen"?

            Wobei ich nicht weiß, ob da nicht vielleicht eine Plausibilitätsprüfung dann innerhalb Tasmota entweder die serielle Kommunikation ganz abschaltet, oder das "umbiegen" verhindert...

            MartinSU 1 Reply Last reply Reply Quote 0
            • MartinSU
              MartinSU @MartinP last edited by

              @martinp
              Den RxD auf einen normalen GPIOx umprogrammieren und später wieder zurück als RxD hatte ich auch schon überlegt.
              Bisher weiß ich aber nicht, wie man das vom ioBroker aus macht.

              MartinP 1 Reply Last reply Reply Quote 0
              • MartinP
                MartinP @MartinSU last edited by

                @martinsu Was ist das denn für ein Gerät am RxD-Pin? Kann man dem nicht beibringen, seltener oder sogar nur "on request" Daten zu schicken?

                MartinSU 1 Reply Last reply Reply Quote 0
                • MartinSU
                  MartinSU @MartinP last edited by

                  @martinp
                  Zisternenpegel, fertiges Gerät, schon etwas älter. (wenn man nicht alles selber baut...)
                  Ich seh mich schon oben die kleine Schaltung bauen, 74HC00 4-fach NAND, 1 Gatter für das UND, 1 Gatter für die Invertierung, läuft auch mit 3,3V

                  MartinP 1 Reply Last reply Reply Quote 0
                  • MartinP
                    MartinP @MartinSU last edited by

                    @martinsu Das heißt, Du brauchst die Daten aus den empfangenen Telegrammen prinzipiell schon, aber nicht in der Häufigkeit, wie sie das Gerät absetzt?

                    MartinSU 1 Reply Last reply Reply Quote 0
                    • MartinSU
                      MartinSU @MartinP last edited by

                      @martinp
                      richtig, die Wassermenge ändert sich sehr langsam.
                      Das Gerät sendet jede Sekunde.
                      Z.Z. werte ich die Daten alle 3 Stunden aus, wenn mehr als 500 Liter drin sind. Je weniger desto öfter, bis alle 15 Minuten.

                      MartinP 1 Reply Last reply Reply Quote 0
                      • MartinP
                        MartinP @MartinSU last edited by MartinP

                        @martinsu EIGENTLICH sollte sich iobroker auch durch Telegramme im Sekundentakt nicht aus der Ruhe bringen lassen...

                        Eventuell kann man da auch in der Telegramm-Auswertung im Datenpunkt entsprechende Vorkehrungen treffen. Wenn man da fast alle einlaufenden Telegramme wegwirft ...

                        Ist aber natürlich auch eine Frage, wie der ESP 01 versorgt wird. Wenn das aus einem Akku passiert, sollte man natürlich anders vorgehen, und die überzähligen Telegramme per Hardware blockieren

                        MartinSU 1 Reply Last reply Reply Quote 0
                        • MartinSU
                          MartinSU @MartinP last edited by

                          @martinp
                          Ich habe das Problem jetzt gelöst.
                          Für das RxD hab ich die Schaltung wie oben in Hardware gebaut.
                          Das "SerialConfig" habe ich jetzt auch geschafft von Blockly zu senden. Mein Fehler war, dass ich "Passwort für Web Oberfläche" gesetzt hatte, dies muss natürlich bei jedem Command mit gesendet werden.
                          Bild1.gif

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate
                          FAQ Cloud / IOT
                          HowTo: Node.js-Update
                          HowTo: Backup/Restore
                          Downloads
                          BLOG

                          755
                          Online

                          32.0k
                          Users

                          80.4k
                          Topics

                          1.3m
                          Posts

                          2
                          11
                          270
                          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