Czy mogę korzystać z systemu plików One Wire przez GPIO?

14

Zainstalowałem owfs (w debianie) tylko po to, żeby zdać sobie sprawę, że początkowa konfiguracja (1wire) działa tylko przez port USB. owfs to skrót od One Wire File System . Jest to standard dla czujników niskiej klasy, ale specjalnie próbuję podłączyć DS18B20 przez GPIO.

Czy mogę sprawić, aby funkcja 1-wire działała przez GPIO? A jeśli tak, jak to zrobić?

Na początku nie rozumiałem, że owfs często chce „magistrali IC”, którą może wykorzystać do komunikacji z czujnikami 1-przewodowymi. Pomyślałem, że łatwo mogę zmienić ustawienia, aby korzystać z GPIO bez magistrali.

chrześcijanin
źródło
bez mistrza autobusu ..
Christian
3
Cześć Christian, aby uzyskać odpowiedź na to pytanie, myślę, że będziesz musiał nieco rozszerzyć pytanie, aby wyjaśnić, czym właściwie jest owfs. Jakieś odniesienia do niego działające na RPi?
Alex Chamberlain,
1
owfs to skrót od One Wire File System. I jest to standard dla czujników niskiej klasy - więcej informacji na owfs.org
Maria Zverina,
1
Zmieniłem twój tytuł na podstawie tych komentarzy. Daj mi znać, jeśli to nie w porządku.
Jivings
1
Dziękuję za pytanie Christian i dziękuję za zaktualizowanie go o trochę więcej informacji. Posprzątałem trochę i dodałem kilka innych informacji z komentarzy.
Mark Booth,

Odpowiedzi:

8

Przeprowadziłem dochodzenie w tej sprawie i znalazłem następujące wyniki:

  • Moduł jądra w1 i OWFS nie są obecnie kompatybilne,
  • Jak zapewne wiesz, OWFS współpracuje z wieloma urządzeniami sprzętowymi (mostki 1-przewodowe z USB / I2C / Serial / TCP itp.), Które przewyższają wszelkie rozwiązania bitowe,
  • W kodzie źródłowym OWFS (szczególnie w części owlib) jest cały przepis tego modułu jądra w1 (oparty na kodzie Evgeniya Polyakova, autora modułu jądra w1), jest tam również strona informacyjna na ten temat. Ale wygląda na to, że jest w trakcie budowy / rozwoju: informacje OWFS w1 . Oświadczają również, że dostęp do tego modułu uzyskuje się przez połączenie netlink ( tabela Busmaster ) i zgłasza się do OWFS przy użyciu avahi. (sprawdź pliki źródłowe w katalogu owlib / src / c zaczynając od ow_w1_ *)
  • W wielu narzędziach używany jest parametr wiersza polecenia --w1, aby poinformować proces o użyciu modułu jądra w1 oraz o tym, w jaki sposób mapowane są piny GPIO do komunikacji 1-przewodowej, nie mam w tej chwili pojęcia.
  • Wreszcie na liście zadań OWFS znajdują się wpisy dotyczące dodawania GPIO i „normalnego” modułu jądra w1, jak widać tutaj: OWFS Todo

Nie mam żadnych elementów 1wire, które mogłyby przetestować, czy to „przepisanie”, jak wspomniano w punkcie 3, działa. A zwłaszcza, jak powinno to działać, ale na stronie informacyjnej mówią o wyłączeniu modułu jądra w1 lub uruchomieniu OWFS jako root, aby mógł zwolnić moduł jądra w1, ale jeśli jest to już zaimplementowane i działa, nie mam pojęcia.

Mam nadzieję, że te informacje posuną cię nieco dalej i daj nam znać kilka wyników.

ikku
źródło
Mniej więcej połowę tego napisałem w innej odpowiedzi po obejrzeniu tanzilli.com/1wire i rozejrzeniu się, a potem zauważyłem, że w zasadzie znalazłem tutaj te same rzeczy :)
XTL
1

Możesz przyjrzeć się temu pytaniu . Dystrybucja occidentalis ma obsługę 1-wire na pinach GPIO.

speshak
źródło
1
Wszystko gotowe! Ale pytanie dotyczyło owfs! Pozdrawiam
Christian
Ten moduł jądra ma kilka poważnych ograniczeń. Przeczytaj o nich tutaj: kernel.org/doc/Documentation/w1/slaves/w1_therm
notlesh