Raspberry Pi Build Server¶
A raspberry pi can be used as a headless build server for otb-iot. This can be especially useful if you’re writing hardware configuration into an I2C eeprom - as the raspberry pi and otb-iot include this programming function.
This section contains the steps to follow to set up the raspberry pi before building otb-iot.
1 Download and install raspbian lite to an sd card following the instructions here.
2 Before installing the sd card in the pi, insert in into a linux machine and identify the disk identifier the machine has allocated it. We’ll assume /dev/sde here.
3 On the linux machine, mount the boot parition /dev/sde1 and create a zero length file ssh
sudo mount /dev/sde1 /mnt
touch /mnt/ssh
sudo umount /mnt
4 Now mount /dev/sde2 and set up the pi’s networking. For example, to set up wifi, edit the following files:
- /etc/network/interfaces - change all instances of manual in this file to dhcp
- /etc/wpa_supplicant/wpa_supplicant.conf - add the following at the end:
network={
ssid="your ssid"
psk="your password"
}
5 Unmount /dev/sde2 and run sync:
sudo umount /dev/sde2 sudo sync
6 Now insert the sd card into the pi and boot it up.
7 Once booted, ssh into the IP address of the pi (if it’s been allocated via DHCP you may need to query your DHCP server to find its addres):
ssh pi@ip_address # password is raspberry
8 At this point I like to install my public RSA key into ~/.ssh/authorized_keys to save entering the password again
9 Now run raspi-config to expand the filesystem, and enable I2C (optional)
sudo raspi-config
10 After rebooting to allow the changes to take effect update your pi and install the necessary packages:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install make unrar-free autoconf automake libtool gcc g++ gperf flex bison texinfo gawk ncurses-dev libexpat-dev python-dev python python-serial sed git unzip bash help2man wget bzip2 libtool-bin hexedit
11 Install esp-open-sdk:
cd ~/
git clone --recursive https://github.com/pfalcon/esp-open-sdk.git
cd esp-open-sdk
make
cd ..
You’re now ready to get started with otb-iot.