Skip to content

ToonVanEyck/CheesyPic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

111 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cheeyspic PhotoBooth

The cheesypic software transforms your rasberry-pi in a full fledged photobooth. The software will work with DSLR cameras and dye-sub photo printers to deliver a high quality photobooth experience.

Features

  • Live view
  • Custom photo strip designs
  • Local storage of captured photos
  • Custom themes
  • Samba file server

Supported Devices

Cameras

The cameras is interfaced using libgphoto2. In theory the software will support any camera that libgphoto2 support.

Supported Cameras

Printers

The printer is interfaced using guttenprint and Solomon Peachy's selphy_print sofware.

Supported dye-sub printers

Required packages

install with sudo apt install

  • cmake
  • cups
  • libgphoto2-dev
  • libturbojpeg0-dev
  • libxml2-dev
  • libjson-c-dev
  • libglib2.0-dev
  • libcairo2-dev
  • libgdk-pixbuf2.0-dev
  • librsvg2-dev
  • libb64-dev
  • libgtk-3-dev
  • libusb-1.0-0-dev
  • xorg-dev
  • mesa-utils
  • libcups2-dev
  • doxygen
  • graphviz

Installation

Cheesypic

cd cheesypic mkdir build cd build cmake .. make sudo make install

Guttenprint / Selphy-print

# Gain root sudo su - # Remove existing gutenprint packages apt remove gutenprint* # Install necessary development libraries apt install libusb-1.0-0-dev libcups2-dev # Download latest gutenprint snapshot from sourceforge curl -o gutenprint-5.3.4-2021-08-18T01-00-2a241dff.tar.xz "https://master.dl.sourceforge.net/project/gimp-print/snapshots/gutenprint-5.3.4-2021-08-18T01-00-2a241dff.tar.xz?viasf=1" # Decompress & Extract tar -xJf gutenprint-5.3.4-2021-08-18T01-00-2a241dff.tar.xz # Compile gutenprint cd gutenprint-5.3.4-2021-08-18T01-00-2a241dff ./configure --without-doc make -j4 make install cd .. # Get the latest selphy_print code git clone https://git.shaftnet.org/gitea/slp/selphy_print.git # Compile selphy_print cd selphy_print make -j4 make install # Set up library include path echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf ldconfig # Refresh PPDs cups-genppdupdate # Restart CUPS service cups restart # FiN exit

Note: Some printers may require additional image processing library.

GPIO trigger

The photobooth uses the 'c' key as a trigger to start the photobooth. A device-tree overlay can be added to configure gpio_1 as a keypad 'c' button.

Compile and install the photobooth_button.dts on the pi using:

sudo dtc -I dts -O dtb -o /boot/overlays/photobooth_button.dtbo misc/photobooth_button.dts

Connect a normaly open button between GPIO_1 and ground.

disable gvfs-gphoto:

gvfs-gphoto automatically mounts cameras as a storage device on boot, this prevents cheesypic from using them. To disable gvfs run:

sudo systemctl mask gvfs-daemon systemctl --user mask gvfs-daemon

Finally add the following line to /boot/config.txt:

dtoverlay=photobooth_button

Printer Setup

add the user to the lp group

sudo adduser $USER lp

Add your printer to cups using the cups webpage or lpadmin command.

Set the default printer:

lpoptions -d printer-name

Verify the default printer:

lpstat -d

Auto start

The configuration described in this topic allow you to automatically start the cheesypic software on boot without a desktop environement.

Openbox Configuration

edit /etc/xdg/openbox/autostart:

# Disable any form of screen saver / screen blanking / power management xset s off xset s noblank xset -dpms # Allow quitting the X server with CTRL-ATL-Backspace setxkbmap -option terminate:ctrl_alt_bksp # Start Photobooth cheesypic

Start X on boot

edit .bash_profile:

[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && startx -- -nocursor

Hide the boot terminal

edit /boot/cmdline.txt and add:

consoleblank=1 vt.global_cursor_default=0

Hide the boot rainbow splash

edit /boot/config.txt and add:

disable_splash=1

Reducing boot time

edit /boot/config.txt and add:

dtoverlay=pi3-disable-bt boot_delay=0

Usage / Dev commands

commands Discription
'c' start capture
'a' toggle active / inactive logic
'+'/'-' cycle states
'l' toggle mirror liveview
'm' toggle mirror reveal
'f' toggle fast mode
'w' toggle windowed / fulscreen mode
's' exit but wait 15s before stopping
./ch

About

Photobooth

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors