Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Error/Bug
  4. Installation "node-red-contrib-1wire" / "npm install -g ."

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Installation "node-red-contrib-1wire" / "npm install -g ."

Geplant Angeheftet Gesperrt Verschoben Error/Bug
19 Beiträge 5 Kommentatoren 5.5k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N Offline
    N Offline
    nobody
    schrieb am zuletzt editiert von
    #8

    @Eisbaeeer:

    Gut, man lernt viel dazu, aber mit owfs ginge das leichter und mit weniger CPU Last.

    Gruss Eisbaeeer

    Gesendet von meinem SM-G920F mit Tapatalk `

    Hallo Eisbaeeer,

    ich hätte jetzt viele Argumente für und wieder node-red erwartet, aber das Ressourcen-Argument halte ich dann doch mal für weit her geholt.

    Wenn man sich für node-red entschieden hat, dann hat man normalerweise den Prozess sowieso laufen. Somit kostet es eigentlich keine zusätzlichen Ressourcen.

    Timerevents werden sowohl in owfs als auch in node-red über crown-Jobs gelöst, also gleich.

    Der PI unterstützt 1Wire nativ. So gut wie alle Implementierungen basieren auf dem Auslesen der virtuellen Files, die über fs gelesen werden.

    Dies ist auch bei der ds18x20 der Fall, wie sie bei den owfs (open wire file system) Skripten eingesetzt wird. Genau das gleiche machen die node-red-Nodes. Also auch gleich.

    Somit ist die entscheidende Frage nicht, welches die bessere Lösung ist, sondern was man normalerweise für seine Logik verwendet. Wenn jemand sowieso den javascript-Adapter verwendet, ist es wenig sinnvoll, speziell für die 1wire-Schnittstelle node-red laufen zu lassen. Wenn man aber node-red verwendet, ist das die bessere Lösung, weil auch der Javascript-Adapter frisst viele Ressourcen.

    Wenn man beides einsetzt, kann man sich das aussuchen.

    Über die Vor- und Nachteile der unterschiedlichen Automatisierungsoptionen aus meiner Sicht habe ich in anderen Threads schon beschrieben.

    By the way:

    Die von 34 Zeilen Code (einschließlich Kommentare) sind in Node-Red auch nur 4 Nodes:

    • Inject für den Cron

    • ds18b20-sensor zum Auslesen aller Werte als Array

    • Javascript oder change zum Setzen des oder der Topics

    • ioBroker out

    Gruß

    Markus

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      miggi20000
      schrieb am zuletzt editiert von
      #9

      Hallo Markus,

      das von Dir vorgeschlagene Modul "node-red-contrib-ds18b20-sensor" habe ich unter Instanzen im Node-Red Adapter eingefügt und iobroker neu gestartet.

      Hat alles auf Anhieb geklappt. Vielen Dank.

      Den OWFS-Adapter habe ich nicht eingesetzt, da ich hierfür einen USB-Adapter benötige.

      Gruß Miggi20000

      1 Antwort Letzte Antwort
      0
      • derAugeD Offline
        derAugeD Offline
        derAuge
        schrieb am zuletzt editiert von
        #10

        Ja, der vorgeschlagene Weg ist sehr gut

        Habe nun beide varianten laufen

        Flow:

        ! [{"id":"3e8af675.e358c2","type":"ds18b20","z":"e488d4df.07337","name":"Sensor 1","sensorid":"28-00000697a7d3","timer":"1","x":104,"y":503,"wires":[["eadfb57d.cb07b","54c5608e.28587"]]},{"id":"eadfb57d.cb07b","type":"debug","z":"e488d4df.07337","name":"Temperatur vom Sensor","active":true,"console":"false","complete":"payload","x":543,"y":571,"wires":[]},{"id":"be569204.33cb98","type":"ds18b20","z":"e488d4df.07337","name":"Sensor 2","sensorid":"28-0000069797b5","timer":"1","x":100,"y":458,"wires":[["89c5d1ca.97bf78","eadfb57d.cb07b"]]},{"id":"54c5608e.28587","type":"ioBroker out","z":"e488d4df.07337","name":"","topic":"node-red.0.DS18B20.Sensor.1","ack":"true","autoCreate":"true","x":555,"y":510,"wires":[]},{"id":"89c5d1ca.97bf78","type":"ioBroker out","z":"e488d4df.07337","name":"","topic":"node-red.0.DS18B20.Sensor.2","ack":"true","autoCreate":"true","x":556,"y":461,"wires":[]},{"id":"1d6a3553.679dcb","type":"ioBroker out","z":"e488d4df.07337","name":"","topic":"node-red.0.DS18B20.Sensor.10","ack":"true","autoCreate":"true","x":557,"y":620,"wires":[]},{"id":"6beb8e7c.ba47f","type":"rpi-ds18b20","z":"e488d4df.07337","topic":"","array":true,"name":"","x":300,"y":614,"wires":[["eadfb57d.cb07b","1d6a3553.679dcb"]]},{"id":"fad0d4e.c245f28","type":"inject","z":"e488d4df.07337","name":"alle 30 sec.","topic":"","payload":"","payloadType":"date","repeat":"30","crontab":"","once":true,"x":119,"y":614.5,"wires":[["6beb8e7c.ba47f"]]}]

        Nun muss man bei "node-red-contrib-ds18b20-sensor" noch die Temperatur vom Payload heraus filtern.

        Gruß

        Jürgen

        1 Antwort Letzte Antwort
        0
        • EisbaeeerE Offline
          EisbaeeerE Offline
          Eisbaeeer
          Developer
          schrieb am zuletzt editiert von
          #11

          Hi nobody

          Ich wollte auch nicht sagen, dass die Lösung besser oder schlechter ist. Ich bin genau deiner Meinung. Beide Systeme haben ihre Berechtigung. Man muss eben noch abwägen, welche Funktionen man braucht und sich dann entscheiden. Ich nutze die OWFS Lösung über TCP. Sicher geht das auch mit Multihost.

          Ich wollte auch nur eine Alternative aufzeigen.

          Und dank iobroker ist man da ja sehr flexibel.

          Gruß Eisbaeeer

          Gesendet von meinem SM-G920F mit Tapatalk

          Kein support per PM. Bitte im Forum Fragen stellen!

          1 Antwort Letzte Antwort
          0
          • derAugeD Offline
            derAugeD Offline
            derAuge
            schrieb am zuletzt editiert von
            #12

            > For each sensor found, it returns the msg object where the topic is set to the sensor ID and the payload is

            Das scheint nicht zu stimmen. Oder ich mache etwas falsch

            als Wert wird nun

            [object Object],[object Object]

            übermittelt.

            irgend etwas fehlt mir da noch :roll:

            Debug siht so aus:

             { "family": "28", "id": "D3A797060000", "file": "28-00000697a7d3", "temp": 22.25 }, { "family": "28", "id": "B59797060000", "file": "28-0000069797b5", "temp": 22.187 }, { "family": "28", "id": "59AF96060000", "file": "28-00000696af59", "temp": 85 }, { "family": "28", "id": "1D3B96060000", "file": "28-000006963b1d", "temp": 22.187 } ]
            
            1 Antwort Letzte Antwort
            0
            • N Offline
              N Offline
              nobody
              schrieb am zuletzt editiert von
              #13

              Die Beschreibung ist nicht so ganz auf dem aktuellen Stand.

              Wenn man nur einen Sensor hat, wird die Checkbox Array ausgewertet. Wenn diese nicht gesetzt ist, befindet sich in der payload direkt die Temperatur.

              Wenn mehr als ein Sensor vorhanden ist, wird generell ein Array zurückgegeben.

              Hier mal ein kleiner Flow, der alle gefundenen Sensoren und dessen Wert als State unter node-red.0 ablegt

              `[{"id":"c9619a18.2454d8","type":"inject","z":"fd87934b.2cb37","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":97,"y":480,"wires":[["e33ff961.1daa58"]]},{"id":"e33ff961.1daa58","type":"rpi-ds18b20","z":"fd87934b.2cb37","topic":"","array":true,"name":"","x":333,"y":466,"wires":[["20952379.b557ec"]]},{"id":"502fd11d.1162a","type":"debug","z":"fd87934b.2cb37","name":"","active":true,"console":"false","complete":"true","x":668,"y":480,"wires":[]},{"id":"20952379.b557ec","type":"function","z":"fd87934b.2cb37","name":"","func":"var msg1={topic:\"\",payload:\"\"};\nfor(var i in msg.payload){\n  msg1.topic=\"node-red.0.\" + msg.payload[i].id;\n  msg1.payload=msg.payload[i].temp;\n  node.send (msg1);\n  }\nreturn null;","outputs":1,"noerr":0,"x":485,"y":463,"wires":[["502fd11d.1162a","472ec0e.d1a964"]]},{"id":"472ec0e.d1a964","type":"ioBroker out","z":"fd87934b.2cb37","name":"","topic":"","ack":"true","autoCreate":"true","x":676,"y":414,"wires":[]}]` [/i]
              
              1 Antwort Letzte Antwort
              0
              • derAugeD Offline
                derAugeD Offline
                derAuge
                schrieb am zuletzt editiert von
                #14

                so, nun läuft die Messung seit einigen Tagen.

                Leider habe ich immer wieder "ausreißer" in den Werten

                • 22.875 true node-red.0 2016-05-08 16:00:38
                85 true node-red.0 2016-05-08 15:59:44
                
                85 true node-red.0 2016-05-08 15:58:37
                
                22.875 true node-red.0 2016-05-08 15:57:37
                
                22.875 true node-red.0 2016-05-08 15:56:43
                
                22.875 true node-red.0 2016-05-08 15:55:37
                
                22.875 true node-red.0 2016-05-08 15:54:37
                
                22.875 true node-red.0 2016-05-08 15:53:43
                
                22.875 true node-red.0 2016-05-08 15:52:35
                
                22.875 true node-red.0 2016-05-08 15:51:32
                
                22.8125 true node-red.0 2016-05-08 15:50:32
                
                22.8125 true node-red.0 2016-05-08 15:49:38
                
                22.8125 true node-red.0 2016-05-08 15:48:31
                
                85 true node-red.0 2016-05-08 15:47:33
                
                22.8125 
                

                315_werte_last_h.png
                kann ich die Werte bereinigen?

                Hat noch jemand das Thema?

                1 Antwort Letzte Antwort
                0
                • N Offline
                  N Offline
                  nobody
                  schrieb am zuletzt editiert von
                  #15

                  Hallo derAuge,

                  Ich hab ab meinen pi nur zwei ds18b20, aber bei denen gibt es keine extremen Ausreißer.

                  Mit welchem Intervall werden die den ausgelesen?

                  Vielleicht liegt es auch an der Verkabelung oder dem Widerstand.

                  Natürlich kann man Werte, die extrem vom erwarteten Bereich abweichen einfach nicht speichern. Aber eine richtige Lösung wäre das wohl eher nicht.

                  Gesendet von meinem GT-N8000 mit Tapatalk

                  1 Antwort Letzte Antwort
                  0
                  • derAugeD Offline
                    derAugeD Offline
                    derAuge
                    schrieb am zuletzt editiert von
                    #16

                    bei mir sind zur Zeit 4 Sensoren angeschlossen.
                    315_ds18b20-waterproof.jpg

                    Sie liegen alle im Büro beim Testaufbau.

                    Anschaltung :
                    315_ds18b20-parasite-power.jpg

                    Erste Abfrage:
                    315_ds18b20_nodered1.png

                    Zweite Abfrage:
                    315_ds18b20_nodered2.png

                    Und der JS

                    schedule('*/1 * * * *', tempWerteAuslesen);

                    Auch die unterschiedliche Auswertung ist intereannt:
                    315_ds18b20_vis1.png

                    Die Frage nach der Anschaltung habe ich auch schon übelegt. Vielleuicht sollte ich alles umbauen auf "Drei-Draht"

                    Gruß

                    Jürgen

                    1 Antwort Letzte Antwort
                    0
                    • EisbaeeerE Offline
                      EisbaeeerE Offline
                      Eisbaeeer
                      Developer
                      schrieb am zuletzt editiert von
                      #17

                      @derAuge:

                      so, nun läuft die Messung seit einigen Tagen.

                      Leider habe ich immer wieder "ausreißer" in den Werten

                      • 22.875 true node-red.0 2016-05-08 16:00:38
                      85 true node-red.0 2016-05-08 15:59:44
                      
                      85 true node-red.0 2016-05-08 15:58:37
                      
                      22.875 true node-red.0 2016-05-08 15:57:37
                      
                      22.875 true node-red.0 2016-05-08 15:56:43
                      
                      22.875 true node-red.0 2016-05-08 15:55:37
                      
                      22.875 true node-red.0 2016-05-08 15:54:37
                      
                      22.875 true node-red.0 2016-05-08 15:53:43
                      
                      22.875 true node-red.0 2016-05-08 15:52:35
                      
                      22.875 true node-red.0 2016-05-08 15:51:32
                      
                      22.8125 true node-red.0 2016-05-08 15:50:32
                      
                      22.8125 true node-red.0 2016-05-08 15:49:38
                      
                      22.8125 true node-red.0 2016-05-08 15:48:31
                      
                      85 true node-red.0 2016-05-08 15:47:33
                      
                      22.8125 
                      

                      filename="Werte_last_h.png" index="0">~~
                      kann ich die Werte bereinigen?

                      Hat noch jemand das Thema? `
                      Wenn du als Ausreißer die Werte mit 85 grad meinst, dann sind das Fehllesungen, welches auf ein falsches Timing am GPIO hinweist. Imho kann man die Checksumme im DS18S20 auswerten und dann entscheiden, ob der Wert richtig übertragen wurde oder nicht. Ich habe diese Fehler erst mit einem 1wire Busbaustein weg bekommen. Dieser wird aber über SPI angesprochen.

                      Der Fehler ist aber auf jeden Fall auf die Software 1wire Schnittstelle zurückzuführen.

                      Gruß Eisbaeeer

                      Gesendet von meinem SM-G920F mit Tapatalk

                      Kein support per PM. Bitte im Forum Fragen stellen!

                      1 Antwort Letzte Antwort
                      0
                      • N Offline
                        N Offline
                        nobody
                        schrieb am zuletzt editiert von
                        #18

                        Keine Ahnung, ob dies eine Auswirkung hat, aber bei der Beschreibung für den pi, nach der ich die Verkabelung gemacht habe, wird der Widerstand mit 3.3 Volt statt 5 Volt verbunden.

                        Gesendet von meinem GT-N8000 mit Tapatalk

                        1 Antwort Letzte Antwort
                        0
                        • ThisoftT Offline
                          ThisoftT Offline
                          Thisoft
                          schrieb am zuletzt editiert von
                          #19

                          Hallo derAuge,

                          die 85°C-Werte sind eindeutig Fehlmessungen seitens der Sensoren. Speziell wenn Du die oben abgebildeten, vergossenen Sensoren (aus China) hast würde ich dir sehr empfehlen auf 3-Draht-Technik umzurüsten. Ich hatte mit diesen Sensoren im parasitären Mode auch nur Probleme wo andere (unverdrahtete vom großen C) einwandfrei funktioniert haben.

                          Gruß Thilo

                          22 HM-Geräte; PivCCU2 auf RasPi

                          ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          613

                          Online

                          32.5k

                          Benutzer

                          81.7k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe