Ankündigung

Einklappen
Keine Ankündigung bisher.

MQTT API Server und MQTT Clients - LBS19001051 - LBS19001054

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Hi.

    Teste auf dem Rpi mit mosquitto mal folgendes.


    Open up two more terminal windows.

    In Terminal window 1 type:

    mosquitto_sub -d -t hello/world

    In Terminal window 2 type:

    mosquitto_pub -d -t hello/world -m "Hello from Terminal window 2!"

    When you have done the second statement you should see this in the Terminal 1 window.
    Wenn das geht würde ich ne Logikseite mit dem server subscriber anlegen und ihm etwas schicken so wie es jonofe beschrieben hat.
    Lg
    Jean-Luc Picard: "Things are only impossible until they are not."

    Kommentar


      #32
      Wer ein Synology NAS hat kann den Mosquitto Broker sehr einfach dort laufen lassen.
      https://sites.google.com/site/mccwor...n-synology-nas

      Kleine Ergänzung:
      Bei mir war ein Reboot des NAS nach der Installation notwendig, da sich das Paket sonst nicht starten ließ.
      Zuletzt geändert von woda; 21.05.2017, 09:03.
      Gruß Wolfgang
      __________________________________________________ ____
      HS

      Kommentar


        #33
        Zitat von jonofe Beitrag anzeigen
        mit dem mosquitto_passwd Befehl ... siehe oben in der Anleitung.
        Ja, wer richtig lesen kann ist klar im Vorteil. Sorry..

        Hatte den Benutzernahmen im LBS versehentlich großgeschrieben.

        Jetzt läuft es perfekt. Danke!

        Kommentar


          #34
          Zitat von trollmar Beitrag anzeigen
          Hi.

          Teste auf dem Rpi mit mosquitto mal folgendes.




          Wenn das geht würde ich ne Logikseite mit dem server subscriber anlegen und ihm etwas schicken so wie es jonofe beschrieben hat.
          Lg
          Danke für den Tipp.
          Wird leider quttiert mit:
          Code:
          Client mosqsub/19097-KNXRouter sending CONNECT
          Client mosqsub/19097-KNXRouter received CONNACK
          Connection Refused: not authorised.
          Liegt vermutlich daran, dass schon ein Benutzer mit PW angelegt wurde.
          Aber der Rest funktioniert ja...

          Kommentar


            #35
            Hi André!

            Ich hatte gestern folgenden Effekt:
            Zunächst habe ich nachmittags meinen RPi mit Mosquitto außer Betrieb genommen, ohne dabei die MQTT Server LBS zu deaktivieren.
            Diese haben im Log natürlich die Exception gezeigt, dass die Verbindung verloren wäre. Soweit so gut.

            Das lief dann den Nachmittag so durch, weil ich zwischendurch nicht zuhause war.

            Abends ging dann bei Edomi plötzlich gar nicht mehr. Im Error-Log hatte ich insgesamt über 4000 Fehler bestehend aus SEQ Counter abweichend und Disconnect_Request. Alles im Wechsel. Die Counter-Werte waren immer die Geichen (?): IST: 0, SOLL: 1

            Eine erneute Projektaktivierung brachte nichts.
            Erst das komplette Deaktivieren der Logikseite, die die beiden MQTT Server LBS, die direkt mit den Edomi KOs umgehen, brachte Abhilfe.

            Hast Du eine Idee, was da los sein könnte?
            Es muss auf jeden Fall im Zusammenhang mit dem nicht verfügbaren MQTT Broker stehen.

            Kommentar


              #36
              Zitat von Nanosonde Beitrag anzeigen

              Hast Du eine Idee, was da los sein könnte?
              Es muss auf jeden Fall im Zusammenhang mit dem nicht verfügbaren MQTT Broker stehen.
              Die SeqCounter Errors hatte ich auch schon. Allerdings nicht in diesem Ausmaß und auch nicht, dass EDOMI nicht mehr reagiert hat.

              Bei der erfolglosen Projektaktivierung war der MQTT Broker aber wieder online, oder?

              Werde mir das nochmal anschauen und auch mal den Ausfall des Brokers als Testcase simulieren.

              Kommentar


                #37
                Zitat von jonofe Beitrag anzeigen


                Bei der erfolglosen Projektaktivierung war der MQTT Broker aber wieder online, oder?
                Nein. Ich hatte die MQTT Server LBS zunächst gar nicht im Verdacht.
                Merkwürdig fand ich die immer gleichen Zählstände beim SeqCounter Error.

                Kommentar


                  #38
                  interessant wäre gewesen, ob denn die Reaktivierung des Brokers zusammen mit der Neuaktivierung des Edomi Projektes behoben hätte. Wie ist denn deine KNX Anbindung realisiert?

                  Kommentar


                    #39
                    Die KNX Anbindung erfolgt über ein MDT SCN-IP000.02 (IP Interface, kein Router).
                    Ich habe auch sofort die ETS5 getestet. Dort klappt die KNX Kommunikation ohne Probleme.
                    Es muss also was in Edomi gewesen sein.

                    Kommentar


                      #40
                      Ich glaube eher der MDT kann schlecht mit hoher Telegrammrate umgehen. Ich hatte kürzlich MDT angeschrieben und leider keine befriedigende Antwort bekommen.
                      Fakt ist, wenn die Telegramrate in Edomi höher als 20 eingestellt wird, hagelts Sequenze Counter Fehler. Der Enertex schafft 35 ohne Probleme.
                      >>Smelly One<<
                      >> BURLI <<
                      Grüße Armin

                      Kommentar


                        #41
                        Es wird dennoch einen Zusammenhang mit dem MQTT Publish Server geben, denn ich habe bei mir gelegentlich dieselben Fehler, und zwar nur auf dem Testsystem, auf dem die MQTT LBS laufen. Beide meiner EDOMI Instanzen (Test und Produktion) verwenden dieselbe KNX Anbindung (eibd => Siemens KNX USB Interface => KNX). In den letzten 4 Tagen hatte ich zwar nur einen SeqCounter Fehler auf dem Testsystem (davor aber auch mal 50 oder 80), auf dem Produktionssystem hingegen habe ich gar keine.
                        Ich denke es könnte ggf. ein Timingproblem durch MySQL Trigger geben, insbesondere wenn die Telegramrate hoch ist und wenn dann noch der MQTT offline ist und somit das Publish Skript ins Leere läuft. Werde noch mal überlegen, ob man das Skript optimieren kann oder ggf. die Stored Procedure, aber die ist ja quasi schon minimal, da sie nur ein PHP Skript aufruft. Evtl. könnte man statt mit dem Trigger das PHP Skript aufzurufen, das geänderte iKO/GA in eine temporäre Tabelle schreiben und ein PHP Skript diese Tabelle scannen lassen.

                        Kommentar


                          #42
                          Ich habe aber ohne MQTT die Sequence Counter. Über einer Telegrammrate von 20 gehts richtig ab. Scheinbar reicht der Puffer nicht.
                          >>Smelly One<<
                          >> BURLI <<
                          Grüße Armin

                          Kommentar


                            #43
                            Ich meinte damit ja nicht, dass es da keinen Zusammenhang mit MDT gibt, aber es gibt ganz sicher auch einen mit dem MQTT LBS. Und beides in Kombination kann das Problem natürlich verstärken.

                            Kommentar


                              #44
                              jonofe Hi André! Ich habe die Bausteine jetzt auch mal getestet. Den Broker und node-red auf einem Raspi, weil Broker und Edomi auf einer Maschine zu jeder Menge seq-counter Fehler führen. Da sind deine LBS aber scheinbar unschuldig, da es mit einem externen Broker funktioniert. Eine Frage hab ich noch, hast Du das übergeben von JSON Strings integriert, oder nur die number und String funktionen? Ein Json lässt sich nicht in die KO Datenbank eintragen. Ich vermute mal das es an den Sonderzeichen im String hängt.

                              Ich hänge mal das log an:
                              Code:
                              2017-06-05 10:44:00    645406    8130    debug    EXE19001052 [v0.3]:    Topic: edomi/set/internal/1082 - Payload: {"codepage":"ger","model":"RS815+","ram":6144,"serial":"15A0MRN914400","temperature":52,"temperature_warn":false,"time":"Mon Jun 5 10:44:00 2017","uptime":1015854,"version":"15101","version_string":"DSM 6.1.1-15101 Update 4"} (1765)
                              2017-06-05 10:44:00    646096    8130    debug    EXE19001052 [v0.3]:    MQTT find Query: SELECT id,ga,name FROM edomiLive.RAMko WHERE (ga="1082" OR name="1082") (1765)
                              2017-06-05 10:44:00    646886    8130    debug    EXE19001052 [v0.3]:    MQTT Set Query: INSERT INTO edomiLive.RAMknxRead (mode,gatyp,gaid,value) VALUES (4,0,"1082","{"codepage":"ger","model":"RS815+","ram":6144,"serial":"15A0MRN914400","temperature":52,"temperature_warn":false,"time":"Mon Jun 5 10:44:00 2017","uptime":1015854,"version":"15101","version_string":"DSM 6.1.1-15101 Update 4"}") (1765)
                              2017-06-05 10:44:00    647452    8130    debug    EXE19001052 [v0.3]:    ERROR: 1082 GA: 1082 (Mqtt) could not be set in EDOMI database (1765)
                              Zuletzt geändert von vento66; 05.06.2017, 09:53.
                              Mfg Micha
                              Ich sage ja nicht, das wir alle dummen Menschen loswerden müssen, aber könnten wir nicht einfach alle Warnhinweise entfernen und den Dingen ihren Lauf lassen?

                              Kommentar


                                #45
                                Hi Micha,

                                ja das liegt wohl am JSON, da innerhalb des JSON auch Anführungszeichen verwendet werden. Das führ dann zu einem ungültigen SQL Statement. Sollte aber korrigierbar sein. Schaue ich mir mal an und melde mich.

                                Viele Grüße
                                André

                                Kommentar

                                Lädt...
                                X