Canon ELPH 300 HS (Ixus 220 HS)

Done Deal

As mentioned previously, I was looking for a new Point & Shoot camera and had thought the Canon Powershot ELPH 300 HS (also known as the IXUS 220 HS) fit my requirements. Yesterday afternoon I went down to Henry’s Camera store in downtown Toronto and purchased one. Mainly this will be my wife’s camera, but I intend to make use of it when I want to try shooting some more timelapse’s with CHDK or when carrying my SLR around proves to be a problem.

Why the ELPH 300?

The main reasons I chose this camera over others are:

  • 24mm equivalent lens (wider than most point and shoot cameras)
  • A new CMOS sensor for low light performance (this model was only released in March 2011 so its nice new sensor technology)
  • HD video; 1080p and 720p are available, as well as lower quality modes
  • Size, it is a very small camera
  • It is a Canon, which means it can run CHDK (eventually)

What Is CHDK?

CHDK stands for Canon Hack Development Kit, and it allows you to unlock many features on most Canon Point and Shoot cameras. It works by placing a custom version of the software which runs on your camera onto your memory card, which is then loaded by the camera on startup. The custom software allows you do all sorts of things you couldn’t otherwise do on the camera, such as save images in RAW format, full manual exposure controls, in camera HDR and my favourite which is running scripts. A great benefit of CHDK is that the software is loaded on startup from the memory card which means there is no need to modify the software which exists on the camera. Modifying on camera software (the camera’s firmware) can be a risky process which can result in a bricked (unusable) camera. With the method CHDK uses you can simply flick the write protect switch on your SD card or swap to another SD card and be back up and running with the standard software immediately!

So What is the Point

Why would you want these extra features? These are my favourite features, a full list of features can be found on CHDK Wiki.

RAW Format

RAW mode allows you to get more data from the camera’s sensor into your image. JPEG is a lossy format, which means not all of the information the camera gets from its sensor ends up in your image file. Usually this doesn’t cause any problems, but if you want push the processing of an image to the extremes then RAW format will allow you to access extra information, usually in the form of more bits/pixel than the JPG format allows. RAW files are also larger than JPG files, so make sure you have plenty of memory available.


In camera HDR is another great benefit of using CHDK. It can be setup so a single shutter press will capture various exposures and automatically blend them all into 1 file, allowing greater dynamic range in your photograph. It is like taking 3 exposure bracketed shots on your SLR and processing them in Photomatix all with the press of the shutter button!

Manual Controls

CHDK’s extensive menu system allows you to change pretty much any setting in the camera, even those you would not normally have access to. For example, you are able to adjust the camera’s focus setting. This gives you the ability to focus manually, or even ask the camera to calculate the Hyper Focal distance for your current focal length and set the focus to that. There are so many settings you can adjust that I couldn’t possibly mention them all here.


The scripting feature of CHDK is definitely my favourite. The script feature allows you to load a small file onto your memory card which can automate various tasks on the camera. The main use I have for this is a timelapse script. A timelapse script, once started, will automatically take images at a predefined interval, giving you the images you need to generate a timelapse video. Another script I have looked at briefly is the motion capture script which takes a photo anytime something moves, it is reported to be fast enough to capture lightning! Again these 2 scripts are just some examples of the many scripts you can run on the camera. You can write your own or see what you can find on the internet.

CHDK on the ELPH300 HS (Ixus 220 HS)

The Canon ELPH 300 HS is a new model released in March 2011, this means at the point of writing this post an official CHDK release for the camera does not yet exist. The CHDK software needs to be rewritten to suit each camera model released, and because this is done by volunteers in their own time it can take a little while. To see the current state of CHDK on the new Canon ELPH 300 HS camera you can visit the ELPH 300 page on the CHDK Wiki. If the information on this page is not detailed enough you can have a look on the CHDK forums to see how the porting process is progressing. A quick search for “Elph 300″ should turn up any progress reports.

At this stage there has only been 1 attempt to port the software which was abandoned soon after it began. In time I expect to see the software successfully running on the ELPH 300. Be patient.

Update (21/06/2011): A member of the CHDK forum has picked up the porting process where the previous attempt left off, good luck!

Update (12/08/2011): Unfortunately there has been no action on the development forum for a while now, hopefully some more people are buying the camera and we will see some progress soon.

Update (26/11/2011): First build of CHDK for the ELPH 300 HS/Ixus 220 HS is now available for testing! See the thread here on the CHDK forum for details,

Where is the Review!

I will be posting a review on this camera when I have really tested it out, so keep an eye out here or subscribe to my feed to make sure you don’t miss out.

  • jezza323

    You can follow the porting progress on the CHDK forums, this is the thread for the Ixus 220 HS (ELPH 300 HS)

  • Kerosene

    Thanks for the link to the CHDK thread.
    I picked up an IXUS 220 HS a few days ago mostly for the HD video, but also in the hope that CHDK will eventually be available for it.
    I use CHDK on my older ISUX/ELPH and it’s totally brilliant. I use it for aerial photography, and set a 2 minutes for the first shot, and then set it to auto fire every 10 seconds after that. CHDK is MAGIC.

    • jezza323

      Thanks, its a great camera. Just needs to be more great! Something CHDK can do

  • piotr

    First binaries of CHDK available for IXUS220 for testing:

  • jezza323

    Thanks for sharing piotr!

  • Pingback: Canon ELPH 300 HS / IXUS 220 HS – CHDK Alpha available | Jezza's Photography Stories

  • http://nessuno Moreno Marchesi

    Grazie per le ottime info, solitamente non è facile che posti le mie idee, ma l’articolo in questo caso è un ottimo lavoro.

  • Duke

    Off Topic slightly… What memory card do you use in your ixus 220hs?

    • jezza323

      I have successfully tested CHDK in my ELPH 300 HS using a 16gb card. I usually use the camera with a 4gb card, without CHDK

  • Duke

    Sorry, I was more after a brand and class of sd card :)

  • jezza323

    I have got Patriot LX class 10, Panasonic 20(?)mb/sec and Sandisk 15mb/sec cards. All seem to work fine in the ELPH 300 HS. I have only used an old Sandisk 2gb class 4 card and the Patriot LX class 10 cards to test CHDK though.

  • Murat


    Such an awesome source for the owners of this camera and the ones who want more :) I have this baby for almost 6 months now and I never knew such a thing as CHDK existed. After learning about it yesterday and applying today I immediately became a fan of it after testing a timelapse script :) While searching more stuff about it, I ran into your page and here I am with a couple questions :)

    The main reason I get this little wonder is its video capability. So, I want more shooting time for HD videos. I don’t know what kind of script I need for it and I would really like to know about scripts specifically for video shooting. Although it gives me 1 hour recording time, it just shoots 3.99 GB videos which is around 17 or 15 minutes long (considering it was only 10 minutes just before CHDK, it is a huge improvement).

    So, is it possible to shoot longer videos by using CHDK and without compromising the quality? Is there such a script for this? Or should I even have to use a script while there is already some kind of setting in CHDK for this that I don’t know about? I would like to shoot a video until there is no memory on my card or the batteries get depleted. Is such a thing possible? Oh I might add, I am using a 16 GB class 4 for CHDK and having no problems.

    I have taken a look at the forums but as a newbie, it was quite a frustration. I felt completely lost and behind all the stuff going on.

    Thanks in advance.

    Best regards.