Written for/on: Canon A640
Also works on: A620 (tested), Other Canon AXXX (Not tested)

Lightning by Johan Van Barel (

The Canon A640 does not allow to leave the shutter open for longer then 15 seconds. To allow taking pictures of lightning during a longer period then 15 seconds, this script uses the continuous burst drive mode. The burst drive mode will be active for the interval specified. The shutterspeed has to be selected manually first. Best results can be expected at a shutter speed of 1. So if you select an interval of 1 minute, the script will take as much images as possible with the selected shutter speed. For long intervals you should disable the Power Saving options of your camera. This can be done in the <ALT> menu. In the Miscellaneous Stuff menu item set the Disable LCD Off value to Script, so the display won't turn off while in <ALT> mode or while a script is running.

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

Select M or Tv mode on your Canon A640 and select your shutter speed (f.i. 1).

Make sure that flash is off.

Select Continuous Burst Drive Mode in the options menu.


  • Duration (Min)(Default=1)
  • Duration (Sec)(Default=0)
  • Initial Delay (Sec) (Default=1)

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

rem Johan Van Barel 07-07-2007
rem Lightning for Canon A640

@title Lightning (Set Tv + BurstDrive)
@param a Duration (Min) 
@default a 1
@param b Duration (Sec)
@default b 0
@param c Initial Delay (Sec)
@default c 1

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

if t<1000 then let t=1000

print "Total Time:", t/60000; "Min", t%60000/1000; "Sec"

sleep c*1000

rem set_tv 0
press "shoot_half"
sleep 1000
press "shoot_full"
print "Burst",a;"Min",b;"Sec"
sleep t
release "shoot_full"
release "shoot_half"