I was thinking about having my Camera be able to 'auto' download images, and among other things when my Camera is connected to the Computer. I also wanted to be able to run different Scripts through a program on my Computer, is this possible?

Is there a way for me to write a program to execute Scripts on my Camera (Running CHDK of course)?


I found http://chdk.wikia.com/wiki/Lua/PTP_Scripting#read_usb_msg The commands for reading writing the usb_msg but don't know how to use it. Will post on the forums soon and post more here later.

  • Do you really mean you want to download to your camera or more an auto upload to your pc?
    – Sven
    Aug 31 '12 at 6:02
  • Well no I want to be able to control the camera from my computer. I do want a 'downloader' but that's more of a secondary task. Aug 31 '12 at 12:52
  • 1
    I know it is possible with Canon DSLR cameras. I've seen professional photographers for school formals keep their cameras hooked up to their PC's and shoot from them, then the images are instantly downloaded and saved to the HDD's. Not sure about with CHDK though. Good luck!
    – NULLZ
    Feb 4 '13 at 6:33
  • 1
    I dunno about running 'scripts' on your camera, but if you're wanting to shoot tethered then ... then your camera, if it doesn't support it already (like DSLRs do), may still implement either WIA (window's image acquisition) or Twain (for like, scanners). You may be able to invoke the camera, from a software, to take a photo and copy it to the computer. As an example, photoshop (and others) let you use Twain to capture an image from a scanner. Likewise, I think it also does WIA. That said, neither WIA nor Twain will be as quick and easy as EOS Utilities for DSLR - unless you're nerdy enough to
    – Peter pete
    Mar 5 '13 at 11:37
  • @Nate, did you have any luck with this?
    – MikeW
    Apr 1 '13 at 7:31

Canon publishes an SDK for interfacing with their EOS cameras called EDSDK. In order to use it, you must live in the US, register through their website and fill out an application. If they accept your application (which they usually do), you will be given a link to download the SDK for free.

Canon also accepts applications from non-US residents through other sites. See here for more details.

Note that Nikon also publishes an SDK, with a similar application process.

Further questions about the SDK should be posted on StackOverflow; it is a much better site for programming questions.

  • Thanks for the response! Glad someone had some knowledge on the question. Only reason I didn't ask on SO was bc I thought it pertained more in how to get CHDK network support not building scripts eh, glad you could help though! May 21 '13 at 19:29

Since you are talking about CHDK, I'll assume you are using a Canon camera.

The software disc that shipped with your camera includes a program call EOS Utility that enables your camera and computer to communicate. Part of the functionality included in EOS Utility is the ability to shoot tethered. This allows you to adjust many settings in the camera using the PC including such things as Tv, Av, ISO, metering mode, drive mode, mirror lock up, etc. Hovering the mouse pointer over the shutter button has the same effect as a half-press on the camera's actual shutter button. Left clicking on the button on your screen has the same effect as a full press of the shutter button.

Depending on the selected settings, the image can be saved on the camera's memory card, downloaded and saved to the connected PC's hard drive, or both. You can also configure where the file is saved and automatically rename the file based on several factors ranging from the date and time to a user selected string or a combination of several of these factors.

Updates to EOS Utility are available from Canon's online service and support page at http://www.usa.canon.com/cusa/support/consumer In order to install the updates you need to have a previous version installed or the disc that came with your camera inserted in your optical drive.

  • Ah, did not know that. Does the EOS Utility have an API for third party applications? Thats ideally where all this was going with running scripts off the camera. +1 Apr 19 '13 at 11:57

There are already a lot of scripts available available for CHDK (Take a look here for a selection). Sure you can write a new script, but I'd start with a related one, using it as a framework.

You can get better answers about writing a program to run scripts, if you post clear and precise questions at Stackoverflow.


  • 1
    I know how to write a script. I'm asking if theirs a way in which you write a script to have network capabilities. Posting a question on stackoverflow for something about cameras was not my first guess. Sep 18 '12 at 21:05
  • But this isn't really a question about photography so much as it is a question about writing a script to handle the data that resulted from photography.
    – Michael C
    Apr 19 '13 at 11:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.