:date: 2013-05-13 18:15 .. index:: tech, canon CHDK - Powershot G12 ==================== .. image:: /_images/images/gallery/2013/2013-placeholder/20130513200849-canonpsg12-cdhk.jpg :alt: The extended screen :align: right :scale: 50 I was doing all kind of stuff today. Mostly cleaning, sorting and all that boring stuff. One part of it was to upload the latest Sundaypicture. And while I was fiddling with my PowerShot, I wondered: Has there maybe been a firmware version release in the meantime? I mean: since I bought it? Are there some new, fancy features I don't know I even want to have? Are there? Are there? Short answer: No. There aren't. `The Canon website `__ gave me nothing, when I selected the firmware selection. The manual doesn't even contain the word *firmware*. A bit of Internet search on the other hand revealed some hits. But one thing showed up over and over again: `CHDK `__. :program:`CHDK` is short for *Canon Hacker Development Kit*, which provides an alternative Firmware for Canon PowerShot Cameras and will only be loaded temporarily. It's more like an firmware extension, not a complete firmware. But the additional `functionalities `__ coming out of that little piece of code are quite astonishing. * Shooting in RAW / DNG (Fast SD card is beneficial) * Live histogram * Zebra mode * Shutter speeds from 1/40.000 to 64 seconds * Scripting interface (uBasic & LUA) * Games (sokoban & reversi) * Bracketing * Timelapse Videos over weeks or months with external power supplies & eye-fi wireless sd cards * Motion detection with response times of just 60ms or less Some of the features are already covered by the G12 I have, but others are quite new to me. Installation ------------ This is just the manual setup and start procedure. I didn't manage to get it automatically running yet, the camera doesn't somehow want to boot from the card. The manual startup however works fine. #. `Download `__ the fitting compressed file for your camera type. #. Format your SD-card inside the camera (`prepare your SD-card `__ ). #. Take it out of your camera and connect it to your computer. #. Unpack all the files and directories from the downloaded file directly into the root directories of the card (you might want to have a look into the :file:`readme.txt`). There must be a file called :file:`PS.FI2`. #. Put the card back in the camera. #. Start the camera with the :samp:`Play` button - not the power button. #. Go into the :menuselection:`menu -> Firmware upgrade`. #. Confirm the upgrade. What now happens is, that not an actual firmware upgrade is performed (there isn't one available for the G12, remember?). But the extensions are loaded, you should see the splash screen and there you are. .. NOTE:: For my G12 I've downloaded the version :file:`g12-100g-1.1.0-2771-full.zip`, which didn't boot on the Camera. I've removed the battery, replaced the newer version with one previous version :file:`g12-100f-1.1.0-2771-full.zip` and repeated all the steps. The camera came up. So: don't panik if you're camera doesn't react on any key press and the screen doesn't come up. Just remove the battery and start all over. Usage ----- There's an issue with :program:`CHDK`: There're just `too many options `__). But in order to get there, you need actually to start your Camera with :program:`CHDK` activated. #. Start the camera with the :program:`CHDK` extension. #. Choose the :kbd:`ALT` key to enter the menu. This depends on your camera. With the G12 it's the button :kbd:`Print`. `The CHDK website `__ provides an overview about which button to use on which camera. #. Now you've got two choices: #. Go into the menu of :program:`CHDK`. #. Run a script. #. The menu of :program:`CHDK` is quite extensive. I just spend a couple of minutes to go through all the pages and I'm still quite impressed by how many settings now can be altered. Not sure about if I also can make use of all it. #. For running the script confirm the upcoming :samp:`ALT` sign at the bottom of the screen. This will get you `into the screen `__ for selecting and running the scripts. If you've chosen the full package on the download page the you have all the scripts available right away. I've mistaken this screen initially for the configuration of the bootloader, though it isn't. I skip going through the rest of the extensive functions of :program:`CHDK`, `the user manual `__ they provide can do this far better than I can. Firmware version ---------------- There's no button inside the PowerShot Menu showing the current running firmware version. Though, if you are still interested in which current version your camera is running try this: #. Switch the camera off. #. Place two empty files in the root directory of your memory card: :file:`ver.req` and :file:`vers.req`. #. Switch the camera back on with the Display button. #. Keep the button :kbd:`FUNC SET` pressed and press the button :kbd:`DISP` once more. The output should be something like this .. code:: bash Canon PowerShot G12 P-ID:320F NT D Firmware Ver GM1.00F (1.0.0.0) Adj Ver.007.000 Serial No. ******************