Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Microcontroller
  5. Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    408

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?

Scheduled Pinned Locked Moved Microcontroller
65 Posts 7 Posters 13.5k Views 7 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H HerrFrodo

    @ralla66 Klingt gut!

    Bei meinen Recherchen zu verschiedenen Feinstaubsensoren, habe ich festgestellt, dass der SDS011 leider KEIN PM1 misst. Und wenn ich schon den Aufwand betreibe, dann will ich auch die kleinen Stäube messen können. Klingt doch einleuchtend, oder?

    Alternative Sensoren gibt es von Gravity, Sensirion usw.... ABER - sie haben I2C.....

    Für I2C gibt es auch so einen Adapter wie Du so einen hast.
    Die Frage ist, ob es nicht möglich ist den I2C oder UART direkt vom Sensor einzulesen, ohne einen ESP nutzen zu müssen!?

    Edit: Ich meine direkt mit dem RS232/I2C etc. Adapter zu LAN

    Ralla66R Offline
    Ralla66R Offline
    Ralla66
    Most Active
    wrote on last edited by Ralla66
    #40

    @herrfrodo

    DHT11 am Tasmota ESP der die Temperatur am GPIO TX per Serial sendet.
    Baudrate 9600 8N1
    ESP8266
    Jetzt noch den Serial to Lan Adapter testen.

    Script :

    >D
    
    temp=0
    hum=0
    tau=0
    
    >B
    
    so(3 1 9600 8N1 1024)
    
    >T
    
    temp=DHT11#Temperature
    hum=DHT11#Humidity
    tau=DHT11#Dewpoint
    
    >S
    
    if upsecs%10==0
    then 
    =>serialsend {"Temperature":%temp%,"Humidity":%hum%,"Dewpoint":%tau%}
    print ---- SEND Serial to hterm ----
    endif
    
    

    Telenetrieperiode ist 10

    TCP ESP DHT 2.jpg

    Serial alle 10 Sekunden naxh hterm

    TCP ESP DHT.jpg

    H 1 Reply Last reply
    0
    • Ralla66R Ralla66

      @herrfrodo

      DHT11 am Tasmota ESP der die Temperatur am GPIO TX per Serial sendet.
      Baudrate 9600 8N1
      ESP8266
      Jetzt noch den Serial to Lan Adapter testen.

      Script :

      >D
      
      temp=0
      hum=0
      tau=0
      
      >B
      
      so(3 1 9600 8N1 1024)
      
      >T
      
      temp=DHT11#Temperature
      hum=DHT11#Humidity
      tau=DHT11#Dewpoint
      
      >S
      
      if upsecs%10==0
      then 
      =>serialsend {"Temperature":%temp%,"Humidity":%hum%,"Dewpoint":%tau%}
      print ---- SEND Serial to hterm ----
      endif
      
      

      Telenetrieperiode ist 10

      TCP ESP DHT 2.jpg

      Serial alle 10 Sekunden naxh hterm

      TCP ESP DHT.jpg

      H Offline
      H Offline
      HerrFrodo
      wrote on last edited by HerrFrodo
      #41

      @ralla66 Gute Arbeit!

      Habe leider erst heute Deinen Post gesehen :-(
      Damit ich das richtig verstehe....
      Du hast in Tasmota die GPIO zugeordnet und wo auch immer das Script reingeladen. Dann bekommst Du die Werte in Tasmota angezeigt.
      Dann hast Du ein Terminalprogramm geöffnet und die Adresse vom ESP eingegben.
      Daraufhin wird Dir der Daten-Stream fortwährend angezeigt.
      Somit ist der Beweis der Übergabe erbracht.

      Wie macht das dann der serial zu LAN Adapter? Was macht der aus dem Datenoutput?
      Eine Weboberfläche wird er wohl nicht haben um Werte zuweisen zu können, oder?
      Abruf per NodeRed mittels IP und Port (den man ja auch erstmal wissen muss...)?

      Ich habe mir den Sensirion SPS30 bestelllt (UART und I2C) und den 2CH UART to Ethernet Converter. Einen RasPi 4b habe ich noch hier.

      Übrigens, man kann ja weitere ioBroker clienten beim "Master" anmelden.
      Bedeutet, dass ich den SPS30 auch direkt an einen RasPi mit LAN verdrahten kann und auf den Raspi ioBroker lade. Mit dem I2C - Adapter sollte es dann möglich sein, die Werte als Objekt zu bekommen. Ein RasPi 3b kostet ca. 34€ und hat LAN schon an Bord.
      Der ESP8266 (laufen bei mir 3 Stück) kostet ca. 10€ plus den serial zu LAN Adapter...oder kann man auch einen ESP mit LAN nehmen...???

      Der Vorteil des ESP liegt natürlich auf der Hand und wird hier gut beschrieben: https://www.raspberry-pi-geek.de/ausgaben/rpg/2016/02/mikrocontroller-esp8266-fuer-automationsaufgaben-im-iot/

      Wo ein Wille ist, ist auch ein LAN!

      H 1 Reply Last reply
      0
      • H HerrFrodo

        @ralla66 Gute Arbeit!

        Habe leider erst heute Deinen Post gesehen :-(
        Damit ich das richtig verstehe....
        Du hast in Tasmota die GPIO zugeordnet und wo auch immer das Script reingeladen. Dann bekommst Du die Werte in Tasmota angezeigt.
        Dann hast Du ein Terminalprogramm geöffnet und die Adresse vom ESP eingegben.
        Daraufhin wird Dir der Daten-Stream fortwährend angezeigt.
        Somit ist der Beweis der Übergabe erbracht.

        Wie macht das dann der serial zu LAN Adapter? Was macht der aus dem Datenoutput?
        Eine Weboberfläche wird er wohl nicht haben um Werte zuweisen zu können, oder?
        Abruf per NodeRed mittels IP und Port (den man ja auch erstmal wissen muss...)?

        Ich habe mir den Sensirion SPS30 bestelllt (UART und I2C) und den 2CH UART to Ethernet Converter. Einen RasPi 4b habe ich noch hier.

        Übrigens, man kann ja weitere ioBroker clienten beim "Master" anmelden.
        Bedeutet, dass ich den SPS30 auch direkt an einen RasPi mit LAN verdrahten kann und auf den Raspi ioBroker lade. Mit dem I2C - Adapter sollte es dann möglich sein, die Werte als Objekt zu bekommen. Ein RasPi 3b kostet ca. 34€ und hat LAN schon an Bord.
        Der ESP8266 (laufen bei mir 3 Stück) kostet ca. 10€ plus den serial zu LAN Adapter...oder kann man auch einen ESP mit LAN nehmen...???

        Der Vorteil des ESP liegt natürlich auf der Hand und wird hier gut beschrieben: https://www.raspberry-pi-geek.de/ausgaben/rpg/2016/02/mikrocontroller-esp8266-fuer-automationsaufgaben-im-iot/

        H Offline
        H Offline
        HerrFrodo
        wrote on last edited by
        #42

        Halleluja :-)
        https://tasmota.github.io/docs/SPS30/

        SPS30 + ESP32 Ethernet + Tasmota MQTT -> IOBroker MQTT = müsste doch funktionieren!!!

        Tasmota-SPS30.PNG

        Wo ein Wille ist, ist auch ein LAN!

        Ralla66R 1 Reply Last reply
        0
        • H HerrFrodo

          Halleluja :-)
          https://tasmota.github.io/docs/SPS30/

          SPS30 + ESP32 Ethernet + Tasmota MQTT -> IOBroker MQTT = müsste doch funktionieren!!!

          Tasmota-SPS30.PNG

          Ralla66R Offline
          Ralla66R Offline
          Ralla66
          Most Active
          wrote on last edited by
          #43

          @herrfrodo

          der Sensor geht auch :-)

          1 Reply Last reply
          0
          • H Offline
            H Offline
            HerrFrodo
            wrote on last edited by HerrFrodo
            #44

            Da stehts doch :-) ....
            https://github.com/thryvos/Tasmota-WT32-ETH01

            Dann müsste man doch auch MQTT in ioBroker nutzen können.

            Wo ein Wille ist, ist auch ein LAN!

            H 1 Reply Last reply
            0
            • H HerrFrodo

              Da stehts doch :-) ....
              https://github.com/thryvos/Tasmota-WT32-ETH01

              Dann müsste man doch auch MQTT in ioBroker nutzen können.

              H Offline
              H Offline
              HerrFrodo
              wrote on last edited by HerrFrodo
              #45

              Jetzt müsste ich nur noch wissen ob WT32-ETH01 oder Olimex ESP32-POE?

              Wo ein Wille ist, ist auch ein LAN!

              1 Reply Last reply
              0
              • H Offline
                H Offline
                HerrFrodo
                wrote on last edited by HerrFrodo
                #46

                @Ralla66 @MartinP @Homoran

                Ich habs geschafft :-)

                Hier mein Bericht:

                Hardware:
                1x Sensirion SPS30 (Wichtig: Kabel mit Stecker nicht dabei, man braucht einen JST 1.5 ZH 5 Pin Steckverbinder )
                1x WT32_Eth01
                1x USB zu UART Adapter
                Kabel (Jumper wire Kabel female to female)

                Zuerst habe ich mir folgende Seite angesehen: https://github.com/thryvos/Tasmota-WT32-ETH01/tree/main?tab=readme-ov-file
                Dort sieht man den Aufbau der Kabelverbindungen zwischen dem USB zu UART und dem W32-Eth01.

                Hier mein Aufbau:
                USB-UART_W32-Eth01.jpg
                Strom DC 5V kommt über ein USB-Netzteil
                Dann USB-Kabel am roten USB zu UART Adapter anschließen und los gehts....

                Aber wie?
                Man braucht eine Software um die seriellen-Daten über USB schicken zu können.
                Die hier hatte ich zuerst: https://github.com/arendst/Tasmota/issues/9496#issuecomment-750148023
                Damit konnte ich zwar den W32-Eth01 zum Leben erwecken mit LAN und Wifi aber keine Verbindung zum SPS30 herstellen.
                Dann kam ich auf Otto :-) Vielen Dank OTTO!!!
                https://heinz-otto.blogspot.com/2021/06/tasmota-firmware-selbst-gebaut.html#:~:text=Hintergrund%3A Im Hintergrund wird die,komplette Datei für später herunterladen.&text=Im letzten Punkt wird die,ausgewählt und die Kompilierung gestartet.

                Ich ging nach Ottos Anleitung vor und erweiterte meinen Github-Account um Gitpod.
                Damit konnte ich dann zum TasmoCompiler v11.2.1 gelangen, um dort die nötigen Einstellungen für "meine" Tasmota-Firmware zu treffen.
                Gitpod_TasmoCompiler.PNG

                Gitpod_TasmoCompiler-open-Browser.PNG

                TasmoCompiler_Quellcode.PNG

                TasmoCompiler_Wifi.PNG

                TasmoCompiler_Funktionen.PNG

                TasmoCompiler_zusätzliche-Einstellungen.PNG

                #define USE_ETHERNET                             // Add support for ethernet (Currently fixed for Olimex ESP32-PoE)
                // WT32_ETH01
                  #define ETH_TYPE          0                    // [EthType] 0 = ETH_PHY_LAN8720, 1 = ETH_PHY_TLK110/ETH_PHY_IP101, 2 = ETH_PHY_RTL8201, 3 = ETH_PHY_DP83848, 4 = ETH_PHY_DM9051, 5 = ETH_PHY_KSZ8081
                  #define ETH_ADDRESS       1                    // [EthAddress] 0 = PHY0 .. 31 = PHY31
                  #define ETH_CLKMODE       0                    // [EthClockMode] 0 = ETH_CLOCK_GPIO0_IN, 1 = ETH_CLOCK_GPIO0_OUT, 2 = ETH_CLOCK_GPIO16_OUT, 3 = ETH_CLOCK_GPIO17_OUT
                
                #define USE_SPS30         // [I2cDriver30] Enable Sensiron SPS30 particle sensor (I2C address 0x69) (+1.7 code)
                

                Mit dem ESP-Flasher-Windows-x64.exe habe ich dann die erzeugte Tasmota32.bin auf den WT32-Eth01 flashen können.
                Esp-flasher.PNG
                Hier die Firmwaredatei: tasmota32.bin
                Dann habe ich den SPS30 angeschlossen:
                W32-Eth01_SPS30-Pic1.jpg

                W32-Eth01_SPS30-Pic2.jpg

                SPS30_Anschluss.png

                Der WT32 war nun im Netzwerk vorhanden, unter 192.168.1.69
                Folgendes habe ich eingestellt:
                Tasmota_sonstige-Einstellungen.PNG
                Das muss da rein:

                {"NAME":"WT32_ETH01","GPIO":[1,1,1,1,1,1,0,0,1,0,1,1,3840,576,5600,0,0,0,0,5568,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,1],"FLAG":0,"BASE":1}
                

                Tasmota_Geräteeinstellungen.PNG
                Hier bitte aufpassen!!! "Also, if using Ethernet, I2C works only with:
                IO32 (marked on the board as CFG, “pin 2” according to page 9 ) configured as SCL;
                IO33 (marked on the board as 485_EN, “pin 3” ibid.) configured as SDA."

                Tasmota_MQTT.PNG

                Tasmota_WT32-Eth01.PNG

                Tasmota_Logging.PNG

                Tasmota_Konsole_Wifi-off.PNG Hier habe ich das wifi deaktiviert

                Meine Einstellungsdatei: Config_tasmota_AB0F20_3872_13.3.0.dmp

                Das Ergebnis: Tasmota-SPS30_result.PNG

                Dann die Einrichtung in ioBroker:
                Unter Adapter einen weiteren MQTT-Adapter installiert.
                MQTT_Verbindung.PNG

                MQTT_Server-Settings.PNG

                MQTT_Einstellungen.PNG

                MQTT_Instanz.PNG

                MQTT_Werte.PNG

                Vielen Dank an alle, die hier eine super Vorarbeit geleistet haben!!!!

                Als nächstes werde ich den Sensor außen an der Hauswand montieren und in NodeRed die Bedingungen für das Abschalten der Lüftungsanlage festlegen.....

                #Keine Ahnung, wie ich diesen Info-Kasten unten los werde - muss sich irgendwie über einen obigen link generieren#

                Wo ein Wille ist, ist auch ein LAN!

                H 1 Reply Last reply
                0
                • H HerrFrodo

                  @Ralla66 @MartinP @Homoran

                  Ich habs geschafft :-)

                  Hier mein Bericht:

                  Hardware:
                  1x Sensirion SPS30 (Wichtig: Kabel mit Stecker nicht dabei, man braucht einen JST 1.5 ZH 5 Pin Steckverbinder )
                  1x WT32_Eth01
                  1x USB zu UART Adapter
                  Kabel (Jumper wire Kabel female to female)

                  Zuerst habe ich mir folgende Seite angesehen: https://github.com/thryvos/Tasmota-WT32-ETH01/tree/main?tab=readme-ov-file
                  Dort sieht man den Aufbau der Kabelverbindungen zwischen dem USB zu UART und dem W32-Eth01.

                  Hier mein Aufbau:
                  USB-UART_W32-Eth01.jpg
                  Strom DC 5V kommt über ein USB-Netzteil
                  Dann USB-Kabel am roten USB zu UART Adapter anschließen und los gehts....

                  Aber wie?
                  Man braucht eine Software um die seriellen-Daten über USB schicken zu können.
                  Die hier hatte ich zuerst: https://github.com/arendst/Tasmota/issues/9496#issuecomment-750148023
                  Damit konnte ich zwar den W32-Eth01 zum Leben erwecken mit LAN und Wifi aber keine Verbindung zum SPS30 herstellen.
                  Dann kam ich auf Otto :-) Vielen Dank OTTO!!!
                  https://heinz-otto.blogspot.com/2021/06/tasmota-firmware-selbst-gebaut.html#:~:text=Hintergrund%3A Im Hintergrund wird die,komplette Datei für später herunterladen.&text=Im letzten Punkt wird die,ausgewählt und die Kompilierung gestartet.

                  Ich ging nach Ottos Anleitung vor und erweiterte meinen Github-Account um Gitpod.
                  Damit konnte ich dann zum TasmoCompiler v11.2.1 gelangen, um dort die nötigen Einstellungen für "meine" Tasmota-Firmware zu treffen.
                  Gitpod_TasmoCompiler.PNG

                  Gitpod_TasmoCompiler-open-Browser.PNG

                  TasmoCompiler_Quellcode.PNG

                  TasmoCompiler_Wifi.PNG

                  TasmoCompiler_Funktionen.PNG

                  TasmoCompiler_zusätzliche-Einstellungen.PNG

                  #define USE_ETHERNET                             // Add support for ethernet (Currently fixed for Olimex ESP32-PoE)
                  // WT32_ETH01
                    #define ETH_TYPE          0                    // [EthType] 0 = ETH_PHY_LAN8720, 1 = ETH_PHY_TLK110/ETH_PHY_IP101, 2 = ETH_PHY_RTL8201, 3 = ETH_PHY_DP83848, 4 = ETH_PHY_DM9051, 5 = ETH_PHY_KSZ8081
                    #define ETH_ADDRESS       1                    // [EthAddress] 0 = PHY0 .. 31 = PHY31
                    #define ETH_CLKMODE       0                    // [EthClockMode] 0 = ETH_CLOCK_GPIO0_IN, 1 = ETH_CLOCK_GPIO0_OUT, 2 = ETH_CLOCK_GPIO16_OUT, 3 = ETH_CLOCK_GPIO17_OUT
                  
                  #define USE_SPS30         // [I2cDriver30] Enable Sensiron SPS30 particle sensor (I2C address 0x69) (+1.7 code)
                  

                  Mit dem ESP-Flasher-Windows-x64.exe habe ich dann die erzeugte Tasmota32.bin auf den WT32-Eth01 flashen können.
                  Esp-flasher.PNG
                  Hier die Firmwaredatei: tasmota32.bin
                  Dann habe ich den SPS30 angeschlossen:
                  W32-Eth01_SPS30-Pic1.jpg

                  W32-Eth01_SPS30-Pic2.jpg

                  SPS30_Anschluss.png

                  Der WT32 war nun im Netzwerk vorhanden, unter 192.168.1.69
                  Folgendes habe ich eingestellt:
                  Tasmota_sonstige-Einstellungen.PNG
                  Das muss da rein:

                  {"NAME":"WT32_ETH01","GPIO":[1,1,1,1,1,1,0,0,1,0,1,1,3840,576,5600,0,0,0,0,5568,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,1],"FLAG":0,"BASE":1}
                  

                  Tasmota_Geräteeinstellungen.PNG
                  Hier bitte aufpassen!!! "Also, if using Ethernet, I2C works only with:
                  IO32 (marked on the board as CFG, “pin 2” according to page 9 ) configured as SCL;
                  IO33 (marked on the board as 485_EN, “pin 3” ibid.) configured as SDA."

                  Tasmota_MQTT.PNG

                  Tasmota_WT32-Eth01.PNG

                  Tasmota_Logging.PNG

                  Tasmota_Konsole_Wifi-off.PNG Hier habe ich das wifi deaktiviert

                  Meine Einstellungsdatei: Config_tasmota_AB0F20_3872_13.3.0.dmp

                  Das Ergebnis: Tasmota-SPS30_result.PNG

                  Dann die Einrichtung in ioBroker:
                  Unter Adapter einen weiteren MQTT-Adapter installiert.
                  MQTT_Verbindung.PNG

                  MQTT_Server-Settings.PNG

                  MQTT_Einstellungen.PNG

                  MQTT_Instanz.PNG

                  MQTT_Werte.PNG

                  Vielen Dank an alle, die hier eine super Vorarbeit geleistet haben!!!!

                  Als nächstes werde ich den Sensor außen an der Hauswand montieren und in NodeRed die Bedingungen für das Abschalten der Lüftungsanlage festlegen.....

                  #Keine Ahnung, wie ich diesen Info-Kasten unten los werde - muss sich irgendwie über einen obigen link generieren#

                  H Offline
                  H Offline
                  HerrFrodo
                  wrote on last edited by
                  #47

                  @Homoran Guten Morgen, kann man den Titel irgendwie ändern?
                  Mit dem SDS011 und USB zu LAN, hat das nicht mehr viel zu tun.

                  VG

                  Wo ein Wille ist, ist auch ein LAN!

                  HomoranH 1 Reply Last reply
                  0
                  • H HerrFrodo

                    @Homoran Guten Morgen, kann man den Titel irgendwie ändern?
                    Mit dem SDS011 und USB zu LAN, hat das nicht mehr viel zu tun.

                    VG

                    HomoranH Do not disturb
                    HomoranH Do not disturb
                    Homoran
                    Global Moderator Administrators
                    wrote on last edited by
                    #48

                    @herrfrodo sagte in Wie SDS011 Staubsensor mit USB zu LAN im IOBroker einbinden?:

                    kann man den Titel irgendwie ändern?

                    Startpost editieren und Titel ändern

                    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 im Header. Danke!
                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    H 1 Reply Last reply
                    1
                    • HomoranH Homoran

                      @herrfrodo sagte in Wie SDS011 Staubsensor mit USB zu LAN im IOBroker einbinden?:

                      kann man den Titel irgendwie ändern?

                      Startpost editieren und Titel ändern

                      H Offline
                      H Offline
                      HerrFrodo
                      wrote on last edited by
                      #49

                      @homoran Danke!

                      Wo ein Wille ist, ist auch ein LAN!

                      H 1 Reply Last reply
                      0
                      • H HerrFrodo

                        @homoran Danke!

                        H Offline
                        H Offline
                        HerrFrodo
                        wrote on last edited by
                        #50

                        Nachtrag:

                        Ich habe nun in IOBroker den MQTT-Adapter deaktiviert und den Sonoff-Adapter mit folgenden Einstellungen installiert:
                        Sonoff-Adapter-EInstellungen.PNG

                        SPS30_Sonoff.PNG

                        Damit habe ich die Werte direkt richtig in den Objekten!
                        @Codierknecht Besten Dank für den Tipp!!!

                        Wo ein Wille ist, ist auch ein LAN!

                        MartinPM 1 Reply Last reply
                        0
                        • H HerrFrodo

                          Nachtrag:

                          Ich habe nun in IOBroker den MQTT-Adapter deaktiviert und den Sonoff-Adapter mit folgenden Einstellungen installiert:
                          Sonoff-Adapter-EInstellungen.PNG

                          SPS30_Sonoff.PNG

                          Damit habe ich die Werte direkt richtig in den Objekten!
                          @Codierknecht Besten Dank für den Tipp!!!

                          MartinPM Online
                          MartinPM Online
                          MartinP
                          wrote on last edited by
                          #51

                          @herrfrodo Wenn man die beiden Adapter auf verschiedenen Ports laufen lässt, kooperieren die sehr gut ...

                          Es soll durchaus MQTT Devices geben, bei denen der Sonoff Adapter nicht funktioniert, oder zumindest nicht alle vorhandenen Werte aus dem Gerät extrahiert ...

                          Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                          Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                          Linux pve 6.17.9-1-pve
                          6 GByte RAM für den Container
                          Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                          Remote-Access über Wireguard der Fritzbox

                          CodierknechtC 1 Reply Last reply
                          1
                          • MartinPM MartinP

                            @herrfrodo Wenn man die beiden Adapter auf verschiedenen Ports laufen lässt, kooperieren die sehr gut ...

                            Es soll durchaus MQTT Devices geben, bei denen der Sonoff Adapter nicht funktioniert, oder zumindest nicht alle vorhandenen Werte aus dem Gerät extrahiert ...

                            CodierknechtC Offline
                            CodierknechtC Offline
                            Codierknecht
                            Developer Most Active
                            wrote on last edited by
                            #52

                            @martinp sagte in Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?:

                            Es soll durchaus MQTT Devices geben, bei denen der Sonoff Adapter nicht funktioniert, oder zumindest nicht alle vorhandenen Werte aus dem Gerät extrahiert

                            Durchaus. z.B. mein ESP für den Wasserzähler.
                            Daher laufen auch bei mir beide Adapter.

                            Für alles was mit Tasmota läuft ist aber der Sonoff die erste Wahl.

                            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                            HmIP|ZigBee|Tasmota|Unifi
                            Zabbix Certified Specialist
                            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                            H 1 Reply Last reply
                            1
                            • CodierknechtC Codierknecht

                              @martinp sagte in Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?:

                              Es soll durchaus MQTT Devices geben, bei denen der Sonoff Adapter nicht funktioniert, oder zumindest nicht alle vorhandenen Werte aus dem Gerät extrahiert

                              Durchaus. z.B. mein ESP für den Wasserzähler.
                              Daher laufen auch bei mir beide Adapter.

                              Für alles was mit Tasmota läuft ist aber der Sonoff die erste Wahl.

                              H Offline
                              H Offline
                              HerrFrodo
                              wrote on last edited by
                              #53

                              @codierknecht
                              @MartinP

                              Kennt ihr ESPhome?

                              Wo ein Wille ist, ist auch ein LAN!

                              CodierknechtC 1 Reply Last reply
                              0
                              • H HerrFrodo

                                @codierknecht
                                @MartinP

                                Kennt ihr ESPhome?

                                CodierknechtC Offline
                                CodierknechtC Offline
                                Codierknecht
                                Developer Most Active
                                wrote on last edited by
                                #54

                                @herrfrodo sagte in Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?:

                                Kennt ihr ESPhome?

                                Dem Namen nach. Ansonsten: Nope!

                                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                HmIP|ZigBee|Tasmota|Unifi
                                Zabbix Certified Specialist
                                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                1 Reply Last reply
                                0
                                • H Offline
                                  H Offline
                                  HerrFrodo
                                  wrote on last edited by HerrFrodo
                                  #55

                                  Nachtrag:

                                  IMG_8982.JPG
                                  Ich habe einen kleinen DC/DC Spannungswandler (DC IN 7-36V, OUT 5V 1,5A) direkt an die Pins gelötet und teilweise mit Heißkleber isoliert.
                                  https://www.murata.com/en-eu/products/productdetail?partno=OKI-78SR-5%2F1.5-W36-C
                                  2x "Pullup-Widerstände" - also normale Widerstände mit 10KOhm - einen mit Plus an SCL und den anderen mit Plus an SDA gelötet.
                                  IMG_8983.JPG
                                  unten habe ich zuerst ein dickes doppelseitiges Klebeband geklebt und dann darauf Velcro.

                                  IMG_8984.JPG
                                  In der Dose (die mir zu klein ist - größere kommt heute) habe ich den SPS30 auch mit Velcro am Dosengrund befestigt. Zudem habe ich noch 2 LAN POE-Injektoren gefunden und verbaut.
                                  Ich speise nun 12V ein (der DC/DC Wadler kann 7-36V ab, eventuell nehme ich noch ein Netzteil mit 24V, da die Leitungslänge ca. 12m sein wird. Der gemessene Strom bei 5V war zwischen 0,15A und 0,3A. Das sind ca. 1,5W
                                  WT32-ETH01:
                                  WT32-Eth01-EDaten.PNG
                                  SPS30:
                                  SPS30_EDaten.PNG
                                  Wenn ich das richtig sehe, dann müsste man von 0,58A (ca. 3W bei 5V) fürs Maximum ausgehen.

                                  LAN-Leitungslänge ca. 12m
                                  Hiermit berechnet: https://www.wirsindheller.de/spannungsabfall-kabellaenge.3829.html#wshberechnung

                                  Bei 5V:
                                  Spannungsfall-12m-5V-3W.PNG

                                  Bei 12V:
                                  Spannungsfall-12m-12V-3W.PNG

                                  Bei 24V:
                                  Spannungsfall-12m-24V-3W.PNG

                                  Immer vom Maximum ausgehend und der Verlustleistung des Spannungswandlers, sind 12V meiner Meinung nach grenzwertig, allerdings liegt der gemessene Strom deutlich unter den Verbrauchsangaben (die Reinigungsprozedur des SPS30 habe ich nicht gemessen)
                                  Wenn ich noch ein 24V (oder höher) Netzteil habe, dann nehme ich das.
                                  Da fällt mir ein, dass ich an der PV-Batterie noch einen bisher ungenutzten 24V DC/DC Spannungswandler angeschlossen habe.....
                                  24V_Wandler.png
                                  Das lässt sich noch bis 28V hochdrehen :-)
                                  Kabellänge in Meter: 12,00
                                  Leistung in Watt: 3,00
                                  Querschnitt in mm²: 0,25
                                  Eingangsspannung in Volt: 28,00
                                  Elektrische Leitfähigkeit: 56,00
                                  Widerstand Ω: 0,0178
                                  Temperatur ℃: 20°C

                                  Berechnung
                                  Spannungsabfall: 0,66%
                                  Ausgangsspannung in Volt: 27,82
                                  Leitungswiderstand Ω: 0.8544

                                  Wo ein Wille ist, ist auch ein LAN!

                                  H 1 Reply Last reply
                                  0
                                  • H HerrFrodo

                                    Nachtrag:

                                    IMG_8982.JPG
                                    Ich habe einen kleinen DC/DC Spannungswandler (DC IN 7-36V, OUT 5V 1,5A) direkt an die Pins gelötet und teilweise mit Heißkleber isoliert.
                                    https://www.murata.com/en-eu/products/productdetail?partno=OKI-78SR-5%2F1.5-W36-C
                                    2x "Pullup-Widerstände" - also normale Widerstände mit 10KOhm - einen mit Plus an SCL und den anderen mit Plus an SDA gelötet.
                                    IMG_8983.JPG
                                    unten habe ich zuerst ein dickes doppelseitiges Klebeband geklebt und dann darauf Velcro.

                                    IMG_8984.JPG
                                    In der Dose (die mir zu klein ist - größere kommt heute) habe ich den SPS30 auch mit Velcro am Dosengrund befestigt. Zudem habe ich noch 2 LAN POE-Injektoren gefunden und verbaut.
                                    Ich speise nun 12V ein (der DC/DC Wadler kann 7-36V ab, eventuell nehme ich noch ein Netzteil mit 24V, da die Leitungslänge ca. 12m sein wird. Der gemessene Strom bei 5V war zwischen 0,15A und 0,3A. Das sind ca. 1,5W
                                    WT32-ETH01:
                                    WT32-Eth01-EDaten.PNG
                                    SPS30:
                                    SPS30_EDaten.PNG
                                    Wenn ich das richtig sehe, dann müsste man von 0,58A (ca. 3W bei 5V) fürs Maximum ausgehen.

                                    LAN-Leitungslänge ca. 12m
                                    Hiermit berechnet: https://www.wirsindheller.de/spannungsabfall-kabellaenge.3829.html#wshberechnung

                                    Bei 5V:
                                    Spannungsfall-12m-5V-3W.PNG

                                    Bei 12V:
                                    Spannungsfall-12m-12V-3W.PNG

                                    Bei 24V:
                                    Spannungsfall-12m-24V-3W.PNG

                                    Immer vom Maximum ausgehend und der Verlustleistung des Spannungswandlers, sind 12V meiner Meinung nach grenzwertig, allerdings liegt der gemessene Strom deutlich unter den Verbrauchsangaben (die Reinigungsprozedur des SPS30 habe ich nicht gemessen)
                                    Wenn ich noch ein 24V (oder höher) Netzteil habe, dann nehme ich das.
                                    Da fällt mir ein, dass ich an der PV-Batterie noch einen bisher ungenutzten 24V DC/DC Spannungswandler angeschlossen habe.....
                                    24V_Wandler.png
                                    Das lässt sich noch bis 28V hochdrehen :-)
                                    Kabellänge in Meter: 12,00
                                    Leistung in Watt: 3,00
                                    Querschnitt in mm²: 0,25
                                    Eingangsspannung in Volt: 28,00
                                    Elektrische Leitfähigkeit: 56,00
                                    Widerstand Ω: 0,0178
                                    Temperatur ℃: 20°C

                                    Berechnung
                                    Spannungsabfall: 0,66%
                                    Ausgangsspannung in Volt: 27,82
                                    Leitungswiderstand Ω: 0.8544

                                    H Offline
                                    H Offline
                                    HerrFrodo
                                    wrote on last edited by HerrFrodo
                                    #56

                                    Nachtrag 04.03.2024

                                    Übrigens werden bei POE-Einspeisung immer die Adernpaare 1 und 4 genommen.
                                    Quelle: https://www.kabelscheune.de/Netzwerkstecker-RJ45-Belegung-nach-EIA-TIA-Farbcode/
                                    Netzwerkkabel-Belegung.PNG
                                    Bei T568A
                                    PIN 1: weiß / grün (Paar 3)
                                    PIN 2: grün (Paar 3)
                                    PIN 3: weiß / orange (Paar 2)
                                    PIN 4: blau (Paar 1)
                                    PIN 5: weiß / blau (Paar 1)
                                    PIN 6: orange (Paar 2)
                                    PIN 7: weiß / braun (Paar 4)
                                    PIN 8: braun (Paar 4)

                                    Bei T568B
                                    PIN 1: weiß / orange (Paar 2)
                                    PIN 2: orange (Paar 2)
                                    PIN 3: weiß / grün (Paar 3)
                                    PIN 4: blau (Paar 1)
                                    PIN 5: weiß / blau (Paar 1)
                                    PIN 6: grün (Paar 3)
                                    PIN 7: weiß / braun (Paar 4)
                                    PIN 8: braun (Paar 4)

                                    Diese Stecker: https://www.amazon.de/dp/B098XW9XQL?ref=ppx_yo2ov_dt_b_product_details&th=1
                                    an dieses Kabel: https://www.amazon.de/dp/B0716R9N5H?ref=ppx_yo2ov_dt_b_product_details&th=1

                                    Wo ein Wille ist, ist auch ein LAN!

                                    1 Reply Last reply
                                    0
                                    • H Offline
                                      H Offline
                                      HerrFrodo
                                      wrote on last edited by
                                      #57

                                      Ich habe dieses kleine Blockly angefertigt:
                                      Staub-Blockly.PNG
                                      Hier der Code:

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                        <block type="on_ext" id="y/Kj+@nuqDDajWv8d[LM" x="-763" y="-1812">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                          <field name="CONDITION">ne</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="3FsVh}:{;,]-jhS1VF(6">
                                              <field name="oid">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="controls_if" id="!i+EGcL4yWV~N87ricAT">
                                              <mutation elseif="1"></mutation>
                                              <value name="IF0">
                                                <block type="logic_operation" id="`A-TtiYACPIxQI}A8L]9">
                                                  <field name="OP">AND</field>
                                                  <value name="A">
                                                    <block type="logic_compare" id="hld^OxU5I#C7bn3V;#HT">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value_var" id="yJP@T-Dx_/XkOfN?ig89">
                                                          <field name="ATTR">val</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="B)X;2-R]2(;=_u]@h`;v">
                                                              <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                            </shadow>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="M2,l@Xy$7(J|TIg).3Ii">
                                                          <field name="NUM">1</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="logic_compare" id="/DSH4FzH^zx||Mtu{Dgd">
                                                      <field name="OP">GT</field>
                                                      <value name="A">
                                                        <block type="get_value" id="w*rbOn3YC9}jC9(g|s49">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="get_value" id="bz:miwR;T3d{JJEVSd0]">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="control_ex" id="*1g.ViJ/HnbqFTj}2`Zl">
                                                  <field name="TYPE">false</field>
                                                  <field name="CLEAR_RUNNING">TRUE</field>
                                                  <value name="OID">
                                                    <shadow type="field_oid" id="RwR0cLO.O|PSzOJlp#4b">
                                                      <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="VALUE">
                                                    <shadow type="logic_boolean" id="8Hf2z4`G8]5}zo_^O.)G">
                                                      <field name="BOOL">FALSE</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="DELAY_MS">
                                                    <shadow type="math_number" id="k$^ckeL9ed*ry{3E.A#t">
                                                      <field name="NUM">0</field>
                                                    </shadow>
                                                  </value>
                                                  <next>
                                                    <block type="control_ex" id="V7PLAR,U%mgiuv/s1=4Y">
                                                      <field name="TYPE">true</field>
                                                      <field name="CLEAR_RUNNING">TRUE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid" id="_-^[KPCml};k4f4EdB:]">
                                                          <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean" id="d5,8dy,1|xkUz*nAP:bi">
                                                          <field name="BOOL">FALSE</field>
                                                        </shadow>
                                                        <block type="math_number" id="i@#(,B$DR1LK!gn:$8_@">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="Gsi4-@,LdScZ=uUL_`,,">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="debug" id=";JXq,_ii:$Ir.T$ROruj">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text" id="O{pzwwGMk17Pd?S_%%U+">
                                                              <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="signal-cmb" id="le{;(r?GDOPss4E{i0/=">
                                                              <field name="INSTANCE">.0</field>
                                                              <field name="LOG">log</field>
                                                              <value name="MESSAGE">
                                                                <shadow type="text" id="srV/+K]pg]a8;Iswvw)O">
                                                                  <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                                </shadow>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                              <value name="IF1">
                                                <block type="logic_operation" id="R|+cCsn9_Zr$a55.;},X">
                                                  <field name="OP">AND</field>
                                                  <value name="A">
                                                    <block type="logic_compare" id="M=C)eQ`K/94w5qgV[xk%">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value_var" id=":AZO!+EKLhC)-rg!g.W^">
                                                          <field name="ATTR">val</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="f?O)}RzYO``m05/0N=1l">
                                                              <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                            </shadow>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="?BJ1;1Ik^EZX/QSzxIv2">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="logic_compare" id="Ss~gJ+2JrLs#LxyASuWr">
                                                      <field name="OP">LT</field>
                                                      <value name="A">
                                                        <block type="get_value" id="Io9m#vdM/~$ZZ|wy1nS=">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="get_value" id="Je/6HhqT=_ST9fbE._[$">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO1">
                                                <block type="control_ex" id="QG8k/m.pnX1HLE5:-l.0">
                                                  <field name="TYPE">false</field>
                                                  <field name="CLEAR_RUNNING">TRUE</field>
                                                  <value name="OID">
                                                    <shadow type="field_oid" id="@Bmh-R[_+~xXu6E0J79O">
                                                      <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="VALUE">
                                                    <shadow type="logic_boolean" id="B5K#:PAeja0H7rzx`$al">
                                                      <field name="BOOL">TRUE</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="DELAY_MS">
                                                    <shadow type="math_number" id="BB8%ft}o)qn-=n!4}HW^">
                                                      <field name="NUM">0</field>
                                                    </shadow>
                                                  </value>
                                                  <next>
                                                    <block type="control_ex" id="t/|RC;8=}EWk90V^mDBW">
                                                      <field name="TYPE">true</field>
                                                      <field name="CLEAR_RUNNING">TRUE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid" id="sOQ5A,bEVDF[wJgNSywu">
                                                          <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean" id="e1AvIBrVfz;|eFZSUTmr">
                                                          <field name="BOOL">TRUE</field>
                                                        </shadow>
                                                        <block type="math_number" id="a5mp/5|1+eV_/vc7fz/A">
                                                          <field name="NUM">1</field>
                                                        </block>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="hpV|sa-Tbg.-|BGjt.9r">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="debug" id="4YT1IG_#U-nP*FSiQG=W">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text" id="lWxqU_=@?,;8Mh`kpmQH">
                                                              <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="signal-cmb" id="%rqUa~y;{CoHNRoQppU9">
                                                              <field name="INSTANCE">.0</field>
                                                              <field name="LOG">log</field>
                                                              <value name="MESSAGE">
                                                                <shadow type="text" id="d@sFBEOTVqLA[aS7hI[`">
                                                                  <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                                </shadow>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                        </block>
                                      </xml>
                                      

                                      Kennt sich da jemand aus? Ist das so OK?
                                      Funktionieren tut es, aber vielleicht geht es anders besser....

                                      Wo ein Wille ist, ist auch ein LAN!

                                      Ralla66R 2 Replies Last reply
                                      0
                                      • H HerrFrodo

                                        Ich habe dieses kleine Blockly angefertigt:
                                        Staub-Blockly.PNG
                                        Hier der Code:

                                        <xml xmlns="https://developers.google.com/blockly/xml">
                                          <block type="on_ext" id="y/Kj+@nuqDDajWv8d[LM" x="-763" y="-1812">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                            <field name="CONDITION">ne</field>
                                            <field name="ACK_CONDITION"></field>
                                            <value name="OID0">
                                              <shadow type="field_oid" id="3FsVh}:{;,]-jhS1VF(6">
                                                <field name="oid">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                              </shadow>
                                            </value>
                                            <statement name="STATEMENT">
                                              <block type="controls_if" id="!i+EGcL4yWV~N87ricAT">
                                                <mutation elseif="1"></mutation>
                                                <value name="IF0">
                                                  <block type="logic_operation" id="`A-TtiYACPIxQI}A8L]9">
                                                    <field name="OP">AND</field>
                                                    <value name="A">
                                                      <block type="logic_compare" id="hld^OxU5I#C7bn3V;#HT">
                                                        <field name="OP">EQ</field>
                                                        <value name="A">
                                                          <block type="get_value_var" id="yJP@T-Dx_/XkOfN?ig89">
                                                            <field name="ATTR">val</field>
                                                            <value name="OID">
                                                              <shadow type="field_oid" id="B)X;2-R]2(;=_u]@h`;v">
                                                                <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id="M2,l@Xy$7(J|TIg).3Ii">
                                                            <field name="NUM">1</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_compare" id="/DSH4FzH^zx||Mtu{Dgd">
                                                        <field name="OP">GT</field>
                                                        <value name="A">
                                                          <block type="get_value" id="w*rbOn3YC9}jC9(g|s49">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="get_value" id="bz:miwR;T3d{JJEVSd0]">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="control_ex" id="*1g.ViJ/HnbqFTj}2`Zl">
                                                    <field name="TYPE">false</field>
                                                    <field name="CLEAR_RUNNING">TRUE</field>
                                                    <value name="OID">
                                                      <shadow type="field_oid" id="RwR0cLO.O|PSzOJlp#4b">
                                                        <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="VALUE">
                                                      <shadow type="logic_boolean" id="8Hf2z4`G8]5}zo_^O.)G">
                                                        <field name="BOOL">FALSE</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="DELAY_MS">
                                                      <shadow type="math_number" id="k$^ckeL9ed*ry{3E.A#t">
                                                        <field name="NUM">0</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="control_ex" id="V7PLAR,U%mgiuv/s1=4Y">
                                                        <field name="TYPE">true</field>
                                                        <field name="CLEAR_RUNNING">TRUE</field>
                                                        <value name="OID">
                                                          <shadow type="field_oid" id="_-^[KPCml};k4f4EdB:]">
                                                            <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="VALUE">
                                                          <shadow type="logic_boolean" id="d5,8dy,1|xkUz*nAP:bi">
                                                            <field name="BOOL">FALSE</field>
                                                          </shadow>
                                                          <block type="math_number" id="i@#(,B$DR1LK!gn:$8_@">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                        <value name="DELAY_MS">
                                                          <shadow type="math_number" id="Gsi4-@,LdScZ=uUL_`,,">
                                                            <field name="NUM">0</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="debug" id=";JXq,_ii:$Ir.T$ROruj">
                                                            <field name="Severity">log</field>
                                                            <value name="TEXT">
                                                              <shadow type="text" id="O{pzwwGMk17Pd?S_%%U+">
                                                                <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                              </shadow>
                                                            </value>
                                                            <next>
                                                              <block type="signal-cmb" id="le{;(r?GDOPss4E{i0/=">
                                                                <field name="INSTANCE">.0</field>
                                                                <field name="LOG">log</field>
                                                                <value name="MESSAGE">
                                                                  <shadow type="text" id="srV/+K]pg]a8;Iswvw)O">
                                                                    <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                                  </shadow>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <value name="IF1">
                                                  <block type="logic_operation" id="R|+cCsn9_Zr$a55.;},X">
                                                    <field name="OP">AND</field>
                                                    <value name="A">
                                                      <block type="logic_compare" id="M=C)eQ`K/94w5qgV[xk%">
                                                        <field name="OP">EQ</field>
                                                        <value name="A">
                                                          <block type="get_value_var" id=":AZO!+EKLhC)-rg!g.W^">
                                                            <field name="ATTR">val</field>
                                                            <value name="OID">
                                                              <shadow type="field_oid" id="f?O)}RzYO``m05/0N=1l">
                                                                <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id="?BJ1;1Ik^EZX/QSzxIv2">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="logic_compare" id="Ss~gJ+2JrLs#LxyASuWr">
                                                        <field name="OP">LT</field>
                                                        <value name="A">
                                                          <block type="get_value" id="Io9m#vdM/~$ZZ|wy1nS=">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="get_value" id="Je/6HhqT=_ST9fbE._[$">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO1">
                                                  <block type="control_ex" id="QG8k/m.pnX1HLE5:-l.0">
                                                    <field name="TYPE">false</field>
                                                    <field name="CLEAR_RUNNING">TRUE</field>
                                                    <value name="OID">
                                                      <shadow type="field_oid" id="@Bmh-R[_+~xXu6E0J79O">
                                                        <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="VALUE">
                                                      <shadow type="logic_boolean" id="B5K#:PAeja0H7rzx`$al">
                                                        <field name="BOOL">TRUE</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="DELAY_MS">
                                                      <shadow type="math_number" id="BB8%ft}o)qn-=n!4}HW^">
                                                        <field name="NUM">0</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="control_ex" id="t/|RC;8=}EWk90V^mDBW">
                                                        <field name="TYPE">true</field>
                                                        <field name="CLEAR_RUNNING">TRUE</field>
                                                        <value name="OID">
                                                          <shadow type="field_oid" id="sOQ5A,bEVDF[wJgNSywu">
                                                            <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="VALUE">
                                                          <shadow type="logic_boolean" id="e1AvIBrVfz;|eFZSUTmr">
                                                            <field name="BOOL">TRUE</field>
                                                          </shadow>
                                                          <block type="math_number" id="a5mp/5|1+eV_/vc7fz/A">
                                                            <field name="NUM">1</field>
                                                          </block>
                                                        </value>
                                                        <value name="DELAY_MS">
                                                          <shadow type="math_number" id="hpV|sa-Tbg.-|BGjt.9r">
                                                            <field name="NUM">0</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="debug" id="4YT1IG_#U-nP*FSiQG=W">
                                                            <field name="Severity">log</field>
                                                            <value name="TEXT">
                                                              <shadow type="text" id="lWxqU_=@?,;8Mh`kpmQH">
                                                                <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                              </shadow>
                                                            </value>
                                                            <next>
                                                              <block type="signal-cmb" id="%rqUa~y;{CoHNRoQppU9">
                                                                <field name="INSTANCE">.0</field>
                                                                <field name="LOG">log</field>
                                                                <value name="MESSAGE">
                                                                  <shadow type="text" id="d@sFBEOTVqLA[aS7hI[`">
                                                                    <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                                  </shadow>
                                                                </value>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </xml>
                                        

                                        Kennt sich da jemand aus? Ist das so OK?
                                        Funktionieren tut es, aber vielleicht geht es anders besser....

                                        Ralla66R Offline
                                        Ralla66R Offline
                                        Ralla66
                                        Most Active
                                        wrote on last edited by
                                        #58

                                        @herrfrodo

                                        Kurz zur Info,

                                        läuft auch per USR-TCP-232-302 und Tasmota Scripting,
                                        Sensordata -> ESP Speicher -> ESP Ausgang TX -> Serial to Lan -> NodeRed -> Datenpunkt
                                        Damit können dann alle Sensorenwerte die in Tasmota laufen per Lan gesendet werden.
                                        Läuft auch :-)

                                        TCP_RS232.jpg

                                        1 Reply Last reply
                                        1
                                        • H HerrFrodo

                                          Ich habe dieses kleine Blockly angefertigt:
                                          Staub-Blockly.PNG
                                          Hier der Code:

                                          <xml xmlns="https://developers.google.com/blockly/xml">
                                            <block type="on_ext" id="y/Kj+@nuqDDajWv8d[LM" x="-763" y="-1812">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                              <field name="CONDITION">ne</field>
                                              <field name="ACK_CONDITION"></field>
                                              <value name="OID0">
                                                <shadow type="field_oid" id="3FsVh}:{;,]-jhS1VF(6">
                                                  <field name="oid">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                </shadow>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="controls_if" id="!i+EGcL4yWV~N87ricAT">
                                                  <mutation elseif="1"></mutation>
                                                  <value name="IF0">
                                                    <block type="logic_operation" id="`A-TtiYACPIxQI}A8L]9">
                                                      <field name="OP">AND</field>
                                                      <value name="A">
                                                        <block type="logic_compare" id="hld^OxU5I#C7bn3V;#HT">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="get_value_var" id="yJP@T-Dx_/XkOfN?ig89">
                                                              <field name="ATTR">val</field>
                                                              <value name="OID">
                                                                <shadow type="field_oid" id="B)X;2-R]2(;=_u]@h`;v">
                                                                  <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                                </shadow>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="M2,l@Xy$7(J|TIg).3Ii">
                                                              <field name="NUM">1</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_compare" id="/DSH4FzH^zx||Mtu{Dgd">
                                                          <field name="OP">GT</field>
                                                          <value name="A">
                                                            <block type="get_value" id="w*rbOn3YC9}jC9(g|s49">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="get_value" id="bz:miwR;T3d{JJEVSd0]">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="control_ex" id="*1g.ViJ/HnbqFTj}2`Zl">
                                                      <field name="TYPE">false</field>
                                                      <field name="CLEAR_RUNNING">TRUE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid" id="RwR0cLO.O|PSzOJlp#4b">
                                                          <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean" id="8Hf2z4`G8]5}zo_^O.)G">
                                                          <field name="BOOL">FALSE</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="k$^ckeL9ed*ry{3E.A#t">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="control_ex" id="V7PLAR,U%mgiuv/s1=4Y">
                                                          <field name="TYPE">true</field>
                                                          <field name="CLEAR_RUNNING">TRUE</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="_-^[KPCml};k4f4EdB:]">
                                                              <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                            </shadow>
                                                          </value>
                                                          <value name="VALUE">
                                                            <shadow type="logic_boolean" id="d5,8dy,1|xkUz*nAP:bi">
                                                              <field name="BOOL">FALSE</field>
                                                            </shadow>
                                                            <block type="math_number" id="i@#(,B$DR1LK!gn:$8_@">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                          <value name="DELAY_MS">
                                                            <shadow type="math_number" id="Gsi4-@,LdScZ=uUL_`,,">
                                                              <field name="NUM">0</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="debug" id=";JXq,_ii:$Ir.T$ROruj">
                                                              <field name="Severity">log</field>
                                                              <value name="TEXT">
                                                                <shadow type="text" id="O{pzwwGMk17Pd?S_%%U+">
                                                                  <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                                </shadow>
                                                              </value>
                                                              <next>
                                                                <block type="signal-cmb" id="le{;(r?GDOPss4E{i0/=">
                                                                  <field name="INSTANCE">.0</field>
                                                                  <field name="LOG">log</field>
                                                                  <value name="MESSAGE">
                                                                    <shadow type="text" id="srV/+K]pg]a8;Iswvw)O">
                                                                      <field name="TEXT">LÜFTUNG AUS wegen hohem Feinstaubwert</field>
                                                                    </shadow>
                                                                  </value>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                  <value name="IF1">
                                                    <block type="logic_operation" id="R|+cCsn9_Zr$a55.;},X">
                                                      <field name="OP">AND</field>
                                                      <value name="A">
                                                        <block type="logic_compare" id="M=C)eQ`K/94w5qgV[xk%">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="get_value_var" id=":AZO!+EKLhC)-rg!g.W^">
                                                              <field name="ATTR">val</field>
                                                              <value name="OID">
                                                                <shadow type="field_oid" id="f?O)}RzYO``m05/0N=1l">
                                                                  <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                                </shadow>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="?BJ1;1Ik^EZX/QSzxIv2">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_compare" id="Ss~gJ+2JrLs#LxyASuWr">
                                                          <field name="OP">LT</field>
                                                          <value name="A">
                                                            <block type="get_value" id="Io9m#vdM/~$ZZ|wy1nS=">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">sonoff.0.SPS30 Feinstaubsensor.SENSOR.SPS30.PM10</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="get_value" id="Je/6HhqT=_ST9fbE._[$">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">0_userdata.0.Feinstaub.Lüftung_Staub-Schwelle_AUS</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO1">
                                                    <block type="control_ex" id="QG8k/m.pnX1HLE5:-l.0">
                                                      <field name="TYPE">false</field>
                                                      <field name="CLEAR_RUNNING">TRUE</field>
                                                      <value name="OID">
                                                        <shadow type="field_oid" id="@Bmh-R[_+~xXu6E0J79O">
                                                          <field name="oid">hm-rpc.0.LEQ0539002.1.STATE</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="VALUE">
                                                        <shadow type="logic_boolean" id="B5K#:PAeja0H7rzx`$al">
                                                          <field name="BOOL">TRUE</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="DELAY_MS">
                                                        <shadow type="math_number" id="BB8%ft}o)qn-=n!4}HW^">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="control_ex" id="t/|RC;8=}EWk90V^mDBW">
                                                          <field name="TYPE">true</field>
                                                          <field name="CLEAR_RUNNING">TRUE</field>
                                                          <value name="OID">
                                                            <shadow type="field_oid" id="sOQ5A,bEVDF[wJgNSywu">
                                                              <field name="oid">0_userdata.0.Feinstaub.VAR_Lüftung-wegen-Staub-0-1</field>
                                                            </shadow>
                                                          </value>
                                                          <value name="VALUE">
                                                            <shadow type="logic_boolean" id="e1AvIBrVfz;|eFZSUTmr">
                                                              <field name="BOOL">TRUE</field>
                                                            </shadow>
                                                            <block type="math_number" id="a5mp/5|1+eV_/vc7fz/A">
                                                              <field name="NUM">1</field>
                                                            </block>
                                                          </value>
                                                          <value name="DELAY_MS">
                                                            <shadow type="math_number" id="hpV|sa-Tbg.-|BGjt.9r">
                                                              <field name="NUM">0</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="debug" id="4YT1IG_#U-nP*FSiQG=W">
                                                              <field name="Severity">log</field>
                                                              <value name="TEXT">
                                                                <shadow type="text" id="lWxqU_=@?,;8Mh`kpmQH">
                                                                  <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                                </shadow>
                                                              </value>
                                                              <next>
                                                                <block type="signal-cmb" id="%rqUa~y;{CoHNRoQppU9">
                                                                  <field name="INSTANCE">.0</field>
                                                                  <field name="LOG">log</field>
                                                                  <value name="MESSAGE">
                                                                    <shadow type="text" id="d@sFBEOTVqLA[aS7hI[`">
                                                                      <field name="TEXT">LÜFTUNG EIN nach besserem Feinstaubwert</field>
                                                                    </shadow>
                                                                  </value>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </xml>
                                          

                                          Kennt sich da jemand aus? Ist das so OK?
                                          Funktionieren tut es, aber vielleicht geht es anders besser....

                                          Ralla66R Offline
                                          Ralla66R Offline
                                          Ralla66
                                          Most Active
                                          wrote on last edited by Ralla66
                                          #59

                                          @herrfrodo

                                          Kurz zur Info,

                                          der kleine Bruder USR-TCP232-T2 läuft, dieser ist direkt mit TTL zu verbinden.
                                          Der USR-TCP-232-302 braucht einen Adapter von TTL auf RS232
                                          Der E-Byte E801 ( TCP ) braucht auch einen Adapter von TTL auf RS232
                                          WT32-ETH0 geht auch

                                          Ziel erreicht, bin Weg ------------------------------------->

                                          Testscript für Tasmota Scripting DHT11, Data Send an TX alle 5 sec

                                          >D
                                          
                                          temp=0
                                          hum=0
                                          tau=0
                                          
                                          >B
                                          
                                          so(3 1 9600 8N1 1024)
                                          
                                          >T
                                          
                                          temp=DHT11#Temperature
                                          hum=DHT11#Humidity
                                          tau=DHT11#Dewpoint
                                          
                                          >S
                                          
                                          if upsecs%5==0
                                          then 
                                          =>SerialSend2 {"Temperature":%temp%,"Humidity":%hum%,"Dewpoint":%tau%,},\n
                                          print ---- SEND STR NUM ---- %temp%
                                          endif
                                          
                                          >W
                                          
                                          Temperature {m} %temp% 
                                          Feuchtidkeit {m} %hum% 
                                          Taupunkt {m} %tau% 
                                          
                                          #
                                          
                                          H 1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          573

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe