Making my OrangePi Zero useful (again) with updating it to the latest Armbian and connecting a 1-Wire DS18B20 temperature sensor to it.
Get a microSD card and install the latest Armbian image for your Zero. Boot and do the usual setup: set root password, create a new user, copy ssh keys etc.
Hardware Related Setup
Here the fun part starts. Define the features you want to use on the 26 pin header (see at the Sunxi wiki).
Add the w1-gpio overlay and configure it to use PA07 (pin 12 on the 26 pin header) and enable pull-up (not really needed though as we need an external pull-up resistor anyway). Reboot when done. Other pins are ok too. PA07 works though.
overlay_prefix=sun8i-h3 overlays=usbhost2 usbhost3 w1-gpio param_w1_pin=PA07 param_w1_pin_int_pullup=1
The name of the overlay are from /boot/dtb/overlay/.
Wire up everything
DS18B20 has 3 pins: GND, 3.3V and DATA. DATA goes to PA07. Don’t forget a 4.7k pull-up resistor between 3.3V and DATA.
If everything worked, you will have a temp1_input which has the temperature in °C * 1000:
harald@opz2:/boot$ modprobe w1_therm harald@opz2:/boot$ lsmod | grep w1 w1_therm 16384 0 w1_gpio 16384 0 wire 24576 2 w1_gpio,w1_therm harald@opz2:/boot$ dmesg [...] [ 142.370130] w1_master_driver w1_bus_master1: Attaching one wire slave 28.80000004215e crc 94 harald@opz2:/boot$ cat /sys/bus/w1/devices/28-80000004215e/hwmon/hwmon0/temp1_input 23812
2020-04-09 Quick update: Adding a 2nd DS18B20 was picked up automatically and now I have 2 sensors:
harald@opz2:~$ cat /sys/bus/w1/devices/28-80000004215e/hwmon/hwmon0/temp1_input 24187 harald@opz2:~$ cat /sys/bus/w1/devices/28-0316884fabff/hwmon/hwmon1/temp1_input 24375