A photobooth to help appreicate the people you care about! ๐
- Raspberry Pi Model B+ v1.2 (pinout)
- Raspberry Pi Camera v1
- LCD Matrix
- Button
- Mac Laptop
- HiTi P510L Dye Sublimation Photo Printer
- hookup wire, power supplies, ethernet cable, etc
- Download Raspbian image
- Flash image to a SD card using Etcher
- Connect to monitor, keyboard, mouse, Ethernet and power up
- Configure for local timezone, US Keyboard
- Run
raspi-configand enable the camera - Update Pi
using sudo apt-get updateandsudo apt-get dist-upgrade - Verify Python 3.5.x or > is installed by running
python3; upgrade if needed - Run
sudo apt-get install graphicsmagick - Run
pip3 install RPi.GPIO - Run
pip3 install python-dotenv - Run
pip3 install luma.led_matrix - Run
sudo apt-get install sshpass - Run
sudo apt-get install imagemagick - Update GPU memory to
144 - Create a
.envfilr with the following variables:
PHOTO_FRAMES=4
FLOWDOCK_TOKEN=123456
FLOWDOCK_ORG=123456
FLOWDOCK_FLOW=123456
PRINTER_NAME_OR_IP=192.168.1.1
PRINTER_USER=john
PRINTER_PASSWORD=doe
Obtain Flowdock token from https://flowdock.com/account/tokens.
- Run
sudo raspi-configand enable wait for network under boot options. - Run
sudo nano /etc/rc.localwith the following:
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
# Start Photobooth
printf "Starting Photobooth"
cd /home/pi/Documents/src/TinkurBooth/
sudo -H -u pi /usr/bin/python3 boothsnap.py &
exit 0
- To verify script is starting when the Pi boots, run
systemctl status rc.local.serviceto view therc.localstartup logs.
- Enable ssh / sftp / scp on Mac; optionally create a new service account for the transfers
- Install HiTi P510L drivers
- Install sshpass on Pi
sudo apt-get install sshpass - Manually SSH to the laptop once from the Raspberry Pi to answer yes to the trusted prompt (or update
known_hosts) - Run
python unit_print.pyto start the script that looks for new images and prints them
| LCD Pin | Raspberry Pi Pin |
|---|---|
| VCC | 5v |
| GND | GND |
| DIN | MOSI |
| CS | CE0 |
| CLK | SCK |
| Button Pin | Raspberry Pi Pin |
|---|---|
| Button (polarity doesn't matter) | GPIO24 |
| Button (polarity doesn't matter) | GND |
| LED + | GPIO21 |
| LED GND | 220ฮฉ resistor to GND |
- Appreciate Each Other sticker (Sketch App source file)
- Appreciation Booth instructions poster (Sketch App source file)
- BCM2837 Quad Core 1.2GHz Broadcom 64bit CPU
- BCM43438 wireless LAN and Bluetooth Low Energy (BLE) on board
- MMAL (Multimedia Abstraction Layer) is a C library designed by Broadcom for use with the Videocore IV GPU on the Raspberry Pi
Created by Adam Zolyak and Matthew Gorbsky