Special CHDK Build with Mode Dial Support
The CHDK project is about firmware that dramatically enhances the power of many Canon cameras. For further information see the CHDK Wiki and the CHDK Forum. CHDK provides a scripting capability (using a Basic-like language) for Canon cameras that is very useful for Kite Aerial Photography, particularly AutoKAP, where there's no remote control of the camera once it's up in the air. A CHDK script lets you take shots every few seconds, varying the exposure time, aperture or zoom for each shot.
You can find sample scripts for James Gentles CHDK2 here.
Currently the standard CHDK builds do not support script access to the Mode Dial, so it's not possible for a script to switch from taking photos to taking a video for example. However, one CHDK expert, Jeff666, wrote some experimental code that added this capability, and I've undertaken to add it to current builds, for some cameras at least. The currently supported cameras are the Ixus70/SD1000 (see note below), A560, A570, A720 and G9.
The support adds a new set of 'buttons' that scripts can press:
dm_auto | turns the dial to Auto mode |
dm_movie | turns the dial to movie mode |
dm_m | turns the dial to manual mode |
dm_p | turns the dial to program mode (A570, A720 and G9) |
dm_av | turns the dial to aperture value mode (A570, A720 and G9) |
dm_tv | turns the dial to time or shutter speed mode (A570, A720 and G9) |
Note: on the Ixus70/SD1000 it is not possible to switch between Auto and Manual modes, only between whatever still mode the camera is in and Movie mode.
To change the mode, a script needs to press the appropriate button. It's very important that before the script ends, or turns the dial to another mode that the button is released, as in these two examples.
Shoot a picture in Auto Mode | Shoot a 5-second Movie |
// go into auto mode (and put a message on the LCD to say so) print "Auto" press "dm_auto" sleep 1000 // take a picture shoot sleep 1000 // now go back to previous mode release "dm_auto" |
// go into movie mode (and put a message on the LCD to say so) print "Movie" press "dm_movie" sleep 1000 press "shoot_full" sleep 300 release "shoot_full" rem start of video delay loop sleep 5000 rem shoot again to turn video off press "shoot_full" sleep 300 release "shoot_full" sleep 1000 release "dm_movie" |
The following zip files contain firmware files with Mode Dial support based on build 701:
- For the Ixus70/SD1000 firmware version 1.00c
- For the Ixus70/SD1000 firmware version 1.01b or 1.01a
- For the Ixus70/SD1000 firmware version 1.02a
- For the A560 firmware version 1.00a
- For the A570is firmware version 1.00e
- For the A570is firmware version 1.01a
- For the A720 firmware version 1.00c
- For the G9 firmware version 1.00d
- For the G9 firmware version 1.00g or 1.00f
For those interested in the source - here is a zip file of the three source files I changed for these cameras.
See here for more CHDK-related pages.
Last update - February 2009 - for Build 701