Example Code

Canon Camera Remote Control Hack

Products and Environment

This section reflects the products and operating system used to create the example.

To download NI software, including the products shown below, visit ni.com/downloads.

    Hardware

  • Data Acquisition (DAQ)

    Software

  • LabVIEW

    Driver

  • NI DAQmx

Code and Documents

Attachment

Overview

This example shows how to control the camera remotely via the computer and use the camera to take Timelapse videos and long exposure photos.

 

Description

I recently acquired a Canon 600D digital SLR camera. It's a great machine and with LabVIEW and a low-cost DAQ device, I was able to extend it's capabilities yet further! I've created a hack and an app that allows you to control the camera remotely via the computer and use the camera to take Timelapse videos and long exposure photos. Here's a step by step guide to the process, and the code. I've only tested this with my Canon 600D but I reckon it will work with any Canon camera that has the remote input, and with a bit of tinkering, probably other brands too. 

Hopefully this saves you the £12 a remote would otherwise cost you (a lot for just a button), and if you don't need the fancy software features, I found the same hack here but just for a push button remote, rather than connecting it up to the computer! With the remote, you can take long exposure photos longer than the 30 second limit of the camera, which is really cool for taking shots of the night sky. Make sure you use a tripod!

You can also use the app for timelapses, you just input the duration of the event you're recording, the amount of time you would like your timelapse video to last, and the framerate you want and the app will do the rest. Once you've done this you'll have an SD card full of JPEG files that you need to weave together into one video file, which can be done using Blender, which is totally free. Take a look at this tutorial to find out how.

Requirements

Software

  • LabVIEW 2012 or compatible
  • NI-DAQmx 9.5.5 or compatible

Hardware

  • NI USB-6009
  • Canon 600D

 

Steps to Implement or Execute Code

  1. The first step is to find a 2.5mm headphone jack. This will fit inside the remote input of the camera. You may well have one lying around as several phone manufacturers use them for the input to the mobile phone hands-free kit.

  2. Cut the wire. If there's a mic on it, cut the wire before the mic, then strip all of the wires down. You can be as neat as you like with this, but remember, adult supervision is strongly recommended.

  3. Next, you need to reverse engineer this connection to find out which wires do what! I found that the one I disected had 4 wires as follows:

     Naked: Unused.

    White: Ground.

    Green: Auto Focus (like half pressing the button on the camera).

    Red: Shoot (like a full press on the camera button).

     The two live wires were both active low. IMG_0773 (1024x683).jpg

  4. Wire these into two digital lines on your DAQ device, from the image, you can see how I wired mine into my 6009.

  5. Downlad the attached code. It's all the source code, so you can edit as you wish. You may need to change some of the logic to make this work with your camera and headphone jack.

  6. Run Main.vi and away you go, the rest should be fairly self explanatory.

 

Additional Information or References

 

 **This document has been updated to meet the current required format for the NI Code Exchange.**

 

 

 

Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.