WICKS - a Windows Installer for CHDK and SDM - TEST VERSION

WICKS is a Java application designed to install CHDK or SDM on a Windows machine. It's very similar in features and UI to my SDMInst (Mac OS) and LICKS (Ubuntu Linux) apps. So far it has only been tested on Windows XP - please see the Notes below for some caveats. It requires version 1.4 or later of the Java Runtime.

Note for Windows 7 and Windows 8 Users: under the covers WICKS issues commands and makes API calls that require administrator privileges under Windows 7 and 8. If you run WICKS when logged on as a general user, without admin permission, WICKS will diagnose the problem and display the message:

  WICKS needs Administrator permission - start it by double-clicking WIX.CMD

If you see this message, terminate WICKS and double-click the WIX.CMD file. This will display a dialog allowing you to temporarily 'elevate' yourself to Admin level by selecting a user account with these privileges. WICKS will then run without problems.

You may find my ACID app useful in identifying and downloading a suitable build.

The image below shows the WICKS main window. Click on a field or button to get help about it.


First download the zipfile by clicking here. Unzip the file and you'll get a folder containing:

to run WICKS just double-click the bat file.


Preparing a card for CHDK or SDM involves the following steps:

  1. ensuring the card's primary or sole partition is FAT16 (but see note 1 below)
  2. making the card 'bootable' so CHDK/SDM starts up automatically when the camera is switched on (when the card is locked)
  3. copying the appropriate DISKBOOT.BIN to the root of the card
  4. copy supporting the CHDK/SDM files (e.g. scripts and fonts) to the card

WICKS will do all of these for you. It tries to determine if the first two steps are necessary, and will tell you if they are not.


This is a test version. I've tried to make sure that it works and when it doesn't (e.g. because a card is faulty) it tells you why. There are a few things worth pointing out:

  1. cards larger than 4Gb require two partitions (except for post 2011 cameras) - a small FAT16 partition containing DISKBOOT.BIN and a large FAT32 partition containing CHDK/SDM scripts and the photos you take. Unfortunately Windows will only allow you (and Wicks) to see one of these partitions at a time. That makes it necessary to switch partitions in order to do things like format or copy files to both of them. WICKS does this switching, but you have to remove and replace the card (so it gets rescanned) each time this happens. Licks will wait until you've done this, but it is annoying.
    DryOS cameras introduced since January 2011 such as the A3300, SX150, SX220, SX230, IXUS220 and IXUS310 can boot from a FAT32 partition, and hence do not require two partitions (this is why WICKS offers the option of making the card FAT32-bootable). For an up-to-date list of such cameras see the bottom of the list on this page.
  2. currently WICKS can convert a dual-partition card back into one partition and convert a one-partition card into two, but it will not let you reformat two partitions on a card that already has two (though I'm not sure why you'd want to).
  3. WICKS detects if a card is already formatted correctly and will merely delete all the files if you ask it to reformat.
  4. WICKS detects if a card is already 'bootable' and ignores a request to make it bootable again.
  5. currently WICKS can't determine the name of the second partition until a switch has been done

Version History

Additional Features

WICKS has some extra features that can be enabled by changing its properties file, "wicks.properties", (which you will find in the same folder as the app once you've run it). These features are:

Comments, suggestions and bug reports welcome. Dave@zenoshrdlu.com.

All my apps are freeware, but if you've found them useful and would like to thank the author, you can make a donation (for example £1, €1 or $1) to show your appreciation for the many hours spent working on them!

For other SDM and CHDK-related stuff of mine, see here and here.

Thanks to the author of SDMInst.exe, without which the dll containing the native methods could not have been written.