1Wire Bus

  • Hallo Gemeinde,


    ich habe folgendes Problem mit dem Pi Zero:


    Ich betreibe einen DS18B20 seit Längerem am PI B+.


    Ein Bein liegt auf GND, eins auf 3,3V und das Datenbein auf GPIO 4. Zwischen GPIO 4 und 3,3V hängt ein 4K7 Widerstand.


    Ich benutze folgende Raspbian Version: Linux raspberrypi 4.1.13+ #826 PREEMPT Fri Nov 13 20:13:22 GMT 2015 armv6l GNU/Linux


    In die /boot/config.txt habe ich folgendes eingetragen: [font="m1m, Lucida Console, monospace"]dtoverlay=w1-gpio,gpiopin=4,pullup=on[/font]
    [font="m1m, Lucida Console, monospace"]In die etc/modules: [font="m1m, Lucida Console, monospace"]w1-gpio pullup=1 und w1-therm[/font]
    [/font]


    Läuft alles wunderbar. Der Sensor wird erkannt und ich kann über die angelegte datei die Temp auslesen.


    Jetzt zum Problem: Ich ging davon aus, dass ich einfach die SD-Karte aus dem B+ nehme und in den Zero stopfe. Allerdings wird der Sensor jetzt nicht mehr erkannt! Nach vielem Rumprobieren innerhalb der config und der etc/modules fehlt mir nun jeglicher Ansatz um etwas Weiteres zu probieren. Ich hoffe auf Hilfe. Falls irgendwelche Angaben fehlen reiche ich die natürlich sofort nach! Vielen Dank im Vorraus!

    Edited once, last by joka84 ().

  • dtoverlay=w1-gpio ist richtig, mit w1-gpio-pullup kann man nur einen anderen Pin für den Pullup-Widerstand festlegen. Das ist sinnvoll, wenn man Sensoren mit vorgestückten Steckern direkt anschließen möchte. Dann kann man den Widerstand einfach von einem anderen Pin gegen 3,3V legen.
    Was sagt den lsmod?


  • Jetzt zum Problem: Ich ging davon aus, dass ich einfach die SD-Karte aus dem B+ nehme und in den Zero stopfe.


    Wenn es sich absolut 100% ig um einen B+ handelt dann ist das auch der Fall, ja.
    Wenn es sich aber um einen Pi 2 B handelt, dann stimmt das nur bedingt: Man kann zwar die selbe SD verwenden, allerdings wird für den Pi 2 B ein anderer Kernel verwendet, also eine andere Datei: kernel.img und nicht wie beim Pi-2 B: kernel7.img
    In solch einem Fall können es also 2 verschiedene Kernel Versionen sein. Bei aktuellen Raspbain Images sind beide Dateien vorhanden.
    Was mich aber nun zur nächsten Ausgabe von dir bringt:


    Ich benutze folgende Raspbian Version: Linux raspberrypi 4.1.13+ #826 PREEMPT Fri Nov 13 20:13:22 GMT 2015 armv6l GNU/Linux


    Das sagt aus das diese Ausgabe von einem kernel.img stammt, also einem Kernel für den älteren Pi-1: armv6l ... Bei einem Pi-2 würde da nämlich armv7l stehen.


    Allerdings verrät mir diese Ausgabe noch etwas: 4.1.13+
    Dabei scheint es sich um einen BETA Kernel zu handeln, also einem noch in der Entwicklung befindlichen. Solch ein BETA Kernel kann natürlich noch Fehler enthalten...


    Man sollte nie einfach so blind rpi-update ausführen. Es ist ein fataler Trugschluss zu glauben man müsse das hin und wieder mal ausführen. rpi-update ist kein Tool, das im Rahmen eines ordnungsgemäßen Update-Prozesses herangezogen werden sollte.
    Leider wimmelt es nur so von Tutorials, in denen genau dieses Skript genutzt wird. Zum Zeitpunkt, als irgendwelche Tutorialschreiber dieses Skript aufgerufen haben, mag es ja keinen Schaden angerichtet haben. Aber zu einem späteren Zeitpunkt macht dieses Skript leider Dinge, die nicht immer vorteilhaft sind.
    Die Firmware/Kernel welche man über rpi-update installiert sind immer unstable, da daran aktuell entwickelt wird und selbstverständlich Bugs/Fehler enthalten können.
    Zuletzt wurde zudem auf den neuen "next" Kernel gewechselt wodurch sich einiges radikal verändert hat - insbesondere der Umgang mit Hardware, was auch I2C / SPI usw betrifft.


    Ein Leitsatz, gerade für Anfänger, lautet: Never Change a Running System


    Sobald ein Kernel/Firmware stable ist wird dies über apt-get verfügbar gemacht, also über den offiziellen Repository installierbar.


    Wenn Du Dein System auf einem aktuellen und funktionierenden Stand halten möchtest, dann reicht

    Code
    sudo apt-get update && sudo apt-get upgrade

    vollkommen aus. Und Du wirst gefragt, ob Du die "Angebote" wirklich updaten / installieren möchtest. Alternativ Über apt-get upgrade'bare Pakete informieren



    Rückgängig machen:


    http://www.forum-raspberrypi.d…date?pid=174652#pid174652

  • Nunja, evtl. hätte ja auch ein Kernelupdate das Problem lösen können, was es aber hier wohl in dem Fall nicht tat ....

    ;) Gruß Outi :D
    PIs: 2x Pi B (Rente) / 1x Pi B+ (Rente) / 1x Pi 2 B (Tests) / 2x Pi 3 B (RaspberryMatic / Repetier Server) / 2x Pi Zero 1.2 (J. Lite)
    2x Pi Zero 1.3 (J. Lite) / 2x Pi Zero W 1.1 (Stretch) / 1x Pi 3 B+ (Buster) / 1x Pi 4 B 4GB (Buster)
    Platinen: Sense HAT / RPI-RF-MOD / PiFi DAC+ V2.0 / TV HAT