Introduction: FaceBooth - One Button to Facebook Photobooth

I wanted to make a photbooth for a Christmas party. I wanted it to be simple to operate and only be one click easy so that even a guest who was chemically uncoordinated could even operate it.I wanted a solution that would take a photo and post it on facebook. Guests could later tag themselves or others.

There are three parts to this solution:
  1. The Photobooth software
  2. The Button
  3. Software for the button to talk to the software

Step 1: The Photobooth Software

For the photobooth software, I have used DSLRBooth (http://www.dslrbooth.com/) it had everything I wanted.

It can:
  • Print directly to a printer
  • Post to facebook (Pro version only)
  • Generate a QR code for guests to scan and retrieve their photos
  • Email guests a copy of their photos
  • SMS (Twilio account needed)
  • Has a range of templates that you can overlay images etc... These can be customised as well.)
Rather than regurgitate the setup instructions, you can view them at http://www.dslrbooth.com/howto/photo-booth-instructions/

The trial version runs for 7 days and gives you all premium features. If you plan on using this software, download it within 7 days of your event. Or pay for it.

Step 2: The Button

This was the fun bit. I wanted to make the whole experience simple to use. I thought a glowing button would do the trick.

Materials

Tools
  • Soldering iron
  • Wire Strippers/pliers
  • Crimping tool
  • Saw
  • Hot Glue Gun

Step 3: Button - Protoboard Setup

Follow the schematic to solder up you protoboard.

I soldered some pins to the board so I could piggyback my arduino. See image above.

Step 4: Button - Arduino Code

Use the arduino software and upload the below code to your arduino. Essentially it is just the default button script from the examples, however I have added another pin (5) to power the light in the button. Initally I wanted the button to go out when the button was pressed and turn on again after so many seconds to indicate the system was ready. Sadly this did not work as intended. Not sure why but after the command is given to the serial decoder? it must send something back and stop the rest of the script running.

DSLRBooth asks you to click to begin. Below the serial is sending an "s". I'll explain in the next section.

-----------------------------------------------------------------------------------------
const int buttonPin = 3; // the pin that the pushbutton is attached to
const int lightPin = 5; // pin the light in the button is on

void setup() { // initialize the button pin as a input:
pinMode(buttonPin, INPUT);
pinMode(lightPin, OUTPUT); // initialize serial communication:
Serial.begin(9600);
digitalWrite(lightPin, HIGH); }

void loop() {
if (digitalRead(buttonPin) == HIGH) {
Serial.print("s");
delay(5000); //delay 5 seconds so only one command is given
}
}
----------------------------------------------------------------------------------------

Step 5: Download and Install AAC Keys

AAC Keys is a serial reciever. Designed for mobility computing, it responds to commands and keystrokes given over serial connections. This piece of software is needed to decode what the arduino sends into something that the dslrBooth can understand.

I had enormous trouble getting the AAC Keys to accept my mouse click command (as dslr Booth wanted me to do). In fact it almost went in the bin!... until I discovered that pressing 's' on the keyboard also initiated the booth and thus send the 's' keystroke from the arduino.

AAC Keys download can be found at http://www.aacinstitute.org/Resources/ProductsandServices/AACKeys/AACKeys.exe

Step 6: Assembly and Making It Look Good

The box I made was supposed to be 8cm3. However, once I started to assemble it I realised my setup wasn't going to fit. The depth ended up being 9cm deep with an open back. It was made of 10mm MDF, hot glued together.

After I put it together the first time, I thought a plain MDF box just wasn't going to cut it. I made a template and printed it to wrap around the box. I have included that file on this page.

To assemble:

  1. Insert the arduino / protobard into the back of the box.
  2. Place the locking nut of the button over the connector wires
  3. feed wires through the hole (22mm) and connect the button
  4. Screw the locking nut up to secure button.
  5. Attach the USB serial cable to the arduino.

Step 7: Putting It All Together

To put it all together and make it work:
  • Attach your SLR camera to a tripod or similar and connect it to your computer
  • Connect the button assembly to your computer
  • Connect your computer to your monitor or TV (optional)
  • Run AAC Keys and set it to the serial port of your arduino
  • Run dslrBooth (set up your settings - I had it to automatically post to facebook)
  • Click button and your away.
Images above are the final setup and a test shot with an overlay.

I intend on hiding the laptop under the bench so that all guests can see is the camera, button and TV. As an afterthought, I could make a box to house the camera as well so that is party proof too.

Comments

author
scottliedstrand (author)2015-10-20

Ive wired everything up, got all the software and code copied but can't get the arduino to talk to the dslr photobooth. Can you provide some more instructions here? The photobooth program starts its sequence when i press the spacebar, but not 's'.

author
aashby1 (author)scottliedstrand2015-10-20

Hmmm... Did you install the AAC Keys program and set it to the correct serial port? The port can be found in the arduino software. If you successfully uploaded a sketch then look for the port it is using and use the same port for AAC Keys. Let me know how you go.

author
scottliedstrand (author)aashby12015-10-20

Thanks for the reply, yeah so I am not seeing the correct port that the arduino is using in the AAC program. It is not listed, maybe thats my problem. Any ideas?

author
aashby1 (author)scottliedstrand2015-10-20

What operating system are you using? I did this instructable on a Windows 7 machine and since have had problems with it on Windows 8+. Something to do with the USB to serial port drivers. I had the same problem with the arduino. The arduino forums had a solution from memory. Using a generic modem driver... try the arduino forums.

author
TraceyC37 (author)aashby12016-08-28

Hi. Works perfect on Windows 7. Now I am struggling to get it to work on Windows 10...

author
scottliedstrand (author)aashby12015-10-20

Yeah im on a mac. hmm will check around.

author
aashby1 (author)scottliedstrand2015-10-20

You've lost me there... no idea about mac drivers... good luck with it.

author
photoboothsolutions (author)2015-07-31

Check out Social Booth for another photo booth software option. It will let your guests post to Facebook,
Twitter, Email and SMS right from your booth.

author
mattolsend (author)2015-01-19

What resistor are you using?

author
freaky250197 (author)2014-05-12

Sorry for being a bit newbie, but can i use an Arduino Uno for this aswell?

author
aashby1 (author)freaky2501972014-05-12

Most definately... http://www.freetronics.com/products/eleven#.U3DGOYGSxCg
T
he eleven is a clone of the Uno. Everything explained can be done on the Uno. I'd be interested to see your results.

author
freaky250197 (author)aashby12014-05-12

Awesome man thanks, will defently post a little picture of the result!

author
binarybosses (author)2014-02-12

Dude you built that for a party? Haha that is insane, but pretty cool.

author
ChippMarshal (author)2014-01-17

Very neat. This is a little over my head but I really enjoyed reading it.

author
Build_it_Bob (author)2013-12-21

Nicely done , thanks for sharing !
Build_it_Bob

author
aashby1 (author)2013-12-20

Seems like my failed reply went through too... Two answers for the price of one.

author
aashby1 (author)2013-12-20

Thanks achopra3. I have both sitting around and it would be ideal to make the whole system more portable. Hmmm...Battery powered and wifi. Could take it anywhere.

author
aashby1 (author)2013-12-20

Achopra3, good idea. I wanted to use a raspberry pi but time was a factor. Party's tomorrow and I had a few other things to do beforehand - mow lawns, tidy up, make kegorator etc... Go pro was something I had not though about. The wide angle lens would mean subjects (guests) would have to be very close. 1 meter away and that would be a bit in your face, no pun... But more easily replaced than the slr in party mode.

author
aashby1 (author)2013-12-20

Reggie, your right. See image attached. The hardest part is the triple connection between pin 3, the resistor and ground. Have a look at the example button script in Arduino examples. All I have added there is another pin to control the led in the button.

2013 10:10 pm.jpg
author
reggie88980 (author)2013-12-19

Or a bottom view of the pcb

author
reggie88980 (author)2013-12-19

I do not find the schematic clear. Could you have an explanation or image more geared towards beginners

author
TheEvilOverLord (author)2013-12-19

Simply brilliant!

author
Austinthemighty (author)2013-12-19

Cool! You could probably hook it up to a raspberry pi and use a go-pro as the camera.

author
LuciferRex (author)2013-12-17

This is so cool!

author
Goodwin7 (author)2013-12-17

Cool, thanks for sharing!

About This Instructable

53,780views

424favorites

License:

More by aashby1:FaceBooth - One button to facebook photobooth
Add instructable to: