Raspberry Pi und 1-Wire
ACHTUNG, DIESE SEITE IST NOCH IN DER ENTWICKLUNG Der <a href="/w/index.php?title=Raspberry_Pi&action=edit&redlink=1" class="new" title="Raspberry Pi (Seite nicht vorhanden)"> Raspberry Pi</a>, abgekürzt RPi ist ein Einplatinencomputer der Raspberry Pi Foundation, der unter Linux läuft und über eine Vielzahl von Anschlüssen verfügt.
FHEM läuft auf allen Modell des Raspberry Pi. Während <a href="/w/index.php?title=Raspberry_Pi&action=edit&redlink=1" class="new" title="Raspberry Pi (Seite nicht vorhanden)"> hier</a> die Installation von FHEM beschrieben wird, soll sich diese Seite nur mit dem Anschluss von 1-Wire Devices an den RPi befassen.
Hardware
Bereits von der Hardware her bietet der RPi verschiedene Möglichkeiten zum Anschluss von 1-Wire-Devices
USB-Port
Über einen der USB-Ports des RPi mit entsprechendem Adapter. Hierbei sollte, wenn es sich nicht nur um wenige 1-Wire-Devices handelt, ein USB-Hub mit eigener Stromversorgung zwischengeschaltet werden. Mit USB-Extendern lässt sich dies bequem auch bis zu 20m entfernt vom RPi bewerkstelligen.
Alle bekannten USB/1-Wire Adapter arbeiten mit dem RPi. Allerdings ist es möglicherweise (nur, wenn Fehler auftreten !) nötig, dafür ein Kernel-Update durchzuführen, da in manchen älteren Versionen des Linux-Kernels für den RPi Fehler im USB-Stack enthalten sind.
COC-Modul
Anschluss über ein COC-Modul des Herstellers ">busware.de</a>. Siehe hierzu im Detail <a href="/w/index.php?title=COC_und_1-Wire&action=edit&redlink=1" class="new" title="COC und 1-Wire (Seite nicht vorhanden) COC und 1-Wire.
RPI2-Modul
Anschluss über ein RPI2-Modul des Herstellers Sheepwalk Electronics. Dieses Modul wird direkt auf den internen I2C-Bus des RPi aufgesteckt. Im Kaufzustand bietet es für den 1-Wire-Bus sowohl eine RJ45-Buchse, als auch einen Schraubklemmenanschluss. Diese sind leider beide so hoch, dass das Modul nicht mehr in das RPi-Gehäuse passt. Hier kann aber leicht abgeholfen werden (to be continued).
Zur Ansteuerung ist auf dem RPi zunächst das Starten zweier Kernelmodule nötig, dazu als root ausführen
modprobe i2c-bcm2708 modprobe i2c-dev
Der automatische Start dieser beiden Module kann in der Datei /etc/modules eingetragen werden. Bei Vorhandensein des Paketes i2c-tools wird dann die korrekte Erkennung des Adapters mit dem Befehl
i2cdetect -y 1
überprüft, der 1-Wire-Busmaster DS2482-100 sollte als I2C-Device mit der ID 0x18 gefunden werden.
GPIO4-Port
Anschluss direkt am GPIO-Port des RPi
UART-Schnittstelle
Der RPi verfügt auch über eine UART-Schnittstelle, an diese kann direkt ein Serielles 1-Wire Interface angeschlossen werden (IN VORBEREITUNG)
Software
Die Ansteuerung des 1-Wire Bus auf dem RPi kann durch unterschiedliche Software-Systeme erfolgen. Verbreitet mit FHEM sind
- OWX sowie die zugehörigen Frontendmodule OWAD, OWCOUNT, OWID, OWLCD, OWMULTI, OWSWITCH und OWTHERM. Das OWX-Modul operiert direkt auf der jeweiligen Hardware (USB bzw. Seriell) oder liest die Daten über Netzwerk (COC/CUNO/Arduino) und reicht sie an spezialisierte Frontendmodule weiter.
- OWServer, ein Modul, welches die vorhergehende Installation des Softwarepaketes [http://www.owfs.org">OWFS erfordert. OWFS startet einen speziellen Server, der die Kommunikation mit der Hardware übernimmt und die Daten dann an OWServer weiterleitet. Zu OWServer passt ein generisches Frontendmodul OWDevice, siehe hierzu
Nachfolgend ist die Kompatibilität dieser Softwaresysteme mit den einzelnen Hardware-Möglichkeiten aufgeführt.
Anschluss | Gerät | Unterstützte 1-Wire Devices | Besonderheit | Stromversorgung 1-Wire Bus |
---|---|---|---|---|
Direkt an USB | DS9490 Adapter | funktioniert nicht, weil der enthaltene Chip DS2490 derzeit nur über libusbansteuerbar ist. Abhilfe ist in Arbeit. | ?? | |
Direkt an USB | USB9097 Adapter | Alle von OWX unterstützten Devices, d.h.
DS18x20, DS1822 Temperatursensor DS2406, DS2408, DS2413 Schalter DS2423 Zähler DS2438 Multisensor DS2450 4 Kanal ADC LCD-Controller von Louis Swart Alle anderen 1-Wire Devices: Nur ID |
funktioniertauf der FB7390, das Kernelmodul ch341.kofindet man hier | Ja, 5V |
Direkt an USB | Eigenbau, mit FT232RL und DS2480 Bus-Master | funktioniert, Fertiggeräte eventuell bei EBay erhältlich, siehe auch Interfaces für 1-Wire | Ja, 5V | |
Direkt an USB | LinkUSBi Adapter | funktioniert, verwendet das FTDI Kernelmodul.
Achtung: Es kann zu Timing-Problemem kommen. Erhältlich z.B. hier |
Ja, 5V an Pin2 (limited to 50mA) | |
Über USB-zu-Seriell-Konverter
9- oder 25-poligmit Winchiphead CH341-Chip |
Konverter + DS9097U-(009/S09, E25) | funktioniertauf der FB7390, das Kernelmodul ch341.kofindet man hier | Nur bei den 25-poligen Modellen als Standard,
bei den 9-poligen Modellen externe Versorgung oder Modifikation des DS9097 nötig | |
Über USB-zu-Seriell-Konverter
9- oder 25-poligmit Prolific PL2303-Chip |
Konverter + DS9097U-(009/S09, E25) | funktioniertauf der FB7390, das Kernelmodul pl2303.kofindet man hier | Nur bei den 25-poligen Modellen als Standard,
bei den 9-poligen Modellen externe Versorgung oder Modifikation des DS9097 nötig | |
Über USB-zu-Seriell-Konverter
9- oder 25-poligmit FTDI RL232-Chip |
Konverter + DS9097U-(009/S09, E25) | funktioniertauf der FB7390, das Kernelmodul ftdi_sio.koist auf der FritzBox vorhanden | Nur bei den 25-poligen Modellen als Standard,
bei den 9-poligen Modellen externe Versorgung oder Modifikation des DS9097 nötig | |
Über Netzwerk und CUNO | CUNO | Mit OWX: Alle von OWX unterstützten Devices Ohne OWX: Nur DS18x20, DS1822 Temperatursensor | funktioniertmit gewissen Einschränkungen, siehe CUNO und 1-wire | Ja, aber nur 3,3 V.
Kann allerdings zu 5V modifiziert werden |
Über Netzwerk und Ethersex-Gerät | AVR-Net-IO oder ähnliches | DS18x20, DS1822 Temperatursensor
DS2502 EEPROMDS2450 4 Kanal ADC |
funktioniert, siehe AVR-NET-IO | ?? |
Links
- Neubert & Vollmar EDV-Dienstleistungen[http://neubert-volmar.de/Hausautomation/RaspberryPi/index.html [1]]