Introduction: DIY Arduino Based PHOTO BOOTH

About: This channel is used by my brother and me. We like building and learning new things and want to share it with you! I am the creative part, developing new ideas and doing the research as well as gardening and m…

We have built this first version of our Photobooth for the wedding of friends, cause we noticed that it would cost almost the same to rent a even simpler one.

We have tried to make it as cheap as possible for us, so we used our existing DSLR and Tablet. If you want to build one on your own, you can still use your own DSRL but you should check whether it is compatible with Shuttersnitch and with the Wi-Fi SD Card.

As we built this version a few years ago, we don`t have pictures of every step but we will try to describe every step as clear as possible.

If any questions might occur, please don`t hesitate to ask in the comments below.

If you want to see more from us, please subscribe to our channel and favorite the instructable. Thank you a lot.Materials:

Step 1: Materials

Here is a list of the most important things you need:

DSLR: We used a Canon 600D but you can use other from shuttersnitch supported DSLRs. Click here to buy a cheap one immediately from ebay: http://goo.gl/ZIEW2V

Tablet http://goo.gl/XkX6MZ

The App Shuttersnitch

External Flash http://goo.gl/sw732T

Wi-Fi SD card – We use one from transcend because it works fine and is even cheaper than a Eye – Fi – card http://goo.gl/fSa2nA

Red Button http://goo.gl/sVWv5y

A box

Tripod

Eight segment display http://goo.gl/yOcP0Y

Arduino Uno (buy a cheap one from china, it works the same) http://goo.gl/k4Y3RY

Cables

Camera power supply http://goo.gl/XSuzrt

acrylic glass

Mounting brackets

Screws

Wireless flash trigger http://goo.gl/UX5uyC

Small lcd display

Step 2: The BOX

We bought some wooden boards (go to your local store and ask them whether it is possible to cut them already in the right size) and screwed them together with the help of mounting brackets. Be sure not to use to large screws! Mount the hinges on the backside as well as a door latches. Now you have to cut holes in the front side of your box. One small centred circular hole for your lens, the bigger one for your tablet, one for your eight segment display, one for your small lcd display and one for the red button. Screw the acrylic glass in front of the tablet hole to protect the screen.

Step 3: The Tripod

A friend has helped us to weld some pieces of metal together to get this simple tripod. We drilled some holes to the bottom of the box as well as some holes on the tripod to fix it with screws. The tripod is really heavy, so you don`t have to be afraid that the box might topple. You shuld also cut a third hole in the bottom for the power cable.

Step 4: Installing the Camera and Tablet

We have used pieces of plastic to hold the tablet in place. To mount the camera, we drilled holes in a metal angle (to be able to add and remove our camera with a screw) and screwed this angle to the inside of our box (make sure that it fits to the hole for the lens). To screw your DSLR to the angle you need a special sized screw, buying it online is the easiest way because you don`t get it everywhere.

Step 5: Eight Segment Display, Lcd Display and Arduino

Follow the description to connect it to the Arduino.

Step 6: Programming

/*

Autor: Raphael Dötsch

Datum 10-16-2015

Titel: Photobooth

Beschreibung:

Nach betätigung des START Tasters beginnt die 7 Segment Anzeige

mit dem Countdown.

Von 9 auf 0 zählen.

Während dessen wir die Kamera dazu gebracht zu fokusieren und bei

0 den Auslöser zu betätigen.

Dieses wird über 2 Relais realisiert.

Das ganze wird über ein LCD Display mit einem HD44780 gesteuert.

*/

#include

//Variablen fuer Pins vergeben:

const int START = 4; // START -> PIN 4

const int A = 3; //Pin 3 -> A (CD4511BE)

const int B = 0; //Pin 0 -> B (CD4511BE)

const int C = 1; //Pin 1 -> C (CD4511BE)

const int D = 2; //Pin 2 -> D (CD4511BE)

const int AF = 5; //PIN 5 -> Transistor -> Relais -> Autofokus

const int AL = 6; //PIN 6 -> Transistor -> Relais -> Auslöser

const int RS = 7; // PIN 7 -> LCD RS

const int E = 8; // PIN 8 -> LCD E

const int DB4 = 9; // PIN 9 -> LCD DB4

const int DB5 = 10; // PIN 10 -> LCD DB5

const int DB6 = 11; // PIN 11 -> LCD DB6

const int DB7 = 12; // PIN 12 -> LCD DB7

const int t = 800;

int text_state = 0;

int outputAddress[12] = {A, B, C, D, AF, AL, RS, E, DB4, DB5, DB6, DB7};

boolean outputStatus[12];

int blank[4] = {A, B, C, D};

String LCDtext[4] = {"Bitte ", "Start", "druecken", "laecheln"};

// festlegen der Pin's mit dem das LCD Display angesprochen werden soll

LiquidCrystal lcd(RS, E, DB4, DB5, DB6, DB7);

void setup() {

//LCD initialisieren

lcd.begin(16, 2);

lcd.clear();

lcd.home();

//Pins als Eingang bestimmen:

pinMode(START, INPUT);

//Pins als Ausgang bestimmen:

for (int var = 0; var < 12; var++) {

pinMode(outputAddress[var], OUTPUT);

}

}

void loop() {

if (text_state == 0) {

Start_text();

Clear7Seg();

}

Prog();

}

void Start_text()

{

// Print a message to the LCD. (Bitte Start drücken)

lcd.clear();

lcd.home();

lcd.print(LCDtext[0]);

lcd.print(LCDtext[1]);

lcd.setCursor(0, 1);

lcd.print(LCDtext[2]);

text_state = 1;

}

void Clear7Seg()

{

//CD4511BE blank 1111 = ABCD

for (int i = 0; i < 4; i++) {

digitalWrite(blank[i], HIGH);

}

}

void lachen() {

lcd.clear();

lcd.home();

lcd.print(LCDtext[0]);

lcd.print(LCDtext[3]);

}

void Prog()

{

if (digitalRead(START) == HIGH)

{ //Countdown für Auslöser starten und im sekundentakt von 9 auf 0 zählen lassen

text_state = 0;

lachen();

//ZEIGE ZAHL 9

digitalWrite(A, HIGH);

digitalWrite(B, LOW);

digitalWrite(C, LOW);

digitalWrite(D, HIGH);

delay(t);

//ZEIGE ZAHL 8

digitalWrite(A, LOW);

delay(t);

//ZEIGE ZAHL 7

digitalWrite(A, HIGH);

digitalWrite(B, HIGH);

digitalWrite(C, HIGH);

digitalWrite(D, LOW);

delay(t);

//Starte Autofokus

digitalWrite(AF, HIGH);

//ZEIGE ZAHL 6

digitalWrite(A, LOW);

delay(t);

//ZEIGE ZAHL 5

digitalWrite(A, HIGH);

digitalWrite(B, LOW);

delay(t);

//ZEIGE ZAHL 4

digitalWrite(A, LOW);

delay(t);

//ZEIGE ZAHL 3

digitalWrite(A, HIGH);

digitalWrite(B, HIGH);

digitalWrite(C, LOW);

delay(t);

//ZEIGE ZAHL 2

digitalWrite(A, LOW);

delay(t);

//ZEIGE ZAHL 1

digitalWrite(A, HIGH);

digitalWrite(B, LOW);

delay(t);

//ZEIGE ZAHL 0

digitalWrite(A, LOW);

//Warte bis Kamera fokusiert hat und löst aus

digitalWrite(AL, HIGH);

delay(400);

//Beide Ausgänge wieder öffnen

digitalWrite(AF, LOW);

digitalWrite(AL, LOW);

Clear7Seg();

}

}

Step 7: Putting Everything Together

Configure the Wi-Fi SD card and put it into your camera.

Download the Shuttersnitch to your tablet and install it. As soon as you have connected your tablet to the SD card, the pictures you take should be sended to your tablet. Take a picture and check if everything works fine.

Now you can either remove the battery pack of your camera and insert the power supply or just leave out this step. Depends on how you want to run it.

Screw the camera to the box and place the tablet in the right position.

Step 8: The Right Camera Configuration and the Flash

Set your camera to M – Mode, 7.1, 1/100s and the ISO depends on whether you use a flash light or not and how bright the available light is.

Screw the metal rod for the flash on top of the box. Mount the flash and connect it to the camera with the flash remote trigger, as well as to the power supply

Step 9: Have Fun

Enjoy the party and take some crazy pictures.

If you like our instructables, please subscribe and favorite=)

Thank you for reading.

- Team Z -