FreeBSD 11 was released recently. I ran pre-released FreeBSD 11 on Raspberry Pi already. And I have noted that it behaviour changes from snapshot to snapshot.
Let’s see how released FreeBSD 11 works on Raspberry Pi Model B.
We don’t need to change anything to work with serial console cable.
USB Wi-Fi setup slightly changes. After boot with connected device we can see our device in dmesg output:
There are no interface, but there are kernel modules for it:
But we can add wlan interface:
Next steps are update /etc/rc.conf and create /etc/wpa_supplicant.conf
After reboot we can see wlan interface:
Let’s check it:
Compiled applications are available with a pkg – a utility for manipulating packages:
GPIO and GPIOLED
Nothing changes here, it works:
Real Time Clock
We can use ds1307 driver to get a real-time clock (RTC).
First we need to add ds1307 to FDT file /usr/src/sys/boot/fdt/dts/arm/bcm2835.dtsi:
Next, we need to compile and install our new FDT:
After reboot we can see new but unknown device:
I didn’r find any loadable module for ds1307 device. We need to add ds1307 device to our kernel /usr/src/sys/arm/conf/RPI-B:
After that we can compile and install our new kernel:
After reboot we can see our new RTC device:
It’s here and working:
To work with 1-Wire bus we need to add support for it our FDT file /usr/src/sys/boot/fdt/dts/arm/rpi.dts:
4 in the third string is a number of pin we will use for connecting 1-wire devices.
But we don’t need to recompile our kernel. There are loadable kernel modules for 1-wire we can use.
Let’s check how DS18B20 temperature sensors connected to 1-wire bus works: