I am using a setup with three DS18B20 temperature sensors in a 3-wire setup (using a pullup resistor of 4.7 kOhm from data to 5v) on a raspi prototype shield. This works fine with a Raspi model B+ V1.2.
Now I am switching to a Raspi Pi 2 model B v1.1. The hardware connection as well as the GPIO hardware itself seems to be okay on the new board. I checked the GPIO pin 4 (default for 1-wire) through sysfs and verified that it can work as an output and as an input.
The old as well as the new board are run both under Raspbian.
What I tried so far:
First, I loaded w1-gpio using
sudo modprobe w1-gpio (or alternatively through listing it in
/etc/modules). Both ways it gets loaded (shown by
lsmod). Additionally I loaded w1-therm the same way. However, the directory
/sys/bus/w1/devices does not get populated indicating that the enumeration of the sensors does not work. There are no errors reported through
dmesg. This behavior does not depend on enabling/disabling device-tree.
I gave it a second try using device-tree (enabled through
raspi-config). I listed
dtoverlay=w1-gpio,gpiopin=4,pullup=1 or just adding
At the same time I removed any w1 entry from
/etc/modules. After a reboot I noticed that w1-gpio was not loaded (not shown by
dmesg gives no hints. Now I added dtdebug=on to
/boot/config.txt and rebooted again. However,
sudo vcdbg log msg gives no hints.
To be sure everything is up-to-date I upgraded the software and the firmware to the current level by
sudo apt-get update
sudo apt-get dist-upgrade
Linux raspberrypi 4.4.48-v7+ #964
However this did not help.
One strange detail: after updating/upgrading the Pi the directory
/boot/overlays contains additional entries. For example aside of
w1-gpio-overlay.dtb there is now a
Now I am somewhat out of new ideas what to try next, but maybe someone can give me helpful information.
Thank you for any help.