Kann ich ein One Wire File System über das GPIO verwenden?

14

Ich habe owfs (unter debian) installiert , um zu erkennen, dass das anfängliche Setup (1wire) nur über den USB-Port funktioniert. owfs ist die Abkürzung für One Wire File System . Es ist ein Standard für Low-End-Sensoren, aber ich versuche speziell, einen DS18B20 über die GPIOs anzuschließen .

Kann ich die 1-Draht-Funktion über die GPIOs aktivieren? Und wenn ja, wie mache ich das?

Anfangs habe ich nicht verstanden, dass owfs häufig einen "Busmaster-IC" haben möchte, mit dem es mit den 1-Draht-Sensoren kommunizieren kann. Ich dachte, ich könnte leicht die Einstellungen ändern, um die GPIOs ohne Busmaster zu verwenden.

Christian
quelle
ohne bus master ..
Christian
3
Hallo Christian, um eine Antwort auf diese Frage zu bekommen, müssen Sie die Frage ein wenig erweitern, um zu erklären, was owfs eigentlich ist. Irgendwelche Referenzen davon, die auf einem RPi funktionieren?
Alex Chamberlain
1
owfs ist die Abkürzung für One Wire File System. Und es ist ein Standard für Low-End-Sensoren - mehr Infos unter owfs.org
Maria Zverina
1
Ich habe Ihren Titel basierend auf diesen Kommentaren geändert. Lassen Sie mich wissen, wenn das nicht in Ordnung ist.
Jivings
1
Vielen Dank für Ihre Frage Christian und vielen Dank für die Aktualisierung mit ein wenig mehr Informationen. Ich habe es ein bisschen aufgeräumt und in ein paar anderen Infos aus Kommentaren aufgenommen.
Mark Booth

Antworten:

8

Ich habe einige Nachforschungen in dieser Angelegenheit angestellt und die folgenden Ergebnisse erzielt:

  • Das w1-Kernelmodul und OWFS sind derzeit nicht kompatibel.
  • Wie Sie wahrscheinlich wissen, funktioniert OWFS mit vielen Hardwaregeräten (1-Draht-Bridges von USB / I2C / Serial / TCP usw.), die jede Bit-Banging-Lösung übertreffen.
  • Im Quellcode von OWFS (speziell dem Owlib-Teil) gibt es eine vollständige Umschreibung dieses w1-Kernel-Moduls (basierend auf dem Code von Evgeniy Polyakov, dem Autor des w1-Kernel-Moduls). Darüber gibt es auch eine Informationsseite. Aber es sieht aus wie im Aufbau / in Entwicklung: OWFS w1 info . Sie geben auch an, dass auf dieses Modul über eine Netlink-Verbindung ( Busmaster-Tabelle ) zugegriffen wird , und melden sich mit avahi bei OWFS. (Überprüfen Sie die Quelldateien im Verzeichnis owlib / src / c, beginnend mit ow_w1_ *)
  • Der Befehlszeilenparameter --w1 wird für viele Tools verwendet, um dem Prozess mitzuteilen, dass das w1-Kernelmodul verwendet werden soll. Wie Sie die GPIO-Pins für die 1wire-Kommunikation zuordnen, weiß ich derzeit nicht.
  • Last but not least gibt es in der OWFS Todo-Liste Einträge zum Hinzufügen von GPIO und des "normalen" w1-Kernelmoduls, wie Sie hier sehen können: OWFS Todo

Ich habe kein 1wire-Zeug herumliegen, um tatsächlich zu testen, ob dieses "Umschreiben", wie in Punkt 3 erwähnt, funktioniert. Und speziell, wie es funktionieren soll, aber auf der Infoseite wird über das Deaktivieren des w1-Kernelmoduls oder das Ausführen von OWFS als Root gesprochen, damit das w1-Kernelmodul entladen werden kann. Wenn dies jedoch bereits implementiert ist und funktioniert, habe ich keine Ahnung.

Ich hoffe, diese Information bringt Sie ein wenig weiter und bitte teilen Sie uns einige Ergebnisse mit.

Ikku
quelle
Etwa die Hälfte davon habe ich in einer anderen Antwort geschrieben, nachdem ich mich auf tanzilli.com/1wire umgesehen und dann bemerkt hatte, dass ich im Grunde die gleichen Dinge wie hier gefunden habe :)
XTL
1

Vielleicht möchten Sie sich diese Frage ansehen . Die Occidentalis-Distribution verfügt über eine 1-Draht-Unterstützung für GPIO-Pins.

speshak
quelle
1
Ich bin alle bereit das zu tun! Aber die Frage war über Eulen! Prost
Christian
Dieses Kernelmodul weist einige schwerwiegende Einschränkungen auf. Lesen Sie darüber hier: kernel.org/doc/Documentation/w1/slaves/w1_therm
notlesh