NEWS
Test Adapter DS18B20 v1.1.x
-
@wrod Nun habe ich das Problem wieder. Wohl wegen zu knappen Speichers ist mein Raspi immer abgestürzt. Versuche nun, das in der Synology unter Docker nachzubilden. Ich habe das genau so gemacht. Der Adapter findet aber das "entfernte System" nicht.
Kann das daran liegen , dass iobroker unter synology/Docker einen anderen Port benutzt (7234 bei meiner Installation). D.H. mit welchem Port versucht denn das entfernte System den Host zu erreichen? In der .env-Datei ist ja nur die IP eingetragen, kein Port.
Dank im Voraus
-
@wrod Den Port kannst du in der Adapterinstanz als "Server Port" und beim Remote Client in der
.env
Datei alsADAPTER_PORT
einstellen. Standardmäßig ist beides auf Port 1820 (TCP) gesetzt.
Bei Docker musst du wahrscheinlich den Port zusätzlich in den Container durchreichen. -
@crycode OK, danke. Nachdem ein anderer Adapter (BLE) unter Docker nicht funktioniert, habe ich einen neuen Raspi aufgesetzt und ein Backup eingespielt. Es geht auch wieder, wenn ich auf dem remote den client manuell starte, nicht aber, wenn ich den daemon einzurichten versuche.
Wenn ich den client auf dem Remote manuell starte, gibt er Meldungen aus "sending client into adapter" etc (siehe Abbildung). Er beendet dann die Bearbeitung aber nicht, d.h. ich bekomme keine Kommandozeile mehr.
Und wenn ich mich neu mit dem remote verbinde, ist der Client beendet. Er wird dann im Adapter auch wieder nicht mehr angezeigt.
Auch ein CRTL-C im remote führt zu einem "socket closed".Woran kann das liegen?
-
@wrod sagte in Test Adapter DS18B20 v1.1.x:
Wenn ich den client auf dem Remote manuell starte, gibt er Meldungen aus "sending client into adapter" etc (siehe Abbildung). Er beendet dann die Bearbeitung aber nicht, d.h. ich bekomme keine Kommandozeile mehr.
Das ist normal, da der Client dann auf Befehle vom Server wartet.
Und wenn ich mich neu mit dem remote verbinde, ist der Client beendet. Er wird dann im Adapter auch wieder nicht mehr angezeigt.
Auch ein CRTL-C im remote führt zu einem "socket closed".Ist auch normal. Wenn du ein Terminal schließt, dann werden auch alle Prozesse, die an diesem Terminal hängen, beendet.
Um den Client als Daemon laufen zu lassen, musst du den SystemD Service einrichten, wie es beim Client-Setup angezeigt wird:
sudo cp iobroker-ds18b20-remote.service /etc/systemd/system/iobroker-ds18b20-remote.service sudo systemctl daemon-reload sudo systemctl enable iobroker-ds18b20-remote.service sudo systemctl start iobroker-ds18b20-remote.service
Die ersten beiden Zeilen registrieren den SystemD Service.
Zeile 3 aktiviert den automatischen Start beim Systemstart.
Zeile 4 startet den Service (Daemon).Status anzeigen kannst du dann mit
sudo systemctl status iobroker-ds18b20-remote.service
.
Log ansehen mitsudo journalctl -u iobroker-ds18b20-remote.service
. -
@crycode Danke. Ich habe das alles vorher auch so gemacht. Nach dem 4. reboot hat er dann den daemon sauber gestartet. Ursache noch immer unklar. Mal sehen, ob das die Tage so durchhält.
-
@crycode sagte in Test Adapter DS18B20 v1.1.x:
Die einfachste Lösung wäre auf dem separaten Pi auch ioBroker zu installieren und diesen als Slave in ein Multihostsystem einzubinden. Auf dem Slave ioBroker kannst du dann den Adapter installieren und damit den Sensor auslesen.
Hallo,
Ich beschäftige mich seit einiger Zeit mit der Planung einer Luft Wasser Wärmepupe für unser Eigenheim.
Da die Steuerplatine keine freiprogrammierbare Schnittstellen hat, ich aber zusätzliche Temperaturen für Umschaltungen benötige bin ich auf die Idee gekommen, es wie oben vorgeschlagen zu realisieren.
Ein alter Pi 3 ist vorhanden. Dort werde ich den ioBroker installieren. Gibt es für die Installation der One Wire Temperaturen eine Platine die ich zusätzlich installieren sollte oder kann ich direkt an die GPIO Pins gehen.
Die nächste Frage ist, wie deklariere ich den Pi 3 als Slave und verbinde ihn dann mit dem Pi 4 auf dem die Haussteuerung läuft.
Danke
Mit freundlichen Grüßen
Michael -
@altersrentner Eine fertige Platine ist mir hier nicht bekannt und wird eigentlich auch nicht benötigt, da du nur mit den drei Kabeln an die GPIOs musst. Entweder gehst du direkt mit Jumper-Kabeln auf die Pins, oder nutzt Pfostenstecker etc.
Mit der aktuellen Version vom Adapter brauchst du nicht zwangsläufig einen ioBroker Slave.
Der Adapter kann auf deinem normalen ioBroker Host laufen und auf dem Pi 3 installierst du dann einfach nur Node.js und den Remote-Client vom Adapter und aktivierst die Option "Entfernte Sensoren aktivieren" in den Adaptereinstellungen. Alles nötige dazu ist bei den Adaptereinstellungen erklärt. -
@crycode Hallo,
Danke für Deine Antwort.
Die Temperaturen werden aber an den Pi 3 angeschlossen?
Mit freundlichen Grüßen
Michael -
@altersrentner sagte in Test Adapter DS18B20 v1.1.x:
Die Temperaturen werden aber an den Pi 3 angeschlossen?
Die Sensoren, ja.
-
@crycode Danke!
MfG Michael -
Hallo,
ich habe an meinen Raspberry über 2 GIPOS mehrere DS18B20 angeschlossen. Nur leider findet das dein Programm nicht.
Was mache ich falsch?Vielen Dank schonmal
-
@sandra1234
Die Doku hier gelesen? -
@fredf Ich habe auch das Problem mit vielen (derzeit 12) ds18b20.
Diese sollen/können an verschiedene GPIO angeschlossen werden. Wie genau sieht das aus? braucht lediglich die Daten-Leitung an unterschiedliche GPIO-Pins angeschlossen werden - jeweils mit einem 4,7 kOhm Widerstand gegen 3,3V? Oder muss jeder Strang auch an eine andere Stromversorgung angeschlossen werden?Was bedeuten die dann mehrfachen w1_bus_masterX in der Praxis? Mit der Standardeinstellung /sys/bus/w1/devices müssten doch alle ohne weitere EInstellungen gefunden werden, oder?
Dank im Voraus
Dank im Voraus
-
@wrod sagte in Test Adapter DS18B20 v1.1.x:
braucht lediglich die Daten-Leitung an unterschiedliche GPIO-Pins angeschlossen werden - jeweils mit einem 4,7 kOhm Widerstand gegen 3,3V?
Genau so. Für jede Gruppe eine eigene Datenleitung mit eigenem PullUp Widerstand gegen +3,3 V. Die Spannungsversorgung kann für alle Sensoren gemeinsam sein.
@wrod sagte in Test Adapter DS18B20 v1.1.x:
Mit der Standardeinstellung /sys/bus/w1/devices müssten doch alle ohne weitere EInstellungen gefunden werden, oder?
Genau, damit werden alle Sensoren gefunden, die im System bekannt sind.
-
@crycode
Danke. Aber hmmm.
Habe es so gemacht. Nur wird der zweite w1_bus_master nicht angelegt. Muss da doch noch etwas händisch getan werden? -
@wrod OK, nochmaliges reboot half.
ABer ein Sensor gibt nun extreme Wert aus. Üblich (mit anderem Thermometer kontrolliert) sind 65 °C, er zeigt 127 °C ... -
@wrod Habe ihn neu angeschlossen, nun misst er ca 80 °C zu wenig!
Komisch -
@wrod
zwischenzeitlich immer wieder auch mal Fehler "Error while searching for local sensors: Error: ENOENT: no such file or directory, scandir '/sys/bus/w1/devices'" - das ist aber da! -
@wrod
So, ich habe den Sensor ausgetauscht. Der neue scheint zu gehen.
Allerdings "findet" ihn der Adapter immer wieder und trägt ihn ein. Wie kann ich ihn endgültig entfernen? Das muss doch irgendwo bei /w1/devices oder so gehen. Einfach das directory mit seinem Namen löschen? -
@wrod Hmm... das klingt noch nach Problemen auf dem 1-Wire Bus, oder ggf. einem defekten Sensor.
Nachdem ein Sensor vom Bus entfernt wurde, dauert es eine Weile (einige Minuten), bis der Kernel diesen auch im Sysfs unter
/sys/bus/w1/...
entfernt. Er sollte aber früher oder später verschwinden und spätestens nach einem Reboot weg sein.