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. ioBroker Allgemein
  4. [Gelöst] MQTT-Verbindung via Python script

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    821

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    616

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    1.1k

[Gelöst] MQTT-Verbindung via Python script

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
21 Beiträge 4 Kommentatoren 4.0k 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.
  • Marc BergM Marc Berg

    @codierknecht sagte in MQTT-Verbindung:

    @homoran sagte in MQTT-Verbindung:

    aber irgendwo muss ein Broker sein.

    Ich sehe das so, dass das Python-Script sendet - also den Broker spielt.

    Nein, das Skript ist der MQTT-Client, der an den Broker (der ja schon erfolgreich läuft) senden/publish will. Allerdings ist der Server in der Variable falsch hinterlegt. (FQDN / IP-Adresse). Der Port 8883 scheint übereinzustimmen.

    @Steinmetz_4 Ist das richtig, dass bereits eine Broker-Instanz läuft? Dann benötigst du keine zweite. Zeig' mal bitte die Einstellungen dieser Instanz.

    S Offline
    S Offline
    Steinmetz_4
    schrieb am zuletzt editiert von
    #10

    @marc-berg

    Da bin ich wieder...

    Das Python script soll senden (temperatur) an IoBroker MQTT

    c031f7f0-a911-4540-b894-6ad740d0b4a2-image.png

    35e4a3db-7aa9-40c5-9eb7-a9805924384e-image.png

    Ich bin auch schon ein Stück weiter...
    das script versucht zu senden, kommt aber nicht durch...

    600597d5-8853-4ef8-90f4-d4d4fd45556b-image.png !

    #!/usr/bin/python3
    import sys
    import paho.mqtt.client as mqtt
    import ssl
     
    # set the variables
    # Path to the Sensor systempath
    # 28-01142f7ba71a has to be changed to you sensor path!
    sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
    broker='FQDN / 192.168.178.185'
    port=1879
    publish_topic="house/pi-ds18b20"
    clientid='python-mqtt-ds18b20'
    username='Tom'
    password='xxxxxxxxxx'
    insecure=True
    qos=1
    retain_message=True
    
    # do the stuff
    def readTempSensor(sensorName) :
        f = open(sensorName, 'r')
        lines = f.readlines()
        f.close()
        return lines
     
    def readTempLines(sensorName) :
        lines = readTempSensor(sensorName)
        while lines[0].strip()[-3:] != 'YES':
            time.sleep(0.2)
            lines = readTempSensor(sensorName)
        temperaturStr = lines[1].find('t=')
        if temperaturStr != -1 :
            tempData = lines[1][temperaturStr+2:]
            tempCelsius = float(tempData) / 1000.0
            tempKelvin = 273 + float(tempData) / 1000
            tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
            return [tempCelsius, tempKelvin, tempFahrenheit]
    
    #MQTT Connection
    client=mqtt.Client(clientid)
    client.username_pw_set(username, password)
    client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
    client.tls_insecure_set(insecure)
    client.connect(broker, port)
    client.loop_start()
    
    client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
    
    client.disconnect()
    client.loop_stop()
    

    Mfg

    Raspi 4 mit aktuellem IoBroker Master (The Brain)
    Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
    Raspi 4 mit aktuellem Motioneye
    3 x Heizstab zur PV-Eigenverbrauchsoptimierung
    ETS 5 Professionel - 5.7.5
    Samsung Tab 2 - 10.1
    Buskomponenten von MDT

    HomoranH 1 Antwort Letzte Antwort
    0
    • S Steinmetz_4

      @marc-berg

      Da bin ich wieder...

      Das Python script soll senden (temperatur) an IoBroker MQTT

      c031f7f0-a911-4540-b894-6ad740d0b4a2-image.png

      35e4a3db-7aa9-40c5-9eb7-a9805924384e-image.png

      Ich bin auch schon ein Stück weiter...
      das script versucht zu senden, kommt aber nicht durch...

      600597d5-8853-4ef8-90f4-d4d4fd45556b-image.png !

      #!/usr/bin/python3
      import sys
      import paho.mqtt.client as mqtt
      import ssl
       
      # set the variables
      # Path to the Sensor systempath
      # 28-01142f7ba71a has to be changed to you sensor path!
      sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
      broker='FQDN / 192.168.178.185'
      port=1879
      publish_topic="house/pi-ds18b20"
      clientid='python-mqtt-ds18b20'
      username='Tom'
      password='xxxxxxxxxx'
      insecure=True
      qos=1
      retain_message=True
      
      # do the stuff
      def readTempSensor(sensorName) :
          f = open(sensorName, 'r')
          lines = f.readlines()
          f.close()
          return lines
       
      def readTempLines(sensorName) :
          lines = readTempSensor(sensorName)
          while lines[0].strip()[-3:] != 'YES':
              time.sleep(0.2)
              lines = readTempSensor(sensorName)
          temperaturStr = lines[1].find('t=')
          if temperaturStr != -1 :
              tempData = lines[1][temperaturStr+2:]
              tempCelsius = float(tempData) / 1000.0
              tempKelvin = 273 + float(tempData) / 1000
              tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
              return [tempCelsius, tempKelvin, tempFahrenheit]
      
      #MQTT Connection
      client=mqtt.Client(clientid)
      client.username_pw_set(username, password)
      client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
      client.tls_insecure_set(insecure)
      client.connect(broker, port)
      client.loop_start()
      
      client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
      
      client.disconnect()
      client.loop_stop()
      

      Mfg

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #11

      @steinmetz_4 sagte in MQTT-Verbindung:

      Das Python script soll senden (temperatur) an IoBroker MQTT

      und der ist als Broker konfiguriert?
      und unter der IP

      @steinmetz_4 sagte in MQTT-Verbindung:

      192.168.178.185

      zu erreichen?

      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 -

      S 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @steinmetz_4 sagte in MQTT-Verbindung:

        Das Python script soll senden (temperatur) an IoBroker MQTT

        und der ist als Broker konfiguriert?
        und unter der IP

        @steinmetz_4 sagte in MQTT-Verbindung:

        192.168.178.185

        zu erreichen?

        S Offline
        S Offline
        Steinmetz_4
        schrieb am zuletzt editiert von
        #12

        @homoran

        Wen meinst Du?
        MQTT Adapter? läuft in IoBroker unter 192.168.178.185

        Raspi 4 mit aktuellem IoBroker Master (The Brain)
        Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
        Raspi 4 mit aktuellem Motioneye
        3 x Heizstab zur PV-Eigenverbrauchsoptimierung
        ETS 5 Professionel - 5.7.5
        Samsung Tab 2 - 10.1
        Buskomponenten von MDT

        HomoranH 1 Antwort Letzte Antwort
        0
        • S Steinmetz_4

          @homoran

          Wen meinst Du?
          MQTT Adapter? läuft in IoBroker unter 192.168.178.185

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #13

          @steinmetz_4 sagte in MQTT-Verbindung:

          MQTT Adapter

          ja, den!

          @homoran sagte in MQTT-Verbindung:

          der ist als Broker konfiguriert?

          als Client nutzt er dir nichts.

          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 -

          S 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @steinmetz_4 sagte in MQTT-Verbindung:

            MQTT Adapter

            ja, den!

            @homoran sagte in MQTT-Verbindung:

            der ist als Broker konfiguriert?

            als Client nutzt er dir nichts.

            S Offline
            S Offline
            Steinmetz_4
            schrieb am zuletzt editiert von
            #14

            @homoran

            Ich denke schon.

            dc56de23-c039-4973-a8cb-1af0e632e691-image.png

            Watermeter läuft damit.

            929a75b2-d2f7-4d76-b907-59b92e585d8e-image.png

            Raspi 4 mit aktuellem IoBroker Master (The Brain)
            Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
            Raspi 4 mit aktuellem Motioneye
            3 x Heizstab zur PV-Eigenverbrauchsoptimierung
            ETS 5 Professionel - 5.7.5
            Samsung Tab 2 - 10.1
            Buskomponenten von MDT

            HomoranH 1 Antwort Letzte Antwort
            0
            • S Steinmetz_4

              @homoran

              Ich denke schon.

              dc56de23-c039-4973-a8cb-1af0e632e691-image.png

              Watermeter läuft damit.

              929a75b2-d2f7-4d76-b907-59b92e585d8e-image.png

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #15

              @steinmetz_4 sagte in MQTT-Verbindung:

              Ich denke schon.

              jepp! dann ist die Frage auch eindeutig geklärt

              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 -

              S 2 Antworten Letzte Antwort
              0
              • HomoranH Homoran

                @steinmetz_4 sagte in MQTT-Verbindung:

                Ich denke schon.

                jepp! dann ist die Frage auch eindeutig geklärt

                S Offline
                S Offline
                Steinmetz_4
                schrieb am zuletzt editiert von
                #16

                @homoran

                Ich kann Dir nicht mehr sagen.
                Wenn ich wüsste was falsch ist, würde ich hier nicht fragen.

                :man-shrugging:

                Raspi 4 mit aktuellem IoBroker Master (The Brain)
                Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                Raspi 4 mit aktuellem Motioneye
                3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                ETS 5 Professionel - 5.7.5
                Samsung Tab 2 - 10.1
                Buskomponenten von MDT

                Marc BergM 1 Antwort Letzte Antwort
                0
                • S Steinmetz_4

                  @homoran

                  Ich kann Dir nicht mehr sagen.
                  Wenn ich wüsste was falsch ist, würde ich hier nicht fragen.

                  :man-shrugging:

                  Marc BergM Online
                  Marc BergM Online
                  Marc Berg
                  Most Active
                  schrieb am zuletzt editiert von Marc Berg
                  #17

                  @steinmetz_4 ist das das aktive Skript???

                  b45847f4-bad6-48c9-a223-360125309150-grafik.png

                  NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                  Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                  Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                  S 1 Antwort Letzte Antwort
                  0
                  • Marc BergM Marc Berg

                    @steinmetz_4 ist das das aktive Skript???

                    b45847f4-bad6-48c9-a223-360125309150-grafik.png

                    S Offline
                    S Offline
                    Steinmetz_4
                    schrieb am zuletzt editiert von
                    #18

                    @marc-berg

                    Sorry, nein !

                    ich tüftel an allen Ecken und Enden!#

                    aktuel:

                    #!/usr/bin/python3
                    import sys
                    import paho.mqtt.client as mqtt
                    import ssl
                    
                    # set the variables
                    # Path to the Sensor systempath
                    # 28-01142f7ba71a has to be changed to you sensor path!
                    sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
                    broker='192.168.178.185'
                    port=1879
                    publish_topic="house/pi-ds18b20"
                    clientid='python-mqtt-ds18b20'
                    username='Tom'
                    password='Atomameise'
                    insecure=True
                    qos=1
                    retain_message=True
                    
                    # do the stuff
                    def readTempSensor(sensorName) :
                        f = open(sensorName, 'r')
                        lines = f.readlines()
                        f.close()
                        return lines
                    
                    def readTempLines(sensorName) :
                        lines = readTempSensor(sensorName)
                        while lines[0].strip()[-3:] != 'YES':
                            time.sleep(0.2)
                            lines = readTempSensor(sensorName)
                        temperaturStr = lines[1].find('t=')
                        if temperaturStr != -1 :
                            tempData = lines[1][temperaturStr+2:]
                            tempCelsius = float(tempData) / 1000.0
                            tempKelvin = 273 + float(tempData) / 1000
                            tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
                            return [tempCelsius, tempKelvin, tempFahrenheit]
                    
                    #MQTT Connection
                    client=mqtt.Client(clientid)
                    client.username_pw_set(username, password)
                    client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
                    client.tls_insecure_set(insecure)
                    client.connect(broker, port)
                    client.loop_start()
                    
                    client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
                    
                    client.disconnect()
                    client.loop_stop()
                    
                    
                    

                    Mfg

                    Raspi 4 mit aktuellem IoBroker Master (The Brain)
                    Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                    Raspi 4 mit aktuellem Motioneye
                    3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                    ETS 5 Professionel - 5.7.5
                    Samsung Tab 2 - 10.1
                    Buskomponenten von MDT

                    Marc BergM 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @steinmetz_4 sagte in MQTT-Verbindung:

                      Ich denke schon.

                      jepp! dann ist die Frage auch eindeutig geklärt

                      S Offline
                      S Offline
                      Steinmetz_4
                      schrieb am zuletzt editiert von Steinmetz_4
                      #19

                      @homoran sagte in MQTT-Verbindung:

                      @steinmetz_4 sagte in MQTT-Verbindung:

                      Ich denke schon.

                      jepp! dann ist die Frage auch eindeutig geklärt

                      Verzeiht

                      Ich weiß, dass ich nichts weiß (https://de.wikipedia.org/wiki/Ich_weiß,_dass_ich_nichts_weiß)

                      Raspi 4 mit aktuellem IoBroker Master (The Brain)
                      Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                      Raspi 4 mit aktuellem Motioneye
                      3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                      ETS 5 Professionel - 5.7.5
                      Samsung Tab 2 - 10.1
                      Buskomponenten von MDT

                      1 Antwort Letzte Antwort
                      0
                      • S Steinmetz_4

                        @marc-berg

                        Sorry, nein !

                        ich tüftel an allen Ecken und Enden!#

                        aktuel:

                        #!/usr/bin/python3
                        import sys
                        import paho.mqtt.client as mqtt
                        import ssl
                        
                        # set the variables
                        # Path to the Sensor systempath
                        # 28-01142f7ba71a has to be changed to you sensor path!
                        sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
                        broker='192.168.178.185'
                        port=1879
                        publish_topic="house/pi-ds18b20"
                        clientid='python-mqtt-ds18b20'
                        username='Tom'
                        password='Atomameise'
                        insecure=True
                        qos=1
                        retain_message=True
                        
                        # do the stuff
                        def readTempSensor(sensorName) :
                            f = open(sensorName, 'r')
                            lines = f.readlines()
                            f.close()
                            return lines
                        
                        def readTempLines(sensorName) :
                            lines = readTempSensor(sensorName)
                            while lines[0].strip()[-3:] != 'YES':
                                time.sleep(0.2)
                                lines = readTempSensor(sensorName)
                            temperaturStr = lines[1].find('t=')
                            if temperaturStr != -1 :
                                tempData = lines[1][temperaturStr+2:]
                                tempCelsius = float(tempData) / 1000.0
                                tempKelvin = 273 + float(tempData) / 1000
                                tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
                                return [tempCelsius, tempKelvin, tempFahrenheit]
                        
                        #MQTT Connection
                        client=mqtt.Client(clientid)
                        client.username_pw_set(username, password)
                        client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
                        client.tls_insecure_set(insecure)
                        client.connect(broker, port)
                        client.loop_start()
                        
                        client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
                        
                        client.disconnect()
                        client.loop_stop()
                        
                        
                        

                        Mfg

                        Marc BergM Online
                        Marc BergM Online
                        Marc Berg
                        Most Active
                        schrieb am zuletzt editiert von Marc Berg
                        #20

                        @steinmetz_4
                        Wenn ich die Fehlermeldung richtig interpretiere, versucht dein Skript eine verschlüsselte Verbindung, die du hier:

                        client.tls_set….
                        

                        auch so aktivierst. Dein Broker ist aber nicht mit SSL konfiguriert.
                        Schalte SSL im Skript ab.

                        Und: Du musst ruhiger werden … :-)

                        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                        S 1 Antwort Letzte Antwort
                        0
                        • Marc BergM Marc Berg

                          @steinmetz_4
                          Wenn ich die Fehlermeldung richtig interpretiere, versucht dein Skript eine verschlüsselte Verbindung, die du hier:

                          client.tls_set….
                          

                          auch so aktivierst. Dein Broker ist aber nicht mit SSL konfiguriert.
                          Schalte SSL im Skript ab.

                          Und: Du musst ruhiger werden … :-)

                          S Offline
                          S Offline
                          Steinmetz_4
                          schrieb am zuletzt editiert von
                          #21

                          @marc-berg

                          Tada, es funktioniert!
                          Ich danke Dir!
                          War ein holpriger Weg aber es läuft...

                          Habe beide Punkte auskommentiert.

                          afad0031-d184-471a-b744-48fb1d2b13a4-image.png

                          P.S. Ich bin die Ruhe in Person...

                          Mfg
                          Tom

                          Raspi 4 mit aktuellem IoBroker Master (The Brain)
                          Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                          Raspi 4 mit aktuellem Motioneye
                          3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                          ETS 5 Professionel - 5.7.5
                          Samsung Tab 2 - 10.1
                          Buskomponenten von MDT

                          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
                          FAQ Cloud / IOT
                          HowTo: Node.js-Update
                          HowTo: Backup/Restore
                          Downloads
                          BLOG

                          454

                          Online

                          32.8k

                          Benutzer

                          82.9k

                          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