Zoom Bracketing[]

Written for/on: Canon A640
Also works on: Canon A590 tested , Other Canon AXXX

Zoom Bracketing by Johan Van Barel (

The purpose is to create a set of images taken at different zoom positions.

The script takes a number of images starting from the current zoom position. So if you take 3 pictures, with Zoom Step Size 1, the script will take the first picture at the current zoom position, the second at zoom position +1, and the third at zoom position +3 relative to the start zoom position. A positive Zoom Step Size will zoom in, a negative Zoom Step Size will zoom out. Afterwards the initial zoom position will be restored.

Documentation/Help (save as a small ZoomBracket.txt" file to your /CHDK/SCRIPTS/ folder)

Select any mode on your Canon A640 that allows zooming.


  • Number of Pics (Default=2)
  • Zoom Step Size(+/-) (Default=1)
  • Initial Delay (Sec) (Default=1)

Script Code (save as "ZoomBracket.bas" to your /CHDK/SCRIPTS/ folder)

rem Johan Van Barel 07-07-2007
rem Zoom-Bracketing for Canon A640

@title Zoom Bracket
@param a Number of Pics
@default a 2
@param b Zoom Step Size(+/-)
@default b 1
@param c Initial Delay (Sec)
@default c 1

if a<2 then let a=2
if b=0 then let b=1
if c<0 then let c=0

print "Pics:"; a, "Step:"; b

get_zoom z

sleep c*1000

print "Pic 1 of", a

for s=2 to a
    set_zoom_rel b
    sleep 500
    print "Pic", s, "of", a
next s

sleep 500
set_zoom z