Unterschiede beim Anschluss von 1wire devices?

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen!

    Ich habe mir vor ein paar Tagen einen Rasberry Pi 2 gekauft und wollte damit meine Bastel und Lernprojekte weiterführen, die ich bisher mit einem B+ Modell hatte.
    Dazu gehörte auch der Anschluss eines 2zeiligen LCD-Displays und eines Temperatursensors DS1820. Das ging auf dem B+ recht einfach und funktionierte auch soweit (temperatur wurde auf dem Display angezeigt)

    Mit dem neuen 2er Modell bekomme ich das Display zwar zum laufen aber der DS1820 wird nicht mehr erkannt. Die Zeilen:
    sudo modprobe w1-gpio pullup=1
    sudo modprobe w1-therm

    macht er ohne Fehlermeldung aber in dem besagten Verzeichnis /sys/bus/w1/ exisitieren keine device ordner. Es kommen also keine Daten an.
    Alles noch mal an den B+ -> funktioniert. Sensor ist heile, GPIO Belegung sollte bei deiden ja exakt gleich sein aber ich habe keine Idee warum es nicht funktioniert.
    Kann mir jemand helfen?

    Danke!

  • Hallo Tim,

    herzlich Willkommen in unserem Forum!

    Neulich ist ja der Linux-Kernel von 3.12 auf 3.18 umgestellt worden und damit wurde ganz viel geändert.

    Einige der früheren Konfigurationen müssen angepasst werden.

    Was ist das Ergebnis von

    Code
    uname -a

    Wenn hier 3.18 angezeigt wird, dann ziehe Dir bitte den Beitrag von Jörg vom Raspiprojekt rein:

    Code
    https://forum-raspberrypi.de/forum/thread/15694-geraetetreiber-und-device-tree-dt/

    Und dann bitte einen Erfolg melden! :thumbs1:


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (9. Februar 2015 um 10:55)

  • Mit Kernel 3.18.x und dem damit neu eingeführten device tree gab es noch Fehler, bei mir funktionierte der DS18 bis gestern auch nicht (hat nichts mit RPi 2 zu tun, passierte auch auf dem RPi 1).

    Mit dieser Firmware / Kernel funktioniert es wieder:

    Kernelversion: 3.18.6
    Firmwareversion:
    Feb 7 2015 19:38:56
    Copyright (c) 2012 Broadcom
    version e3cfc1e5001c71261c4d79e852723910772ffba9 (clean) (release)

    Gruß, mmi

    P.S.: Entsprechender Eintrag für W1 in config.txt natürlich vorausgesetzt!

  • Ja vielen Dank für die ausführliche Aufklärung und Erklärung des Sachverhaltes! Bin absoluter Linux Newbie und solche Umstellungen laufen mal schön an mir vorbei.
    Es war Kernel 3.18 installiert und nach 2maligen Lesen des empfohlenen Artikels habe ich die Lösung darin auch entdeckt. Gefällt mir so auch ganz gut und wenn man es einmal verstandene hat :)

    Lösung:
    1. in der /boot/config.txt ans Ende einfach die Zeile dtoverlay=w1-gpio einfügen und neustarten. Danach findet man die Protokoll Datei des Sensors unter sys/bus/w1/devices/28-***/


  • Lösung:
    1. in der /boot/config.txt ans Ende einfach die Zeile dtoverlay=w1-gpio einfügen und neustarten. Danach findet man die Protokoll Datei des Sensors unter sys/bus/w1/devices/28-***/

    Genau richtig :bravo2: ! Ich habe auf mein Tutorial hin immer wieder die Frage bekommen, warum nicht der Eintrag

    Code
    dtoverlay=w1-gpio-pullup


    benutzt wird, weil das Modul doch auch mit

    Code
    modprobe w1-gpio pullup=1


    geladen wurde.
    Der Eintrag dieses Overlays bedeutet aber, dass man dem 1w-Pin noch einen zweiten Pin extra für den Pullupwiderstand zur Seite stellen kann, der dann natürlich für nichts anderes zu gebrauchen ist. Manchmal kann das ja Sinn machen, kommt aber wohl eher aus der Nutzung des SoC für andere Zwecke als auf dem RasPi.

  • Hallo Gemeinde,
    hab das gleiche Problem wie Tim Taler007.Mein Neuer Raspberry pi2 zeigt mir mein 1Wire Sensor nicht mehr an bzw.der Ordner ist leer.Hab in die Config.txt am Schluss #dtoverlay=w1-gpio
    Eingetragen und den Sensor mit
    Sudo modprobe w1-gpio
    Sudo modprobe w1-therm
    gestartet,im System habe ich den Ordner unter sys/bus/w1/devices gefunden aber er ist leer.=(
    Da ich mit der Programmierung nicht auskenne hab ich in dem Link mit dem Beitag auch nichts gefunden.Kann mir jemand sagen was ich falsch mache,oder ist der Eintrag in der config.txt falsch.

    Danke im Voraus
    Tapser

  • (10.02.2015 21:15)TimTaler007 schrieb:
    Lösung:
    1. in der /boot/config.txt ans Ende einfach die Zeile dtoverlay=w1-gpio einfügen und neustarten. Danach findet man die Protokoll Datei des Sensors unter sys/bus/w1/devices/28-***/

    Hab nur das getan was in der Zeile steht ,oder ist das falsch.

    Gruß tapser

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!