"Bleacon", the Bluetooth scanning module used in the original Tilt Pi, no longer appears to install successfully on recent versions of Raspbian. As such, the module has been replaced with a new Python-based equivalent "Aioblescan". These instructions incorporate the new module and were tested on a fresh install of the February 13, 2020 version of Raspbian Buster installed on a Raspberry Pi 0w (this ensures greater compatibility). It has been tested to run successfully on 6 different versions of Raspberry Pi. Feel free to contact us at firstname.lastname@example.org for feedback or any questions.
Looking for the pre-built disk image? Skip these steps and download our updated SD card image here: https://tilthydrometer.com/products/tilt-pi-v2-buster-raspberry-pi-sd-card-image-download or download our HDMI version that will automatically boot into the RPi desktop and launch the Tilt Pi dashboard: https://tilthydrometer.com/products/tilt-pi-v-2-buster-hdmi-rpi-sd-card-image-download-for-use-with-hdmi-port
Using SSH from another computer or from the Raspberry Pi terminal, enter the following commands.
Update Raspbian packages and install python install utility, "python3-distutils".
sudo apt-get update --allow-releaseinfo-change
sudo apt-get install python3-distutils
Get the “aioblescan” bluetooth scanner module customized with Tilt plugin, unzip downloaded file, go to install folder, and install. Once you complete this step, you can run the command "sudo python3 -u -m aioblescan -T" to verify Tilt scanner is working. Make sure Tilt is nearby and floating if doing the test. Use "ctrl-c" to stop scanning.
sudo -H python3 setup.py install
Install node-red update script for Raspberry Pi using version that works with Google Sheets web apps (this forked install script installs version 0.18.4 which allows following redirects of http POST requests). Answer "yes" to install Raspberry Pi specific nodes.
bash <(curl -sL https://raw.githubusercontent.com/baronbrew/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
Install dashboard ui node v2.15.5 globally for node-red and enable auto-start of node-red at boot.
sudo -H npm install email@example.com -g
Note: For some reason v2.15.5 will not install succesfully unless v2.9.7 is installed first.
sudo -H npm install firstname.lastname@example.org -g
sudo systemctl enable nodered.service
Reboot to start node-red on boot.
Download Tilt Pi “flow” that uses the new Aioblescan module
wget -O /home/pi/flow.json https://raw.githubusercontent.com/baronbrew/TILTpi/Aioblescan/flow.json
Run downloaded Tilt Pi app/flow in node-red:
curl -X POST http://localhost:1880/flows -H "Content-Type: application/json" -H "Node-RED-Deployment-Type: nodes" --data "@/home/pi/flow.json"
Step 9 (optional)
As an optional step, you can add a WiFi connection manager script that has a robust algorithm to maintain the WiFi connection if the connection is unstable.
curl -L wifi.brewpiremix.com | sudo bash
In a web browser visit
http://localhost:1880/ui (if not using SSH to install). If this doesn't work, you may need to find the IP address of your Raspberry Pi and go to
X.X.X.X is your Raspberry Pi's IP address.