Hack Your PowerShot With CHDK



One of the best reasons to use a Canon PowerShot camera for time lapse videos is the CHDK (Canon Hack Development Kit) firmware addon. This free piece of software increases the basic functions of these cameras to allow shooting in RAW and running programmable intervalometers, among other impressive tweaks.

While there are other guides to installing CHDK, such as this tutorial at PC Magazine or the official CHDK wiki, I feel that both of these are overly complicated for the casual computer user. Here is my bare-bones explanation of how I installed CHDK on my Canon PowerShot S3 IS.

A few caveats: CHDK only works for the Canon PowerShot line of point-and-shoot cameras and requires an SD memory card of <4gb (CHDK may work on cards larger than 4gb that are partitioned). This tutorial is for PC users. Mac users should visit the official CHDK Mac FAQ for installation information.

Definition of Terms

Throughout this post I’ll use a few terms that some readers might find confusing.  Here are some brief definitions:

  • Hack – anything that extends a camera’s functions beyond what was originally intended by the manufacturer.  In this case, we’ll be using a software hack.
  • Format – a way of erasing info from a memory card and preparing it for use in a camera.
  • Firmware – this is the manufacturer’s original software that was installed on the camera in the factory.
  • Addon – this is a (usually) small piece of software that doesn’t necessarily alter the original software but offers additional functions.


Begin by inserting your camera’s memory card into your computer’s memory card slot.  This tutorial may not work if your camera is connected to your computer by a cable.  Most modern computers have memory card slots.

The next step in this procedure is to install Cardtricks.  This is a computer program designed to automatically format your memory card and install the CHDK software.  Cardtricks can be found here:  Card Tricks v1.44 (510 kB)

Once you’ve downloaded Cardtricks, double click the file to extract the program and then double click the new Cardtricks icon to run the program.  You should see this screen:


Once you have Cardtricks running, select the “auto” checkbox and then click on the picture of a memory card to select your card’s location.  If Cardtricks doesn’t lead you directly to the card, it can be found under “My computer.”

cardtricks select card

Important! The next step erases all data on your card.  Make sure you’ve uploaded your photos or they will be erased.

In Cardtricks, select “Format as FAT,” wait for it to finish, and then select “Make bootable.”

format as fat

Check Your Camera’s Firmware Version

By selecting “Format as FAT,” there should now be a file on your memory card called “ver.req.”  This file tells your camera to display the firmware version number so that you’ll know which version of CHDK to download.

Remove the memory card from your computer and insert it into your camera.  Set the camera to playback mode before turning it on.  Hold down “function set” (possibly just “set”) and tap “display.”  The order of procedure is important and may require turning off the camera and restarting if done in a different order.  If all goes well, your camera should look like this:


In this picture, you can see that my firmware is version 1.00A for the S3 IS.

Now that you know the firmware version, remove the memory card and insert it back into the computer.

Installing CHDK

On the Cardtricks screen, select “Download CHDK.”  This will open a browser window with a list of all the different versions of CHDK.  Select the one that corresponds to your camera’s firmware to download it.

zip files

Back in Cardtricks, select “CHDK->card” and then select the zip file that you just downloaded.  Cardtricks will now install CHDK onto your memory card.  When the file transfer is complete, remove the memory card, slide the plastic slider to the “lock” position, and insert the card into the camera.  Even though the card is set to “lock,” it will still record photos.  The locked position simply tells the camera to boot from the card instead of running its original firmware.

Using CHDK

Start the camera in playback mode again and you should automatically see this screen:


After a second or two, the screen will return to its normal message.  Press the shortcut button on your camera (this may be an “S” in a box, have a picture of a printer next to it, or be a clear button with a light).  The text “<ALT>” should appear on the bottom of the screen.


Now when you press “menu,” a special CHDK menu will appear with a host of new features.

chdk menu

Next week I’ll discuss how to create an intervalometer script to use with CHDK so that you can begin recording time lapse videos.  For now, congratulations, you’ve finished the hardest part and are almost ready to make your first time lapse video.  (Update: Ultra Intervalometer post is finally up)

Related posts:

54 thoughts on “Hack Your PowerShot With CHDK

  1. Am I just being naive, or does this not work for the G10? I can’t find a chdk for the G10, only G9 and G11. Perhaps I missed an instruction regarding this but I don’t think so. If there is one camera this should be written for it’s the G10!!!

    1. I agree. I’m surprised there isn’t software for the G10 since it’s been on the market a couple of years. Maybe you could use an external intervalometer or run it from a computer if your primary goal is time lapse.

    1. Click “Download CHDK” from within CardTricks. This should open a window where you can find and install the appropriate CHDK for your camera’s firmware. Look for version “” listed under your camera type. If you can’t find it, try updating your camera’s firmware and trying again.

  2. My friend just did this with his Powershot, not sure if he used your tutorial or not but after he told me about it I was very curious. He was taking pictures at shutter speeds that weren’t supposed to exist on his model :P

    Anyway, after reading your tutorial, it is all so much easier than I had anticipated, and now I’m really eager to try it myself! Thanks for the inspiration :)

    1. I’m glad the tutorial helped you. There are so many reasons to use CHDK outside of time-lapse. I use it to shoot RAW, take 50 seconds exposures, and monitor my battery life.

    1. This section might be out of date. I believe the problem was because the FAT16 format only worked on smaller SD cards. I’ve installed CHDK on 4gb cards with mixed results. I usually use my DSLR now so I haven’t experimented with CHDK in some time.

  3. i have a canon powershot sx20 IS.i used a 2gb card and i follow all the steps you describe above twice but nothing happened.the camera when i opened it in the picture mode never appears these screens.just the message “no picture”.

    is it different model sx20 than sx20 IS? does it might have any difference because the CHDK file is for sx20?

  4. Amigo preciso aprender a usar minha camera sx200is, mas como disse acima, não entendo nada de ingles estes programas eu fico perdido e não sei o que fazer, preciso alterar o formato para utilizar minha camera melhor, uso ela para astrofotografia,, help me ajuda ai onde baixo o chdk desta camera em uma liguagem que eu possa ententer sua explicação é nota 10.. abraços renato.

    Percebi que o primeiro passo é gravar o cartão.

  5. Ok é o seguinte, ja baixei os ficheiros no meu cartão 4GB, de acordo com a versão para minha camera 1.00D..
    Agora tenho que travar o cartão e inserilo na camera,,,(qual é a posição que deixo a camera — ao inserir o que devo fazer onde devo clicar? pois ja tentei e clicando no botão impressora – botal visualizar fotos – botão set – e a unica coisa que a parece é a hora.

    O que estou fazendo de errado,, aguardo sua ajuda.. se preferir pode ser por e-mail, obrigado
    Att. Renato

  6. Ok the following is already downloaded the files on my 4GB card, according to the version 1.00D for my camera ..
    Now I have to lock the card and insert it in the camera,,, (which is the position that let the camera – when you enter what should I do where I click? I tried it and clicking on the printer – botal displaying photos – set button – and only thing that appears is the time.

    What am I doing wrong, I await your help .. if you prefer to be by email, thank you
    Att Renato

    1. It’s difficult to know what’s wrong without seeing the camera. Maybe try not locking the card. The print button should work for .

      Any suggestions from SX200IS users?

  7. Hi,

    Nice tutorial.
    I want to install CHDK for my Canon Powershot A495, I can’t Check my Camera’s Firmware Version. Please help.

    1. According to the CHDK wiki, you have two options: trial-and-error (e.g. first 1.00a, then 1.00b, etc.) or ACID. The ACID software can get the firmware version from the EXIF data of any photo you take. This sounds like the fastest solution and works for PC and Mac. I haven’t tried the software but put the link below.


  8. maybe I am missing something, but on my canon powershot elph 100hs there is no way to “Set the camera to playback mode before turning it on” as it suggests in the directions above. the camera is all digital. however under the chdk download page there are different options for firmware. how can i determine my correct firmware? thank you in advance.

  9. Will this work on the Canon Powershot SX20 IS, and is it as easy as it looks to do? Would love to try this, (instead of buying a new camera) but I don’t want to mess up my camera.

    1. This will work on a few firmware versions of the SX20 IS. Your camera doesn’t accept manual loading so it might be a little more complicated. http://chdk.wikia.com/wiki/SX20

      In theory, CHDK can harm a camera, but you’re pretty safe in practice. The worst outcome from trying to install CHDK is probably frustration.

  10. I have the same problem as DAWN and the response from Admin did not quite help…
    When I get the firmware from the camera it says the following:

    Powershot SX40 HS
    P-ID:##### NT D
    Firmware Ver GM1.00I (
    Adj Ver.010.008
    Serial number ##########

    I then proceeded to download the CHDK, I found the versions “sx40hs-100i-1.1.0-2167-full_BETA.zip (749KB)” and “sx40hs-100i-1.1.0-2167_BETA.zip (383KB)” and downloaded both, after that I clicked “CHDK -> Card” and selected the full version then inserted the card in the camera, started it up in playback mode and the only thing I get is the “No Image” message… I tried both full and non-full versions and with the card locked and not-locked and I cant seem to get the CHDK RAW logo nor the message…
    I’ve also looked for firmware updates for my camera in the canon webpage (http://www.usa.canon.com/cusa/support/consumer/digital_cameras/other_powershot/powershot_sx40_hs?selectedName=DriversAndSoftware) and haven’t found any.

    Any ideas what should I do now?

    1. A couple thoughts unless someone else has this problem with the SX40. I got these ideas from a video by FatDragon100 http://youtu.be/7lhCmqW3Ngc:

      Did you format the card as FAT before installing CHDK?

      Once you’ve inserted the locked card, does the screen go blank after pressing “play”? If so, pressing the power button again might work.

      1. It might be time for an update. I’ll have to borrow a newer PowerShot if things have changed significantly. Any popular model I should use for a tutorial?

  11. I tried installing the chdk using your steps on my powershot A590, actually i did it on a 2gb sd card. My camera dosent start if i put the notch on the card to lock. It starts as usual when i put the notch in unlocked position.

    Please help! Need to install chdk for time lapses and raw shooting badly.

  12. Olá Owen.. depois de apanhar muito minha Canon Sx200is, tava funcionado perfeitamente, graças a sua ajuda.. Fiz fotos incriveis…

    Agora o problema é outro, meu cartão onde estava o Firmware/chdk, quebrou e parou de funcionar,, como eu tinha o prog. salvo no Pc, instalei novamente em outro cartão, mas para minha surpresa, não esta funcionado? anteriormente eu clicava e modo Play, e em menu logo apareciar fazer o updat ok e blz tudo certinho..
    Mas não aparecere mais esta opção quando eu coloco o cartão??

    Nota apos baixar o firmware, deixo zipado ou descompactado dentro do catão?

    Att. Renato

  13. Hello Owen .. after catching very much my Canon Sx200is, tava worked perfectly, thanks to his help.. I did photos incriveis …

    Now is the problem different, my card where the Firmware/chdk was, it broke and stopped working, since I had the safe prog. in the Pc, I installed again in another card, but for my surprise, not this one worked? previously I was clicking and way Play, and in menu soon apareciar to do the updat ok and blz completely certinho..
    But not aparecere more this option when I put the card??

    Does it notice after to lower the firmware, I leave zipado or descompactado inside the austere man?

    Att. Renato

  14. I am having trouble downloading Cardtricks. it keeps saying suspicious file,,,or cannot connect. i dont know what the problem is?

  15. I tried to define an intervalometer with a high frequency, like 1 fpm. The best I can get is around 1 picture every 2 sec. Any idea to increase the frequency ? I’ve already removed the preview after the shoot, but still a bit slow.
    Thanks :-)

    1. Sorry for the delay. Sooo many spam comments.

      I’d start by trouble-shooting the camera. Can you get a faster firing rate by just holding down the trigger? My first thought is you have a slow camera and memory card. If that’s the case, try out a newer “class 10” memory card or look at the camera’s settings for “continuous” shooting. If it shoots fast and then slows, it’s definitely a memory card problem because your buffer fills up and can’t empty fast enough. Is the problem the same with RAW and jpeg? Large file sizes can dog down a camera.

      I’d have to see the script settings to tell if there’s a problem. You can copy the settings and paste them into the comments if you access the memory card through your computer.

  16. Pingback: My Equipment 2013
  17. I cannot for the life of me get the firmware version to display…. Maybe what I need is more detailed instructions of how to start my PowerShot elph 100 hs in \\”playback mode\\” I get a coloured screen with a clock on it…. and 02.06.14 on it… is that my firmware, maybe?

    1. I think there are different ways to enter playback mode depending on the PowerShot you have. Playback is the photo viewing mode and can usually be entered by pressing the “play” button or else flipping a switch from picture taking mode to playback mode before turning on the camera. The point is you don’t want to turn on the camera and then enter the photo viewing mode or you won’t be able to see the firmware version.

      If you’re having trouble, ACID software is free and can get your firmware version from a photo on your computer. My video update to this tutorial shows how to use ACID and a program called WICKS to install CHDK.

  18. I followed all the instructions to the letter and I can’t get my firmware to show up. I even tried downloading ALL the different files for each firmware – it just won’t work for the Canon Powershot ELPH 100HS.

  19. This is great. I was just gifted an old S3IS. With your blog’s help I’ll be up and running for timelapse in no time. Thanks very much.

Leave a Reply

Your email address will not be published. Required fields are marked *

Please type the characters of this captcha image in the input box

Please type the characters of this captcha image in the input box