Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. Wie SDS011 / SPS30 Staubsensor mit I2C über LAN zu IOBroker?

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      HerrFrodo last edited by 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#

      megamarco833 created this issue in arendst/Tasmota

      closed support for WT32-ETH01: esp32 wifi + ethernet lan #9496

      H 1 Reply Last reply Reply Quote 0
      • H
        HerrFrodo @HerrFrodo last edited by

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

        VG

        Homoran 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @HerrFrodo last edited by

          @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 1 Reply Last reply Reply Quote 1
          • H
            HerrFrodo @Homoran last edited by

            @homoran Danke!

            H 1 Reply Last reply Reply Quote 0
            • H
              HerrFrodo @HerrFrodo last edited by

              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!!!

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

                @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 ...

                Codierknecht 1 Reply Last reply Reply Quote 1
                • Codierknecht
                  Codierknecht Developer Most Active @MartinP last edited by

                  @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 1 Reply Last reply Reply Quote 1
                  • H
                    HerrFrodo @Codierknecht last edited by

                    @codierknecht
                    @MartinP

                    Kennt ihr ESPhome?

                    Codierknecht 1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @HerrFrodo last edited by

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

                      Kennt ihr ESPhome?

                      Dem Namen nach. Ansonsten: Nope!

                      1 Reply Last reply Reply Quote 0
                      • H
                        HerrFrodo last edited by 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 1 Reply Last reply Reply Quote 0
                        • H
                          HerrFrodo @HerrFrodo last edited by HerrFrodo

                          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

                          1 Reply Last reply Reply Quote 0
                          • H
                            HerrFrodo last edited by

                            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....

                            Ralla66 2 Replies Last reply Reply Quote 0
                            • Ralla66
                              Ralla66 Most Active @HerrFrodo last edited by

                              @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 Reply Quote 1
                              • Ralla66
                                Ralla66 Most Active @HerrFrodo last edited by Ralla66

                                @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 Reply Quote 1
                                • H
                                  HerrFrodo @Ralla66 last edited by

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

                                  USR-TCP232-T2

                                  Irgendwie check ich das mit der eMail-Benachrichtigung bei neuen Posts hier nicht.....

                                  Vielen Dank für Deine Hilfe und Tests!

                                  Was kann man nun zusammenfassen schreiben?
                                  Man braucht in jedem Fall einen ESP dafür, egal ob USR-TCP-232-302 oder USR-TCP232-T2, wobei der USR-TCP232-T2 deutlich günstiger ist.
                                  In jedem Fall braucht man mindestens einen ESP8266 (ca. 10€)
                                  USR-TCP-232-302 kostet ca. 34€ plus Adapter!
                                  USR-TCP232-T2 kostet ca. 19€
                                  WT32-Eth01 kostet ca. 20€ plus USB zu UART Adapter ca. 6-8€
                                  Die deutlich bessere Performance des WT32 wird nie ausgenutzt und der Stromverbrauch ist viel höher als beim ESP8266.

                                  Was mich allerdings im täglichen Gebrauch stört ist die Tatsache, dass unter Tasmota der Sensorwert nur alle 10 Sekunden aktualisiert wird....dadurch habe ich bis zu 10 Sekunden lang den Kaminmief von den Nachbarn im Haus.....daher überlege ich an einen Testaufbau mit ESPHome.....

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

                                  Wie schaffst Du die 5 sec?

                                  Codierknecht BananaJoe 2 Replies Last reply Reply Quote 0
                                  • Codierknecht
                                    Codierknecht Developer Most Active @HerrFrodo last edited by

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

                                    Irgendwie check ich das mit der eMail-Benachrichtigung bei neuen Posts hier nicht.....

                                    Was genau ist da unklar?
                                    Lässt sich alles einstellen.

                                    7104cfd8-e71d-4ee3-a578-bac2da157d06-image.png

                                    H 1 Reply Last reply Reply Quote 1
                                    • BananaJoe
                                      BananaJoe Most Active @HerrFrodo last edited by BananaJoe

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

                                      Was mich allerdings im täglichen Gebrauch stört ist die Tatsache, dass unter Tasmota der Sensorwert nur alle 10 Sekunden aktualisiert wird....dadurch habe ich bis zu 10 Sekunden lang den Kaminmief von den Nachbarn im Haus.....daher überlege ich an einen Testaufbau mit ESPHome.....

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

                                      Wie schaffst Du die 5 sec?

                                      Wenn das verwendete Tasmota eine Scripting-Enginge hat kann von dort einen Wert auch bei jeder Änderung senden lassen. Dort gibt es einen publish Befehl
                                      https://tasmota.github.io/docs/Scripting-Language/#features

                                      =>Publish Soyosource/SOYO_1ce2fb/L1L2L3 %sml[8]%
                                      

                                      sendet zum beispiel den 8ten Wert aus dem vorherigen Abschnitt sml, ganz am Ende angehängt.

                                      Du könntest aber auch einen normale Rule erstellen die es dann bei Änderung ebenfalls published:
                                      https://tasmota.github.io/docs/Commands/#mqtt
                                      Wieder der Befehl Publish

                                      Oder du triggerst - per MQTT oder Web Request - einen passenden Status x an:
                                      17b7144d-c8eb-4b77-9329-8ae8bbfe8c67-image.png
                                      Der wird dann sowohl in der Konsole angezeigt als auch unmittelbar gesendet.

                                      H 1 Reply Last reply Reply Quote 1
                                      • H
                                        HerrFrodo @Codierknecht last edited by

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

                                        Was genau ist da unklar?
                                        Lässt sich alles einstellen.

                                        Danke für Deine Hilfe!
                                        Hatte ich schon alles eingestellt.....und offensichtlich "Änderungen Speichern" übersehen.... 😔

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          HerrFrodo @BananaJoe last edited by

                                          @bananajoe
                                          Beim WT32-Eth01 ist Berry dabei.
                                          Wie ich den Befehl für eine sekündliche Werteabfrage beim SPS30 gestalten muss, erschließt sich mir noch nicht.
                                          Bleibt der dann bis zum Neustart oder kann man den irgendwie speichern?

                                          BananaJoe 1 Reply Last reply Reply Quote 0
                                          • BananaJoe
                                            BananaJoe Most Active @HerrFrodo last edited by

                                            pff müsste ich mir auch erst zusammensuchen / googeln

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            65
                                            4540
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo