There is now an easy interactive setup script that allows you to install this Gateway solution on a raw Raspbian image. But first let’s make sure you get the image prepared correctly.
Install raspbian, enable ssh, setup wifi
The recommended distribution to use is the latest raspbian-lite on a Pi3 or better.
If you have a headless Pi (no monitor/keyboard) follow this official guide to enable ssh and setup your wifi credentials (before first boot). Other recommended steps:
- change default password
- change your Pi’s hostname to something other than
- change timezone to where the Pi is located
Run the setup script
Open your Pi’s SSH/terminal and type these commands:
cd /home/pi sudo wget https://raw.githubusercontent.com/LowPowerLab/RaspberryPi-Gateway/master/.setup/gatewaysetup.sh sudo bash gatewaysetup.sh && sudo rm gatewaysetup.sh
This script was tested on RaspberryPi2 and 3. It installs everything required to support the Pi-Gateway app and will prompt you at various steps for information/passwords/etc.
Serial port check
By default the Pi-Gateway app is configured to work with the GPIO serial port
/dev/ttyAMA0. The setup process automatically enables this port, disables the system console over it, and disables bluetooth (because it wired to it). Full details about the Pi’s UARTs and bluetooth module are found on this official page.
To the GPIO serial port is enabled and bluetooth is disabled run
sudo nano /boot/config.txt and ensure you have these lines at the end of this file:
Also, ensure the console shell over serial is disabled. Run
sudo nano /boot/cmdline.txt and make sure the token
console=serial0,115200 is removed (only
console=tty1 should remain). This can also be achieved within raspi-config (step 5 – interfacing options).
Using USB serial?
If your RF gateway (ex MoteinoUSB) is connected to a USB port, you will need to change the port setting on the UI Settings page once the app is installed. A USB port usually looks like
/dev/ttyUSBn. You can use
ls /dev/tty* to try to identify which one it is (ie run this command before and after connecting to the USB port).
Serial port debugging
It may be useful to debug the serial port. A lightweight serial terminal is picocom, install it with
sudo apt-get install picocom. Next ensure no other application has that port open (ex. run
sudo service gateway stop to stop the PiGateway app). Then open the serial port with
picocom -b 19200 /dev/ttyAMA0. If your RF gateway is attached, you should start seeing packets coming in from your RF nodes.
FTP-ing into your Pi
It’s very useful to FTP into your Pi and you should install proftpd. The setup script offers to do it for you, but you can also do it manually at any time by running
sudo apt-get install proftpd.
.) so it’s useful to enable hidden files access – by running
sudo nano /etc/proftpd/proftpd.confand change the line