Install CHDK on Your Canon Camera Using Linux

Got a Canon compact camera? Then you ought to give CHDK a try. This alternative firmware turns your humble Canon point-and-shoot camera into a powerful photographic tool.

Installing CHDK onto an SD card using a Linux machine is a three-step procedure. First, if you plan to install CHDK on a card larger than 4GB, you must create two partitions on it: a small FAT16 partition for booting CHDK and a FAT32 partition that takes up the rest of the available space for storing photos. The best tool to do this is the GParted utility which is available in the software repositories of pretty much all mainstream Linux distributions. On Ubuntu and its derivatives as well as Debian-based distros, you can install GParted by running the apt-get install gparted command as root. Launch then GParted and create the two required partitions. To make it easier to identify the partitions, you might want to assign labels to them (e.g., CHDK for the FAT16 partition and CANON for the FAT32 partition).

Next step is to make the partitioned card bootable. To do this, open the terminal and run the following command as root:

echo -n BOOTDISK | sudo dd bs=1 count=8 seek=64 of=/dev/sdbx

Replace the sdbx part with the actual name of the small FAT16 partition. To find out the exact name of the partition, run the mount command which returns a list of all mounted partitions.

Next, you need to find out the firmware version of your camera. Create two empty text files called ver.req and vers.reg and save them in the root of the FAT16 partition. Insert the card into your camera, and put the camera into the Playback mode. Press and hold the FUNC SET button, then press DISP to display the firmware version. Download the CHDK package for your camera model and firmware version, and unpack the contents of the downloaded archive into the root of the FAT16 partition. Lock the card (this is important!), insert it into your camera, press the Power On button, and you should see the CHDK splash screen.

Tech writer covering Linux and open source software

Tagged with: ,
Posted in Open Source, Photography, Software
4 comments on “Install CHDK on Your Canon Camera Using Linux
  1. Andrew says:

    I’m thinking of trying this, Work on a elph?

  2. lefty.crupps says:

    Is this as easy to revert to the in-built firmware a just removing those two files, or this SD card?

    • Ben says:

      CHDK is only on the SD cqrd you put it on, it does not replace any firmware inside your camera. On my Powershot, CHDK only starts automatically when I put the SD card to lock, otherwise I have to start it through an extra menu option.
      Have a look at the chdk wiki, google after chdk on the internet.

      Cheers, Bezn

Comments are closed.

Recipes for automated and streamlined photographic workflow on Linux

Use digiKam? Get this book!

Practical advice for nighttime photography

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

%d bloggers like this: