Loading
Smart Shutter

Smart Shutter

by devonb | updated August 23, 2014

An Android controlled camera focus / shutter release for a Canon DSLR

Clothing_icon
Electronics_icon

0

Let's do this! After receiving the package, the first thing I did was take some photos and get the board connected to my computer to try and upload a blink sketch to make sure everything was working, which it was!

 

 

 

August 9, 2014 at 11:03 AM
Comments (0)

The goal of this project of for me to have an app for my android phone that will allow me to send a bluetooth signal to the Coin BLE Arduino and prompt it to close the shutter. The actual shutter part shouldn't be too hard, I'm sure hundereds of people have attempted something similar before, but if worst comes to worst, I can just try and reverse engineer one of these devices: http://www.amazon.com/Shutter-Release-40D-Digital-Cameras/dp/B001G9TYHE.

The hardest part will no doubt be creating the android app. In the past, I've seen people use processing for android to accomplish similar things. After a little searching I found this guide which I will attempt to complete later.

August 9, 2014 at 11:10 AM
Comments (1)
Be careful. It looks like the tutorial you included a link to is for normal bluetooth, not bluetooth 4.0 or BLE.
over 2 years ago

Got basic functionality working! This shows that it is possible to activate the shutter and focus of the Canon Rebel T3i with an arduino. 

August 11, 2014 at 11:51 PM
Comments (5)
Could you explain a little bit of what is working here? It's a bit unclear.
over 2 years ago
would love to see a video of this, or at least a little more description of what the functionality you're testing is.
over 2 years ago
is the second image an image of the photo that was taken by your camera (after being triggered by the arduino)?
over 2 years ago
No, I keep trying to add a video from my phone but it doesn't seem to be working.
over 2 years ago
do you get an error message about the video when you try to upload it?

in the meantime, do you mind uploading the video directly through the website?
over 2 years ago

This is the working code so far. Basically, it can receive strings and interpret them. I will be adding much more functionality tonight.

 

Design Files
August 12, 2014 at 8:25 PM
Comments (2)
Thanks for sharing your code. You can also upload the file under "design files" when you edit your step.
over 2 years ago
ahh, my bad, fixing it now
over 2 years ago

Other than that, all I need is an enclosure!

I plan on having the project be a discrete box that I will be able to strap to my tripod / other things as needed. I have a panel mount switch that I will use to turn the device on and off but other than that, the only way that the user interacts with the device is through the phone. The panel mount 3.5mm headphone jack will be used to send the signal out of the enclosure and to the camera. I will use heat shrink tubing and a few spare audio cables to make a custom cable to interface the smart shutter and my camera (basically just an inline adaptor).

August 14, 2014 at 12:59 PM
Comments (1)
Looking Great so far! Can't wait to see how you plan to get/make the box!
over 2 years ago

So I got my parts in and have spent the last two days wrestling with bluetooth low energy. The fundamental problem I've been having is that I don't have the gear to start developing things for bluetooth low energy. I ended up wasting a whole day just trying to get a simple serial pipe going and decided it would be better to dust off an old bluetooth serial module I had laying around and develop using that and software serial so that I won't waste time. If I figure it all out, it will be a very simple transition to BLE because I'm using software serial in my Arduino code. 

I actually had a bit of trouble getting my other bluetooth module working again as well, and wrote a little guide for my future self here.

I've attached my latest Arduino code, this version is probably the final version.

Design Files
August 17, 2014 at 11:52 AM
Comments (1)
congrats on getting your prototype working! did you end up making your own shutter release cable? also, what type of serial data are you sending via your bluetooth mobile app?
over 2 years ago

Okay! I spent the last two days installing Processing, and Processing for Android. I have begun writing the app to control the shutter system. I really have no idea what I'm doing with this language / libraries but I think I've landed on a setup that I will use. I will use apwidgets for most of the user interface, and Ketai to handle bluetooth communication.

Attached are images and code that show the super beginnings of my Android app. It will be very very simple, consisting of a connection configuration page, and a page for interaction with the camera. 

Design Files
August 20, 2014 at 11:14 AM
Comments (0)

It works! I can send "test" over and over again. It should be very simple to go from this sample "test" to the actual structure for flipping the shutter. In my next step I'll link out the files for the app.

August 21, 2014 at 3:27 PM
Comments (2)
awesome!! congrats on getting this working.

quick question about the Processing for Android – once you upload your sketch via processing to your device, does it appear as an actual app on your device? You don't need to keep your phone plugged in via USB right?
over 2 years ago
It downloads it as an app, no need to keep the usb plugged in!
over 2 years ago

https://www.youtube.com/watch?v=gAam30ZV_Dg

[Watch the video...] It all works! This proves that this project is possible in it's entirety, custom app and all. From here, I need to do a few things. 

  1. Finish the Android App. (Add textboxes adjust variables for taking photos outlined before)
  2. Make PCB.
  3. Finish other hardware elements.
  4. Install all enclosure.

Attached the code for the app written in Processing, and the Arduino code running on the Arduino. 

Design Files
August 21, 2014 at 3:52 PM
Comments (2)
It looks great!
Do you think you'll show your process with those few steps you listed?
over 2 years ago
yes! on finishing the whole thing up now
over 2 years ago

So in a pretty small scale project like this (I'm only making one, the design is very simple) I'm not even going to take the time to draw out the schematic in Eagle. I'm by no means an expert solderer but I can hold my own, and I had some scrap perf-board laying around so I quickly whipped up a PCB for this project.

Also by virtue of being broke, I always try and keep my designs modular so I can re-use parts and whatnot. The only things that I 'lose' with this design are the transistors and some passives.

August 22, 2014 at 7:35 PM
Comments (0)

So for a box, I decided to go with a sandwich box from walmart. It fit fine on the tripod, was light enough for the straps to take hold of it, and had thin enough walls for me to be able to mount the panel mount components on.

The assembly was very simple. I melted two holes in a wall of the enclosure with my soldering iron (I know it's a horrible practice but I don't have a drill) to fit the output connector and the power switch.

From there, I mounted the PCB and battery with velcro and installed the components. 

August 22, 2014 at 7:44 PM
Comments (2)
haha, wow, I'm guessing it smelled pretty bad to burn the plastic with a soldering iron! hopefully it wasn't too hard to clean...
over 2 years ago
It wasn't too bad, the plastic was really thin and my iron was really hot :)
over 2 years ago

It is very very simple. All I did was take an old 2.5mm headphone cable and an old 3.5mm cable and soldered them together. I made the fitting more permanent with some heat shrink tubing. 

August 22, 2014 at 7:46 PM
Comments (0)

It's actually pretty simple to mount the whole thing on my tripod using the straps I ordered. All I did was strap

August 23, 2014 at 6:16 PM
Comments (0)

Not much to explain, only the final code versions of the app and the arduino program.

Fundamentally, the arduino parses and interprets strings sent via the android app via bluetooth. 

August 23, 2014 at 6:43 PM
Comments (3)
Very nice! Can you explain what the different modes are? Also, by exposure, is it bracketed?
over 2 years ago
It has two modes, take photo and focus and then take photo. What do you mean by exposure?
over 2 years ago
ah I see. at first, when I saw exposure, I thought it would adjust the bracketing (http://en.wikipedia.org/wiki/Bracketing), but then I realized that it's how many shots are taken, which makes sense!
over 2 years ago

Project is done! Video pretty much explains everything, ask questions if you have them!

Code versions are in the software section.

Thank you MIT! 

August 23, 2014 at 6:47 PM
Comments (3)
This video is super helpful to see it working. Thanks for sharing, and congratulations on finishing the project!
over 2 years ago
Thanks! It was really fun doing this project!
over 2 years ago
Wow! Looks great! can't see what you'll make next!!
over 2 years ago