NOTE: Since the "Geek the Library" campaign has ended, I have change the Geekbooth to be the "Selfie Machine!".
The only thing that has changed is a bit of the wording and the text that gets processed on the final photoo.
Check out the new selfmachine.py python file that has the updates. Enjoy!
=========
A python program that uses a Raspberry Pi to create a photobooth to replicate the photos used in the http://geekthelibrary.org/ campaign.
See the wiki for a photo. It's still a work in progress.
Programmed and built by:
Adam Melancon - Systems Administrator, Lafayette Public Library
Kris Wotipka
*Usage
*Parts
*Font File
*Raspbian Package
*Python Modules
*My Install Log for Raspbian
GeekBooth starts up and plays a video while waiting for interaction.
The GO button flashes is't LED spelling "GO" in morse code
Begin by pressing the big GO button
It first asks if you consent to your photo being used.
It then asks for your full name.
It asks what you geek on the LCD character display.
Give an answer and hit enter.
It tells you press the flashing red button to take your pic.
Camera preview shows up on LCD screen for you to frame up.
It snaps the photo and adds the text below it.
It then saves it to the thumbdrive and shows a final image on the LCD screen.
It then takes "Your full name + What you geek + Final filename" and appends it to a new line in a log file.
It now starts the video loop and waits for the next person to press the GO button to start again.
Raspberry Pi
Raspberry Pi Camera Module
4.3'' Color TFT LCD with composite input
Adafruit RGB Positive LCD http://www.adafruit.com/products/1115
Adafruit Red LED Button http://www.adafruit.com/products/1439
Powered USB Hub
Thumbdrive to store photos
USB Keyboard
American Typewriter True Type Font
usbmount (to auto mount the thumbdrive)
time
subprocess
PIL (Python Image Library)
RPi.GPIO
os
getpass (I'm not using it at the moment)
Adafruit_CharLCDPlate
This is just a log of things I did after I installed Raspbian
Installed Raspbian.
Installed fim to view images on the command line.
sudo apt-get install fim
edited /etc/modules and added the following for the LCD board
i2c-bcm2708
i2c-dev
sudo apt-get install python-smbus
sudo apt-get install i2c-tools
Make sure the 20 is there to identify the board.
sudo i2cdetect -y 1
made sure git was installed
sudo apt-get install git
installed code for the LCD
git clone https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.git
Installed GPIO tools
sudo apt-get install python-dev
sudo apt-get install python-rpi.gpio
Installed pip to be able to install python libraries.
sudo apt-get install python-setuptools
sudo easy_install pip
Installed some python libraries I need
sudo apt-get install python-imaging
copied the python code for the LCD plate to the working directory for my script
cp ~/myprojects/adafruit/Adafruit-Raspberry-Pi-Python-Code/Adafruit_CharLCDPlate/* to ?
Make USB thumbdrive automount when inserted:
apt-get install usbmount