CHDK Wiki
(multiple typos)
Tags: Visual edit apiedit
 
(69 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Attention|This page is currently under construction.}}
 
 
__NOTOC__
 
__NOTOC__
  +
[[File:CHDK_for_Dummies_Banner.png|right]]
 
<big>'''The Very First Steps'''</big>
 
<big>'''The Very First Steps'''</big>
* [[CHDK_for_Dummies_2nd_Edition#CHDK :  What's it all about ? |'''What's it all about?''']]
+
* [[CHDK_for_Dummies_2nd_Edition#CHDK : Quick Start |'''Quick Start''']]
* [[CHDK_for_Dummies_2nd_Edition#Using CHDK |'''Using CHDK''']]
+
* [[CHDK_for_Dummies_2nd_Edition#CHDK : What's it all about? |'''What's it all about?''']]
  +
* [[CHDK_for_Dummies_2nd_Edition#CHDK : What does it offer? |'''What does it offer?''']]
 
* [[CHDK_for_Dummies_2nd_Edition#Installing CHDK |'''Installing CHDK''']]
 
* [[CHDK_for_Dummies_2nd_Edition#Installing CHDK |'''Installing CHDK''']]
  +
* [[CHDK_for_Dummies_2nd_Edition#CHDK is loaded! |'''Using CHDK''']]
 
* [[CHDK_for_Dummies_2nd_Edition#CHDK_Features |'''CHDK Features''']]
 
* [[CHDK_for_Dummies_2nd_Edition#CHDK_Features |'''CHDK Features''']]
* [[CHDK_for_Dummies_2nd_Edition#Problems:_Searching_and_Posting |'''Problems: Searching and Posting''']]
+
* [[CHDK_for_Dummies_2nd_Edition#Customizing_CHDK |'''Customizing CHDK''']]
* [[CHDK_for_Dummies_2nd_Edition#Is_there_a_manual.3F |'''Is there a Manual?''']]
+
* [[CHDK_for_Dummies_2nd_Edition#Problems:_Searching_and_Posting |'''Solving Problems and Getting Help''']]
   
==CHDK :  What's it all about ?==
+
==CHDK : Quick Start==
  +
If you don't want to read this short guide, or the somewhat longer official [[CHDK_User_Manual|CHDK User Manual]] , here's a quick list of what you need to do to load and run CHDK.
There are two segments in the digital camera market: people who just want to snap pictures, and professional photographers. Accordingly, many camera manufacturers have two "families" of product:
 
  +
#Download and install the STICK utility from this link >: [http://zenoshrdlu.com/stick/stick.html STICK]
*'''Point And Shoot''' cameras (also called '''Digital Compact''' cameras) intended for consumers who want to take snaps. P&S cameras are inexpensive, small, easy-to-use digital cameras, without fancy lenses or other accessories.
 
  +
#Run STICK to configure your SD card and install CHDK.
*'''DSLR''' (Digital Single Lens Reflex) or '''SLR''' cameras are for professionals and advanced amateurs. Digital SLR cameras are more versatile, have higher quality removable lenses. but are also more complicated, heavier, and expensive. DSLR cameras offer much more manual control over the camera settings, to support e.g. RAW files and bracketing.
 
  +
#Put the SD card's lock switch into the "locked" position and put the card into your camera.
  +
#Start your camera normally. You should see the red CHDK logo appear for a few seconds.
  +
#Press the defined <ALT> key  for your camera to enter CHDK mode. The <ALT> key is usually either the {{button|PRINT}} or {{button|PLAY}} button. However, some cameras use the {{button|DISP}}, {{button|VIDEO}}, {{button|HELP}} or {{button|FACE}} buttons so you might have to try different buttons to find the right one.
  +
#Press the {{button|MENU}} button in <ALT> mode to access the CHDK configuration menus.  Press the {{button|FUNC/SET}} button to bring up the scripting menu.
  +
#Press the shutter button in <ALT> mode to run the currently loaded script.
  +
#Exit <ALT> by pressing the <ALT> button again. Override settings and onscreen display option will now enabled while you are back in normal Canon mode.
   
  +
==CHDK : What's it all about?==
The CHDK (Canon Hacker Development Kit) software makes some of the extra settings of a DSLR available on Canon's point-and-shoot cameras.  Good places to read about digital cameras are [http://www.dpreview.com/reviews/ Dpreview] (offers lots of camera reviews) or the [http://www.dpreview.com/forums/1010], a website used by people who love to talk about Canon cameras.
 
   
  +
There are two segments in the digital camera market: people who just want to snap pictures, and professional photographers. Accordingly, many camera manufacturers have two "families" of product:
==Using CHDK==
 
  +
*'''Point And Shoot''' (P&S) cameras intended for consumers who want to take snaps. P&S cameras are inexpensive, small, easy-to-use digital cameras, without fancy lenses or other accessories.
  +
*'''DSLR''' (Digital Single Lens Reflex) cameras for professionals and advanced amateurs. Digital SLR cameras are more versatile, have higher quality removable lenses. but are also more complicated, heavier, and expensive. DSLR cameras offer much more manual control over the camera settings, to support e.g. RAW files and bracketing.
   
*'''CHDK''' only works with '''Canon''' point-and-shoot digital cameras. CHDK does not work with cameras from other manufacturers, nor with Canon's dSLR cameras.
+
To help bridge between P&S and DSLR cameras, CHDK (Canon Hack Development Kit) software makes some of the extra features found on DSLR cameras available on Canon's P&S cameras.
*'''A unique version of CHDK''' is needed for each Canon '''camera model''' and for each '''firmware''' version of that camera. For example, the version of CHDK for the Canon G9 camera does not work with the Canon SX200 IS camera.
 
*'''Volunteer computer developers adapt CHDK for each new Canon camera. The adaption takes some time, so CHDK might not be immediately available for a new Canon camera model.'''
 
   
  +
Good places to read about digital cameras are [http://www.dpreview.com/reviews/ Dpreview] (offers lots of camera reviews) or the [http://www.dpreview.com/forums/1010 Canon PowerShot Talk], a forum used by people who love to talk about Canon cameras.
<div style="padding-left:25px;">Modern digital cameras contain tiny computers. The '''firmware''' tells the computer how to drive the various functions of the camera. CHDK uses the firmware that comes with your camera, so CHDK for the SX200 firmware version 1.00c should not be installed on an SX200 running firmware version 1.00d.</div>
 
   
  +
==CHDK : What does it offer?==
<div style="padding-left:25px;"><br />The next section describes how to check which firmware version your camera has. This info is also in the [http://chdk.wikia.com/wiki/FAQ#Q._How_can_I_get_the_original_firmware_version_number_of_my_camera.3F FAQ entry].</div>
 
   
  +
CHDK adds many new features to your P&S camera.  Listed below is a subjective list of some of the more popular things people do with CHDK.
<div style="padding-left:25px;">Review the ''official'' [http://mighty-hoernsche.de/ CHDK camera list] to see if there is a version of CHDK for your camera model and firmware version.</div>
 
  +
*time lapse (or intervalometer) sequences
  +
*RAW & DNG photography
  +
*motion detection, especially for taking picture of lightning
  +
*stereo (3D) photography
  +
*multicamera "bullet time" rigs
  +
*remote shutter switch
  +
*meteor / star photography
  +
*HDR photography
  +
*KAP & UAV photography
  +
*and much, much more ...
  +
<span style="font-size:14.4444446563721px;"> A more complete list of features can be found here :  </span>[[Features|CHDK Features]]
   
  +
==Will CHDK damage my camera?==
   
  +
CHDK is an unofficial addition to your camera, not supported or approved in any way by Canon so there is always a chance that something can go wrong. However, there are many thousands of satisfied CHDK users and so far there are no verified reports of any damage. You can check out the wiki page dedicated to tracking suspected failures here : [[Camera_failures_suspected_to_be_caused_by_CHDK|Camera failures suspected to be caused by CHDK]]
==Installing CHDK==
 
   
  +
CHDK does not make any changes to the factory-installed firmware in the camera. CHDK is stored on the same memory card as your photos. When you remove the SD card or delete the CHDK files, the digital camera reverts to its original state.
[[Image:USBCardReader.jpg | thumb | left | USB Card Reader]]
 
[[Image:FormatSDCardWindows.png | thumb | left |Format SD Card]]
 
[[Image:CanonA580 Back.jpg | thumb | left | Canon Camera Back Side]]The one sentence summary of this section is "''put an empty file called 'vers.req' in the top folder on your SD memory card, put the card back in the camera, switch the camera on, and press a combination of buttons.''" The firmware version will then be displayed on the camera LCD.
 
=====Preparing the file on the SD card=====
 
To see the firmware version of your digital camera, you must create a file with a special name, on the camera's SD card. It is trivial to do this, if you take the SD card out of the camera and connect the SD card to your PC.
 
 
Modern laptops usually have integrated SD card readers; if you have a computer or an older laptop, you will need a separate '''USB card reader''' connected to one of the free USB ports.
 
 
Now follow these simple steps:
 
# Insert the SD card into your card reader.
 
# [deleted; unnecessary]
 
#Create two empty files in the top level folder of your SD card, one called '''ver.req '''and the other called '''vers.req'''. Both these names mean "version request". Newer cameras use '''vers.req'''.If you put both files on the SD card, you will be compatible with both older and new cameras, and the new request will be used if the camera recognizes it.
 
 
<div style="padding-left:25px">On Windows, you can create a file by right clicking on an empty area in the root folder of your card and selecting the '''New''' &gt; '''Text Document''' menu entries.<br />Type '''ver.req''' and, when asked, click on '''Yes''' to confirm that you want to change the file extension. That creates the first file. Now create the second one.</div>
 
 
<div style="padding-left:25px"> </div>
 
 
=====In the store=====
 
With the files on the card, put the card into your camera. If you don't own the camera yet, you can go to a store and kindly ask the salesman to put this card in the camera, for a test.
 
 
# Switch the camera in '''Play''' mode and start the camera. Remember: camera ''must'' be in Play mode before you start it! Some cameras have no '''Play''' mode, instead you can press {{button
 
|1 = [>]
 
}}to switch on in Play mode.
 
# Wait until the camera starts completely
 
# Locate the {{button|FUNC SET}} (on PS S2IS it's SET) and {{button|DISP}} buttons (see picture on the left)
 
# Press and hold the {{button|FUNC SET}}.
 
# Still pressing the {{button|FUNC SET}}, press {{button|DISP}} once. (This is not true for all cameras.. some require FUNCSET then DOWN. eg A1100IS)
 
# Look at the display. You will see something like this:
 
<pre>
 
Canon PowerShot A650 IS
 
 
P-ID:315B NT D
 
 
Firmware Ver GM1.00D
 
 
NoError
 
 
Jul 6 2007 12:41:33
 
</pre>
 
The GM'''''1.00D''''' part is the firmware version. If you see '''B'''1.xx listed, this usually means the firmware is beta.
 
 
Write down the camera model and the firmware version, remove your SD card from the camera and thank the salesman nicely for helping you out.
 
 
Check the official [http://mighty-hoernsche.de/ CHDK Camera list] to see if this particular camera model and firmware version is supported.
 
 
<!-- page tries to install some Firefox add on at first access, may be trojan/virus
 
 
[http://grandag.nm.ru/hdk/autobuild/download.htm CHDKable!]
 
 
'''Attention''':<br/>
 
In the CHDKable cameras' list, at the link above, the letters '''IS''' were removed. So:<br/>
 
Canon PowerShot A720 = Canon PowerShot A720 IS<br/>
 
Canon PowerShot A650 = Canon PowerShot A650 IS<br/>
 
and so on...
 
-->
 
 
==Will CHDK damage my camera?==
 
There is always a chance for something to go wrong but there are many thousands of satisfied CHDK users, and there are no verified reports of any damage so far. CHDK does not make any changes to the factory-installed firmware in the camera. CHDK is stored on the same memory card as your photos. When you remove the SD card or delete the CHDK files, the digital camera reverts to its original state.
 
   
 
A photographer who uses CHDK is like a car enthusiast who fits an aftermarket performance chip to control the engine. There's no absolute guarantee that it won't break anything, and the original manufacturer will certainly disapprove of it. But most people seem to get what they want from aftermarket modifications, and CHDK is no exception.
 
A photographer who uses CHDK is like a car enthusiast who fits an aftermarket performance chip to control the engine. There's no absolute guarantee that it won't break anything, and the original manufacturer will certainly disapprove of it. But most people seem to get what they want from aftermarket modifications, and CHDK is no exception.
Line 94: Line 57:
 
It is theoretically possible that CHDK firmware could drive your camera beyond Canon's operational limits. Damage could happen because of a inadvertent programming error (such as driving the zoom motor too frequently or too quickly), or due to deliberate malware. Malware is unlikely, because crackers would get nothing from damaging your camera. Since most cameras are not networked, crackers could not take it over the way they could take over a computer.
 
It is theoretically possible that CHDK firmware could drive your camera beyond Canon's operational limits. Damage could happen because of a inadvertent programming error (such as driving the zoom motor too frequently or too quickly), or due to deliberate malware. Malware is unlikely, because crackers would get nothing from damaging your camera. Since most cameras are not networked, crackers could not take it over the way they could take over a computer.
   
People have encountered CHDK bugs that "crash" the camera (the camera freezes and does not respond to controls). This can be easily fixed by power cycling the camera. Beta versions of CHDK aren't fully tested. They are released so experts can test with them. If you are not comfortable dealing with buggy software, use only official, stable and tested versions.
+
People have encountered CHDK bugs that "crash" the camera (the camera freezes and does not respond to controls). This can be easily fixed by power cycling the camera. Alpha versions of CHDK aren't fully tested. They are released so experts can test with them. If you are not comfortable dealing with buggy software, use only official, stable and tested versions.
   
More technical info at: [http://chdk.setepontos.com/index.php/topic,1500 What is the worst that can happen?]
+
More technical information can be found at:  [http://chdk.setepontos.com/index.php/topic,1500 What is the worst that can happen?]   and  [[FAQ#Q._Can_CHDK_damage_your_camera.C2.A0.3F|Can CHDK damage your camera?]]
----
 
   
=='''Load CHDK onto the card'''==
+
==Is there a manual?==
  +
There is a lot of documentation available for CHDK.  Unfortunately, much of it is obsolete, incomplete,  or just plain wrong.  Listed below are several reference works that can be trusted :
  +
* The official '''[[CHDK User Manual]]'''
  +
* The very detailed '''[[FAQ|CHDK FAQ]]'''
  +
* The official list of '''[[CHDK Links]]'''
  +
* The '''[[CHDK_Scripting_Cross_Reference_Page|CHDK Scripting Cross Reference Page]]'''
  +
Older documentation that may still be useful includes :
  +
*  '''[[One_Page_Ultra-Quick_Users_Guide |One Page Ultra-Quick Users Guide (with PDF version)]]'''
  +
*  [http://chdk.wikia.com/wiki/File:CHDK_User_Quick_Start_Guide.pdf '''CHDK User Quick Start Guide''']
  +
* '''[http://www.amazon.com/The-Canon-Camera-Hackers-Manual/dp/193395258X The Canon Camera Hackers Manual: Teach Your Camera New Tricks]''' by Berthold Daum, [[ISBN 978-1-933952-58-1]], published 2010.
  +
<span style="font-size:14px;">And you can read the </span>'''[http://lifehacker.com/5942229/unlock-the-secret-pro-features-of-your-canon-point+and+shoot-camera-with-chdk Lifehacker's Guide to CHDK]'''<span style="font-size:14px;"> (and the older </span>'''[http://lifehacker.com/387380/turn-your-point+and+shoot-into-a-super+camera Lifehacker's Guide to CHDK])'''
   
  +
==Installing CHDK==
<div style="border: 2px dashed red; font-weight: bold; font-style: italic; width: 80%; text-align: center; margin: 10px auto 10px auto; padding: 5px;">WARNING: This process erases all files and folders on the card!</div>
 
  +
CHDK installation is a simple matter of adding some files and folders to a ''correctly formatted'' camera SD card.  For many years, the hardest part of using CHDK was getting those files successfully loaded onto the SD card.  There are many websites and YouTube videos describing how to install CHDK, most of them obsolete and some of them just plain wrong.  
The most current information about the preparation and loading of CHDK onto a SD card is available here :
 
   
  +
<div style="border: 2px dashed red; font-weight: bold; font-style: italic; width: 80%; text-align: center; margin: 10px auto 10px auto; padding: 5px;">WARNING: This process may erase all files and folders on your SD card!</div>
[[Prepare_your_SD_card|Instructions on how to prepare your SD card]]
 
  +
Fortunately,  there is now a simple utility called '''STICK''' available for PC, Mac and Linux computers that will automatically format your SD card and install the correct version of CHDK for your camera.  You can read all about it and download from this link : 
   
  +
: ''link :'' [http://zenoshrdlu.com/stick/stick.html Simple Tool for Installing CHDK (STICK) for Windows, OSX and Linux]
* If you still don't get it, try [[CHDK For Newbies - How To Install]]. It's a fun step by step video tutorial.
 
   
  +
<span style="font-size:14px;">If you want to understand more about installing CHDK, including alternate methods of installation,  the most current information about the loading CHDK onto a SD card is always available here :</span>
* Or, read [http://lifehacker.com/5942229/unlock-the-secret-pro-features-of-your-canon-point+and+shoot-camera-with-chdk Lifehacker's guide]. [http://lifehacker.com/387380/turn-your-point+and+shoot-into-a-super+camera (old Lifehacker's guide)]
 
   
  +
: ''link :'' [[Prepare_your_SD_card|Instructions on How to Prepare Your SD Card]]
----
 
   
  +
Some important notes about installing CHDK :
==CHDK is loaded!==
 
First thing you'll notice using CHDK is your OSD (On-Screen Display) changes. You'll see now, left to right a number, two icons and a percent.
 
*First number is your available ''card space'' in MB.
 
*Next to it you'll see your ''battery icon'' and below the ''charge remaining capacity'' in percent.
 
*[[Image:A720 back buttons.png|thumb|160px|right|CHDK buttons]]
 
*The top right one is the iconic representation of the ''free space amount'' of your SD memory card in MB.
 
   
  +
*'''CHDK''' makes no permanent changes to your camera.  It must be loaded from the camera's SD card each time the camera starts and it goes away completely each time the camera is turned off. 
=====Menu Navigation =====
 
  +
*'''CHDK''' may not be available for your '''Canon''' P&S camera.  Volunteer developers must adapt CHDK for each new Canon camera. The adaptation takes some time, so CHDK might not be immediately available for a new Canon camera model
  +
*'''CHDK'''<span style="font-size:14px;"> only works with </span>'''Canon'''<span style="font-size:14px;"> point-and-shoot digital cameras. CHDK does not work with cameras from other manufacturers, nor with '''Canon's''' dSLR cameras.</span>
  +
*'''A unique version of CHDK''' is needed for each Canon '''camera model''' and '''firmware''' version of that camera. For example, the version of CHDK for the Canon G9 camera does not work with the Canon SX200 IS camera.  Likewise,  the version of CHDK for the G9 with firmware version 1.00d will not work on a G9 with firmware version 1.01c.   If you use the STICK utility, it will sort all of this out for you.
  +
==Starting CHDK==
  +
Once you have CHDK installed on your SD card, it can be started in two different ways. These ways are called the "Firmware Update" method and the "SD Card Lock" method. The "Firmware Update" method will work on any SD card but requires you to manually start CHDK from the Canon menu. The "SD Card Lock" method requires a specially formatted SD card but will automatically load CHDK each time you start your camera. Note at that the STICK utility configures the SD card to support both methods.
   
  +
===Firmware Update Method===
  +
#Start your camera by pressing the "Playback" button (not the On/Off button.)
  +
#Press the MENU button.
  +
#Scroll down to the bottom of the menu, where you will see a menu entry called "Firm Update". Press then Func/Set button to select that.
  +
#In the Firm Update screen, where it says "Update firmware version?  1.0.0.0 -> 1.1.0.0" select OK.
  +
The camera should now restart and the CHDK logo will appear. Note that you have to repeat this process each time you start the camera.
   
=====RAW=====
+
===SD Card Lock Method===
  +
#Remove the SD card from your camera and move the small card lock switch to the locked position.
  +
#Start the camera normally by pressing the On/Off button or the playback button.
  +
The camera will start and the CHDK logo will be displayed.
   
  +
Note that if you press and hold the On/Off button until the lens opens then the camera will start in shooting mode. Otherwise the camera starts up in playback mode by default.  Also, note that CHDK will cause the camera to ignore the lock switch on the SD card, such that photographs will be stored on the card even though the switch is in the locked (or "Write Protect") position.
   
  +
==CHDK is loaded!==
[[Image:Raw.jpg|thumb|200px|left|RAW menu]]
 
  +
If you have correctly configured your SD card using the steps listed above, and started CHDK as described, you should see the red/white/black CHDK logo appear briefly on your camera's LCD screen when the CHDK loads. Once that is done, you are ready to start using CHDK.
  +
===First Steps===
  +
The first thing you will notice when CHDK loads and you are in shooting mode is new OSD (On-Screen Display) icons. At the top of the display, you should see from left to right :
  +
*a number giving the <span style="font-size:14px;">available </span>''card space''<span style="font-size:14px;"> in MB.</span>
  +
*a ''battery icon'' with the ''charge remaining capacity'' in percent right below it
  +
*a ''clock icon ''showing the current time
  +
*the ''temperature'' of the camera's optics
  +
*at the bottom of the LCD display, a small white ''bar graph'' shows the used space on the SD card.
  +
Using the CHDK OSD layout editor,  you can change the position of these icons,  add additional icons,  change their configuration, and enable them to display in playback mode as well.
   
======A few words about RAW======
+
===Getting into CHDK <ALT> Mode===
  +
To configure CHDK and use its various options,  you need to enter what's known as <ALT> mode.  In <ALT> (or alternate) mode, the camera's buttons and LCD screen are taken over by CHDK, giving them different functionality from what they had in normal Canon mode.    To enter <ALT> mode,  you need to press the ALT key, which is just one of the camera's buttons that has been reassigned so that it starts CHDK.  
You have probably already watched those nature programs where they show us the world through the eyes of bees, dogs, flies and spiders. Your [http://www.cambridgeincolour.com/tutorials/camera-sensors.htm camera sensor] works in a similar way. Like the human eye, the camera eye - the Charge-Coupled Device (CCD) or the Complementary Metal–Oxide–Semiconductor (CMOS) sensor - ''sees'' the light, but in a different way. Therefore, to bring that vision to our ''natural'' way of seeing light, some math needs to be done. So, after the camera hardware has done some processing, the OSD can show us an understandable and expected result. The final product is a photo file that you print, send or store in your computer - the [http://www.cambridgeincolour.com/tutorials/imagetypes.htm JPEG] image file. On the other side, this very first and odd looking from the camera's sensor is called [http://www.cambridgeincolour.com/tutorials/RAW-file-format.htm RAW]. CHDK saves that information in a file for further uses.<br />
 
<br />
 
   
  +
On cameras with a Shortcut/Print button, that is the default <ALT> button.  Other cameras use the Playback button,  or the DISP button,  or the Video button, or the Face button.   The actual button used by your camera can sometime be found in the Notes.txt file included with the CHDK distribution, on the CHDK wiki page for your camera, or by reading the porting thread for your camera on the CHDK forum.  
CHDK generates a 10 bit non standard RAW file; few commercial programs support this format yet. But you can always convert your CHDK_RAW files to a standard DNG or TIFF file by using this program: [http://web.archive.org/20071025040138/dng4ps2.chat.ru/index_en.html DNG4PS-2] and read [http://chdk.setepontos.com/index.php/topic,390.0.html DNG4PS2] for more information. If you don't have any preference yet, give [http://www.pl32.com/ PhotoLine] a try, it already supports CHDK_RAW files. Lately, some people have proclaimed good results with [http://www.rawtherapee.com/ Raw Therapee] and [http://ufraw.sourceforge.net/ UFRaw]
 
   
  +
When the ALT button is pressed, a small red <ALT> symbol will appear at the center of the LCD screen.  You can now launch scripts,  issue keyboard shortcuts, or open the CHDK menu by pressing the Menu button.
Latest version of [http://www.xnview.com/ XnView] also supports CHDK's RAW.
 
   
  +
Note that you can still use the ALT button for its normal Canon assigned purpose. Simply hold it down for more than 1 second and it will initiate the Canon function rather than start CHDK ALT mode.
  +
===Menu Navigation ===
  +
CHDK makes use of many of the buttons on your camera when you are in <ALT> mode.  
  +
[[Image:A720 back buttons.png|thumb|160px|right|CHDK buttons]]
  +
The up / down / left / right buttons are used to navigate the menus.  They also have additional "shortcut" functions when pressed in conjunction with a "half press on the shutter button (see below).
  +
Pressing the MENU button button brings up the CHDK menu. Pressing it again closes the menu.
  +
Pressing the DISP button when using the CHDK OSD onscreen editor changes the amount the OSD icons move in response to the up/down/left/right buttons.
  +
Pressing the FUNC/SET button takes you immediately to the Script menu.
  +
Pressing the shutter button all the way (full press) activates the currently loaded script.
   
  +
==Using CHDK==
More links<br />
 
About RAW settings [http://chdk.wikia.com/wiki/CHDK_firmware_usage#RAW_Parameters RAW parameters] and [http://chdk.wikia.com/wiki/CHDK_firmware_usage/AllBest#RAW_Parameters_.3E_RAW_Develop_.28Build_100-15_or_Later.29 RAW Develop].<br />
 
About camera sensors [http://www.cambridgeincolour.com/tutorials/camera-sensors.htm Digital Camera Sensors].<br />
 
About RAW editions and compatibilities [http://en.wikipedia.org/wiki/RAW_image_format Raw image format].<br />
 
How to use [http://www.linux.com/archive/articles/118946 RAW with Linux] (this also applies somewhat to Windows and Mac).<br />
 
----
 
   
  +
===<ALT> mode vs Canon Mode===
==CHDK Features==
 
  +
Once CHDK is loaded on your camera, it is always running.
   
  +
When you use your camera normally, it runs in the background, performing tasks like updating the CHDK onscreen display and watching for you to press the <ALT> button. Most importantly though, it will apply any overrides you have selected in the CHDK menus (exposure, focus, flash, ND filter, etc) when you actually take a picture. You do not need to be in <ALT> mode for this to happen (and in fact it will not happen in <ALT> mode).
=====Bracketing and HDR=====
 
It's a way of using a series of shots of the same subject, generally at distinctly adjusted settings, to achieve, usually at a later time, a different and better result. Basically, there are three kinds of bracketing: luminance, focus and noise reduction. With many technical variations on each. The first and third can be done internally by a P&S camera with some CHDK processing ([[CHDK for Dummies#RAW_Develop |RAW Develop]]).
 
   
  +
When you enter CHDK <ALT> mode, you can do several things. First of all, you can press the MENU button and activate the CHDK menus. These allow you complete control of CHDK's configuration and operation. Secondly, there are a few special [[CHDK_1.3.0_User_Manual#Key_Shortcuts|Key Shortcuts]] that are only active in <ALT> mode. Finally, and perhaps most importantly, you can use scripts while in <ALT> mode.
Now you can go for some [http://www.cambridgeincolour.com/tutorials/high-dynamic-range.htm HDR (High Dynamic Range) imaging edits].
 
   
  +
=== Starting in Shooting Mode ===
  +
When you automatically load CHDK via the SD card lock method, you will notice that CHDK always starts the camera in "playback mode". You have to press the shutter button to switch to shooting mode. If you want to actually start the camera in shooting mode, then power up the camera by simply holding the On/Off button down until you observe the lens starting to extend.
   
  +
===Scripts vs Built-in Functions===
=====Bracketing and DOF=====
 
  +
One of the first things you will encounter when using CHDK is that some things are done using CHDK's built-in capabilities and other things are done using scripts (or small computer programs) that you load into the camera as needed.
There is a good start tutorial at [[DoF Stacking]].
 
   
  +
In general, simple setup and configuration functions are typically built-in to CHDK as are certain things that would be difficult to implement with a script. Built-in function include the on-screen display icons, USB remote functionality, the histogram and edge overlays functions, shooting exposure and focus overrides and RAW/DNG image creation. However, many of these built-in functions can be enhanced and their behavior modified by the use of a script.
=====Bracketing and Noise=====
 
The easiest way to remove noise of low light photos is by using the internal [[#RAW Develop |Raw Develop]] CHDK functions, there you will find a concept explanation.
 
<br />
 
<br />
 
'''Obs.:''' Noise is a mess... with a lot of variations. If you wanna start this war you must know with what bandit you are fighting against:
 
*Sensor noise
 
**[http://www.cambridgeincolour.com/tutorials/noise.htm Sensor Noise], so Canon implements an automatic Noise Reduction (Dark Frame) at high exposure times, but it is a drawback...
 
*Dark Frame
 
**[http://forums.dpreview.com/forums/read.asp?forum=1010&message=25427361 Complaining about NR/DF]
 
**[[CHDK firmware usage#RAW_parameters_menu |Dark Frame (see Noise Reduction)]]
 
**[http://chdk.setepontos.com/index.php/topic,985 Fight against noise in long exposures]
 
**[[Talk:UBASIC/TutorialScratchpad#Dark-frame_Subtraction_not_ALWAYS_at_.3C.3D1.3_seconds.21 |old thoughts]]
 
*Amp Glow
 
**[http://forums.dpreview.com/forums/read.asp?forum=1035&message=15500752 at dpreview forum]
 
*Hot Pixels
 
**[http://chdk.setepontos.com/index.php/topic,747 Hot pixels - awful]
 
**[http://chdk.wikia.com/wiki/CHDK_firmware_usage/AllBest#Hot-Pixel_Removal_.28Build_100-16_and_later.29 Hot-Pixel Removal]
 
*Dark Frame and PP actions
 
**[http://chdk.setepontos.com/index.php/topic,110 Old request]
 
**[http://chdk.setepontos.com/index.php/topic,1365 DataGhost new CHDK Branch]
 
**[http://www.mediachance.com/digicam/ Mediachance (some freeware)]
 
**[http://www.my-spot.com/RHC RAWHide]
 
**[http://www.astronomie.be/registax Registax]
 
   
  +
===Built-in Functions===
=====CHDK Bracketing Techniques=====
 
  +
====Exposure Overrides====
  +
====Bracketing====
  +
====Video====
  +
====RAW====
  +
====Edge Overlay====
  +
====Histogram====
  +
====Zebra====
  +
====Grids====
  +
====USB Remote====
  +
====Miscellaneous Stuff====
   
  +
===Scripted Functions===
*[[CHDK_firmware_usage/AllBest#RAW_Parameters_.3E_RAW_Develop_.28Build_100-15_or_Later.29 |'''RAW Develop in details''']]<br />
 
  +
[[File:LoadScrptFromFile.jpg|thumb|right|290px|Load Script]]
*[http://chdk.setepontos.com/index.php/topic,1702.msg15550.html#msg15550 '''Practical example of RAW averaging''']
 
  +
<p style="font-size:14.4444446563721px;">By definition '''''script''''' [http://en.wikipedia.org/wiki/Scripting_language is a programming language that controls a software application].<br /></p>
   
  +
<p style="font-size:14.4444446563721px;">It's like a taxicab: there is the car, the driver and there is you - the user. Once inside, you give directions on where you want to go. Also, you can tell the driver to go from here to there, to avoid this or that streets, to go fast or slow etc. So, the driver operates the wheel, the gas pedal, the brakes, the clutch, car light signals, avoids other cars or some potentially dangerous obstacles and, finally, brings you to your destination. The main power that moves this process comes, almost exclusively, from the car itself. But all this power would be useless without the taxi driver expertise. And, of course, none of that would have even started if not been for your command. Our camera's hardware is the car, your camera's [http://en.wikipedia.org/wiki/Firmware firmware] (plus CHDK) is the driver and the script is you.<br /></p>
=====Useful links=====
 
   
  +
<p style="font-size:14.4444446563721px;">CHDK scripts are written in a modified versions of [http://en.wikipedia.org/wiki/UBASIC uBASIC] or [http://en.wikipedia.org/wiki/Lua_(programming_language) Lua]. Scripts allow control of many CHDK and camera functions.</p>
====Scripts====
 
=====Concept=====
 
By definition '''''script''''' [http://en.wikipedia.org/wiki/Scripting_language is a programming language that controls a software application].<br />
 
   
  +
<p style="font-size:14.4444446563721px;">For more information see:<br /></p>
It's like a taxicab: there is the car, the driver and there is you - the user. Once inside, you give directions on where you want to go. Also, you can tell the driver to go from here to there, to avoid this or that streets, to go fast or slow etc. So, the driver operates the wheel, the gas pedal, the brakes, the clutch, car light signals, avoids other cars or some potentially dangerous obstacles and, finally, brings you to your destination. The main power that moves this process comes, almost exclusively, from the car itself. But all this power would be useless without the taxi driver expertise. And, of course, none of that would have even started if not been for your command. Our camera's hardware is the car, your camera's [http://en.wikipedia.org/wiki/Firmware firmware] (plus CHDK) is the driver and the script is you.<br />
 
   
CHDK scripts are written in a modified versions of [http://en.wikipedia.org/wiki/UBASIC ubasic] or [http://en.wikipedia.org/wiki/Lua_(programming_language) Lua]. Scripts allow control of many CHDK and camera functions.
 
   
For more information see:<br />
 
 
*[[UBASIC|CHDK UBASIC page]]<br />
 
*[[UBASIC|CHDK UBASIC page]]<br />
 
*[[Lua|CHDK Lua PAGE]]<br />
 
*[[Lua|CHDK Lua PAGE]]<br />
*[http://chdk.setepontos.com/index.php/board,7 Script Writing] section of CHDK Forum.<br />
+
*[http://chdk.setepontos.com/index.php/board,7 Script Writing] section of CHDK Forum.<br />
 
*[http://chdk.wikia.com/wiki/PropertyCase PropertyCase]<br />
 
*[http://chdk.wikia.com/wiki/PropertyCase PropertyCase]<br />
   
=====How to load=====
+
====How to Load and Run a Script====
Switch to &lt;ALT&gt; mode, then press FUNC.SET, and select "Load Script from file", and choose a script from the Scripts folder. The other way is to go to Main Menu&gt;Scripting parameters&gt;
+
<p style="font-size:14.4444446563721px;">Switch to &lt;ALT&gt; mode, then press FUNC.SET, and select "Load Script from file", and choose a script from the Scripts folder. The other way is to go to Main Menu&gt;Scripting parameters&gt; Load script from file. (See image).</p>
Load script from file. (See image).
 
   
  +
==CHDK Video Features==
[[File:LoadScrptFromFile.jpg|thumb|right|290px|Load Script]]
 
=====How to use=====
 
=====How to change=====
 
=====Useful links=====
 
 
====CHDK Video features====
 
 
Similarly as the RAW -&gt; JPG procedure, Canon cameras transform real motion action in video format. This format is named Motion JPEG - similar to JPEG, the static image format. There are many video compression formats used nowadays: Moving Picture Experts Group Type 2 (MPEG-2) for DVDs and cable TV, MPEG-4 for Blue-ray DVD discs, Windows Media Video (WMV) for some computer video files, Flash Video (FLV) for YouTube videos, etc. M-JPEG has a significantly higher bitrate than these formats. That's '''bad,''' because the same amount of video time will take '''more storage space''' than other formats. But that's also '''good,''' because you '''''lose less''''' information in the compression activity and can edit more easily at your computer.
 
Similarly as the RAW -&gt; JPG procedure, Canon cameras transform real motion action in video format. This format is named Motion JPEG - similar to JPEG, the static image format. There are many video compression formats used nowadays: Moving Picture Experts Group Type 2 (MPEG-2) for DVDs and cable TV, MPEG-4 for Blue-ray DVD discs, Windows Media Video (WMV) for some computer video files, Flash Video (FLV) for YouTube videos, etc. M-JPEG has a significantly higher bitrate than these formats. That's '''bad,''' because the same amount of video time will take '''more storage space''' than other formats. But that's also '''good,''' because you '''''lose less''''' information in the compression activity and can edit more easily at your computer.
   
Line 232: Line 208:
 
Digital cameras have two types of zoom available: The '''optical''' zoom and the '''digital''' zoom.
 
Digital cameras have two types of zoom available: The '''optical''' zoom and the '''digital''' zoom.
 
*The '''optical''' zoom uses lens refractions to magnify the objects, resulting in clear, sharp images.
 
*The '''optical''' zoom uses lens refractions to magnify the objects, resulting in clear, sharp images.
*And the '''digital''' zoom approximates zoom by magnifiying the pixel size. It does some math to improve the result, but will always produce worse results when compared to the optical zoom. Objects will appear larger, but can lack definition and appear ''blocky''.
+
*And the '''digital''' zoom approximates zoom by magnifying the pixel size. It does some math to improve the result, but will always produce worse results when compared to the optical zoom. Objects will appear larger, but can lack definition and appear ''blocky''.
 
Canon blocks the optical zoom during video shoots. That's bad because you will lose quality when you zoom things digitally. CHDK unleashes the optical zoom that the Canon's engineers blocked, but the drawback is that the zoom mechanism noise is recorded in your video as well.<br />
 
Canon blocks the optical zoom during video shoots. That's bad because you will lose quality when you zoom things digitally. CHDK unleashes the optical zoom that the Canon's engineers blocked, but the drawback is that the zoom mechanism noise is recorded in your video as well.<br />
 
Do some tests to get the best combination for you.
 
Do some tests to get the best combination for you.
 
----
 
----
  +
=Customizing CHDK=
  +
There are a lot of different things you can do with CHDK.  And a lot of things you can do to customize CHDK to your liking. Many of these are buried deep within the CHDK menu structure, so to provide a guide some of the better ones are posted below.
  +
===OSD Icons===
  +
===OSD Icon Positions===
  +
===Languages & Fonts===
  +
===Grids===
  +
===CHDK Colors===
  +
===User Menu===
  +
===Edge Overlay===
  +
===Histogram===
  +
===Script Modes on Startup===
  +
===Console===
  +
===ALT Help Screen===
  +
===Shortcut Keys===
  +
===Splash Screen on Load / Startup Sound===
  +
===<ALT> Mode Buttons===
  +
===Disable LCD Off===
  +
  +
  +
   
 
==Versions==
 
==Versions==
Line 281: Line 277:
   
 
# Be careful in choosing the correct section/subsection. If you have specific problems dealing with CHDK, this isn't exactly a developer matter. So, '''don't''' post at '''CHDK Development''', go '''Using CHDK/General Help and Assistance on using CHDK stable releases'''.
 
# Be careful in choosing the correct section/subsection. If you have specific problems dealing with CHDK, this isn't exactly a developer matter. So, '''don't''' post at '''CHDK Development''', go '''Using CHDK/General Help and Assistance on using CHDK stable releases'''.
# Put a short descriptive title in your thread.<br />HELP HERE! or SOME AID!! or I'M DESPERATE!!!<br />usually don't receive good feedbacks.
+
# Put a short descriptive title in your thread.<br />HELP HERE! or SOME AID!! or I'M DESPERATE!!!<br />usually don't receive good feedback.
 
# Describe your problem as accurately as possible.
 
# Describe your problem as accurately as possible.
 
# List at least:
 
# List at least:
Line 294: Line 290:
 
# Be polite and friendly, don't argue with others trying to help, it's a waste of your time.
 
# Be polite and friendly, don't argue with others trying to help, it's a waste of your time.
 
# And when you know and can, help others.
 
# And when you know and can, help others.
 
----
 
 
 
==Is there a manual?==
 
* Yes. This wiki contains the '''[[CHDK User Manual]]'''
 
 
* To get started, there is also the '''[[One_Page_Ultra-Quick_Users_Guide |One Page Ultra-Quick Users Guide (with PDF version)]]'''
 
* If you are an ''offline'' kinda guy, you'll appreciate the [http://chdk.wikia.com/wiki/File:CHDK_User_Quick_Start_Guide.pdf '''CHDK User Quick Start Guide''']. 
 
 
* A book: '''[http://www.amazon.com/The-Canon-Camera-Hackers-Manual/dp/193395258X The Canon Camera Hackers Manual: Teach Your Camera New Tricks]''' by Berthold Daum, ISBN 978-1-933952-58-1, published 2010.
 
 
   
 
----
 
----

Latest revision as of 15:35, 10 November 2016

CHDK for Dummies Banner

The Very First Steps

CHDK : Quick Start

If you don't want to read this short guide, or the somewhat longer official CHDK User Manual , here's a quick list of what you need to do to load and run CHDK.

  1. Download and install the STICK utility from this link >: STICK
  2. Run STICK to configure your SD card and install CHDK.
  3. Put the SD card's lock switch into the "locked" position and put the card into your camera.
  4. Start your camera normally. You should see the red CHDK logo appear for a few seconds.
  5. Press the defined <ALT> key  for your camera to enter CHDK mode. The <ALT> key is usually either the PRINT or PLAY button. However, some cameras use the DISP, VIDEO, HELP or FACE buttons so you might have to try different buttons to find the right one.
  6. Press the MENU button in <ALT> mode to access the CHDK configuration menus.  Press the FUNC/SET button to bring up the scripting menu.
  7. Press the shutter button in <ALT> mode to run the currently loaded script.
  8. Exit <ALT> by pressing the <ALT> button again. Override settings and onscreen display option will now enabled while you are back in normal Canon mode.

CHDK : What's it all about?

There are two segments in the digital camera market: people who just want to snap pictures, and professional photographers. Accordingly, many camera manufacturers have two "families" of product:

  • Point And Shoot (P&S) cameras intended for consumers who want to take snaps. P&S cameras are inexpensive, small, easy-to-use digital cameras, without fancy lenses or other accessories.
  • DSLR (Digital Single Lens Reflex) cameras for professionals and advanced amateurs. Digital SLR cameras are more versatile, have higher quality removable lenses. but are also more complicated, heavier, and expensive. DSLR cameras offer much more manual control over the camera settings, to support e.g. RAW files and bracketing.

To help bridge between P&S and DSLR cameras, CHDK (Canon Hack Development Kit) software makes some of the extra features found on DSLR cameras available on Canon's P&S cameras.

Good places to read about digital cameras are Dpreview (offers lots of camera reviews) or the Canon PowerShot Talk, a forum used by people who love to talk about Canon cameras.

CHDK : What does it offer?

CHDK adds many new features to your P&S camera.  Listed below is a subjective list of some of the more popular things people do with CHDK.

  • time lapse (or intervalometer) sequences
  • RAW & DNG photography
  • motion detection, especially for taking picture of lightning
  • stereo (3D) photography
  • multicamera "bullet time" rigs
  • remote shutter switch
  • meteor / star photography
  • HDR photography
  • KAP & UAV photography
  • and much, much more ...

 A more complete list of features can be found here :  CHDK Features

Will CHDK damage my camera?

CHDK is an unofficial addition to your camera, not supported or approved in any way by Canon so there is always a chance that something can go wrong. However, there are many thousands of satisfied CHDK users and so far there are no verified reports of any damage. You can check out the wiki page dedicated to tracking suspected failures here : Camera failures suspected to be caused by CHDK

CHDK does not make any changes to the factory-installed firmware in the camera. CHDK is stored on the same memory card as your photos. When you remove the SD card or delete the CHDK files, the digital camera reverts to its original state.

A photographer who uses CHDK is like a car enthusiast who fits an aftermarket performance chip to control the engine. There's no absolute guarantee that it won't break anything, and the original manufacturer will certainly disapprove of it. But most people seem to get what they want from aftermarket modifications, and CHDK is no exception.

It is theoretically possible that CHDK firmware could drive your camera beyond Canon's operational limits. Damage could happen because of a inadvertent programming error (such as driving the zoom motor too frequently or too quickly), or due to deliberate malware. Malware is unlikely, because crackers would get nothing from damaging your camera. Since most cameras are not networked, crackers could not take it over the way they could take over a computer.

People have encountered CHDK bugs that "crash" the camera (the camera freezes and does not respond to controls). This can be easily fixed by power cycling the camera. Alpha versions of CHDK aren't fully tested. They are released so experts can test with them. If you are not comfortable dealing with buggy software, use only official, stable and tested versions.

More technical information can be found at:  What is the worst that can happen?   and  Can CHDK damage your camera?

Is there a manual?

There is a lot of documentation available for CHDK.  Unfortunately, much of it is obsolete, incomplete,  or just plain wrong.  Listed below are several reference works that can be trusted :

Older documentation that may still be useful includes :

And you can read the Lifehacker's Guide to CHDK (and the older Lifehacker's Guide to CHDK)

Installing CHDK

CHDK installation is a simple matter of adding some files and folders to a correctly formatted camera SD card.  For many years, the hardest part of using CHDK was getting those files successfully loaded onto the SD card.  There are many websites and YouTube videos describing how to install CHDK, most of them obsolete and some of them just plain wrong.  

WARNING: This process may erase all files and folders on your SD card!

Fortunately,  there is now a simple utility called STICK available for PC, Mac and Linux computers that will automatically format your SD card and install the correct version of CHDK for your camera.  You can read all about it and download from this link : 

link : Simple Tool for Installing CHDK (STICK) for Windows, OSX and Linux

If you want to understand more about installing CHDK, including alternate methods of installation,  the most current information about the loading CHDK onto a SD card is always available here :

link : Instructions on How to Prepare Your SD Card

Some important notes about installing CHDK :

  • CHDK makes no permanent changes to your camera.  It must be loaded from the camera's SD card each time the camera starts and it goes away completely each time the camera is turned off. 
  • CHDK may not be available for your Canon P&S camera.  Volunteer developers must adapt CHDK for each new Canon camera. The adaptation takes some time, so CHDK might not be immediately available for a new Canon camera model
  • CHDK only works with Canon point-and-shoot digital cameras. CHDK does not work with cameras from other manufacturers, nor with Canon's dSLR cameras.
  • A unique version of CHDK is needed for each Canon camera model and firmware version of that camera. For example, the version of CHDK for the Canon G9 camera does not work with the Canon SX200 IS camera.  Likewise,  the version of CHDK for the G9 with firmware version 1.00d will not work on a G9 with firmware version 1.01c.   If you use the STICK utility, it will sort all of this out for you.

Starting CHDK

Once you have CHDK installed on your SD card, it can be started in two different ways. These ways are called the "Firmware Update" method and the "SD Card Lock" method. The "Firmware Update" method will work on any SD card but requires you to manually start CHDK from the Canon menu. The "SD Card Lock" method requires a specially formatted SD card but will automatically load CHDK each time you start your camera. Note at that the STICK utility configures the SD card to support both methods.

Firmware Update Method

  1. Start your camera by pressing the "Playback" button (not the On/Off button.)
  2. Press the MENU button.
  3. Scroll down to the bottom of the menu, where you will see a menu entry called "Firm Update". Press then Func/Set button to select that.
  4. In the Firm Update screen, where it says "Update firmware version?  1.0.0.0 -> 1.1.0.0" select OK.

The camera should now restart and the CHDK logo will appear. Note that you have to repeat this process each time you start the camera.

SD Card Lock Method

  1. Remove the SD card from your camera and move the small card lock switch to the locked position.
  2. Start the camera normally by pressing the On/Off button or the playback button.

The camera will start and the CHDK logo will be displayed.

Note that if you press and hold the On/Off button until the lens opens then the camera will start in shooting mode. Otherwise the camera starts up in playback mode by default.  Also, note that CHDK will cause the camera to ignore the lock switch on the SD card, such that photographs will be stored on the card even though the switch is in the locked (or "Write Protect") position.

CHDK is loaded!

If you have correctly configured your SD card using the steps listed above, and started CHDK as described, you should see the red/white/black CHDK logo appear briefly on your camera's LCD screen when the CHDK loads. Once that is done, you are ready to start using CHDK.

First Steps

The first thing you will notice when CHDK loads and you are in shooting mode is new OSD (On-Screen Display) icons. At the top of the display, you should see from left to right :

  • a number giving the available card space in MB.
  • battery icon with the charge remaining capacity in percent right below it
  • a clock icon showing the current time
  • the temperature of the camera's optics
  • at the bottom of the LCD display, a small white bar graph shows the used space on the SD card.

Using the CHDK OSD layout editor,  you can change the position of these icons,  add additional icons,  change their configuration, and enable them to display in playback mode as well.

Getting into CHDK <ALT> Mode

To configure CHDK and use its various options,  you need to enter what's known as <ALT> mode.  In <ALT> (or alternate) mode, the camera's buttons and LCD screen are taken over by CHDK, giving them different functionality from what they had in normal Canon mode.    To enter <ALT> mode,  you need to press the ALT key, which is just one of the camera's buttons that has been reassigned so that it starts CHDK.  

On cameras with a Shortcut/Print button, that is the default <ALT> button.  Other cameras use the Playback button,  or the DISP button,  or the Video button, or the Face button.   The actual button used by your camera can sometime be found in the Notes.txt file included with the CHDK distribution, on the CHDK wiki page for your camera, or by reading the porting thread for your camera on the CHDK forum.  

When the ALT button is pressed, a small red <ALT> symbol will appear at the center of the LCD screen.  You can now launch scripts,  issue keyboard shortcuts, or open the CHDK menu by pressing the Menu button.

Note that you can still use the ALT button for its normal Canon assigned purpose. Simply hold it down for more than 1 second and it will initiate the Canon function rather than start CHDK ALT mode.

Menu Navigation

CHDK makes use of many of the buttons on your camera when you are in <ALT> mode.  

A720 back buttons

CHDK buttons

The up / down / left / right buttons are used to navigate the menus.  They also have additional "shortcut" functions when pressed in conjunction with a "half press on the shutter button (see below). Pressing the MENU button button brings up the CHDK menu. Pressing it again closes the menu. Pressing the DISP button when using the CHDK OSD onscreen editor changes the amount the OSD icons move in response to the up/down/left/right buttons. Pressing the FUNC/SET button takes you immediately to the Script menu. Pressing the shutter button all the way (full press) activates the currently loaded script.

Using CHDK

<ALT> mode vs Canon Mode

Once CHDK is loaded on your camera, it is always running.

When you use your camera normally, it runs in the background, performing tasks like updating the CHDK onscreen display and watching for you to press the <ALT> button. Most importantly though, it will apply any overrides you have selected in the CHDK menus (exposure, focus, flash, ND filter, etc) when you actually take a picture. You do not need to be in <ALT> mode for this to happen (and in fact it will not happen in <ALT> mode).

When you enter CHDK <ALT> mode, you can do several things. First of all, you can press the MENU button and activate the CHDK menus. These allow you complete control of CHDK's configuration and operation. Secondly, there are a few special Key Shortcuts that are only active in <ALT> mode. Finally, and perhaps most importantly, you can use scripts while in <ALT> mode.

Starting in Shooting Mode

When you automatically load CHDK via the SD card lock method, you will notice that CHDK always starts the camera in "playback mode". You have to press the shutter button to switch to shooting mode. If you want to actually start the camera in shooting mode, then power up the camera by simply holding the On/Off button down until you observe the lens starting to extend.

Scripts vs Built-in Functions

One of the first things you will encounter when using CHDK is that some things are done using CHDK's built-in capabilities and other things are done using scripts (or small computer programs) that you load into the camera as needed.

In general, simple setup and configuration functions are typically built-in to CHDK as are certain things that would be difficult to implement with a script. Built-in function include the on-screen display icons, USB remote functionality, the histogram and edge overlays functions, shooting exposure and focus overrides and RAW/DNG image creation. However, many of these built-in functions can be enhanced and their behavior modified by the use of a script.

Built-in Functions

Exposure Overrides

Bracketing

Video

RAW

Edge Overlay

Histogram

Zebra

Grids

USB Remote

Miscellaneous Stuff

Scripted Functions

LoadScrptFromFile

Load Script

By definition script is a programming language that controls a software application.

It's like a taxicab: there is the car, the driver and there is you - the user. Once inside, you give directions on where you want to go. Also, you can tell the driver to go from here to there, to avoid this or that streets, to go fast or slow etc. So, the driver operates the wheel, the gas pedal, the brakes, the clutch, car light signals, avoids other cars or some potentially dangerous obstacles and, finally, brings you to your destination. The main power that moves this process comes, almost exclusively, from the car itself. But all this power would be useless without the taxi driver expertise. And, of course, none of that would have even started if not been for your command. Our camera's hardware is the car, your camera's firmware (plus CHDK) is the driver and the script is you.

CHDK scripts are written in a modified versions of uBASIC or Lua. Scripts allow control of many CHDK and camera functions.

For more information see:


How to Load and Run a Script

Switch to <ALT> mode, then press FUNC.SET, and select "Load Script from file", and choose a script from the Scripts folder. The other way is to go to Main Menu>Scripting parameters> Load script from file. (See image).

CHDK Video Features

Similarly as the RAW -> JPG procedure, Canon cameras transform real motion action in video format. This format is named Motion JPEG - similar to JPEG, the static image format. There are many video compression formats used nowadays: Moving Picture Experts Group Type 2 (MPEG-2) for DVDs and cable TV, MPEG-4 for Blue-ray DVD discs, Windows Media Video (WMV) for some computer video files, Flash Video (FLV) for YouTube videos, etc. M-JPEG has a significantly higher bitrate than these formats. That's bad, because the same amount of video time will take more storage space than other formats. But that's also good, because you lose less information in the compression activity and can edit more easily at your computer.

How to use
  1. Press the ALT button once.
  2. Press Menu once. The Main Menu will show.
  3. Press Down until you highlight Video Parameters.
  4. Press FUNC SET to activate it, the Video Parameters menu will appears.
  5. Go Down to the very first option Video Mode.
  6. Press Left or Right to alternate the options.

The first thing you'll see is Video Mode. There are two options: Bitrate and Quality.

  • Bitrate means that Canon will record your motion at a constant compression rate. The more bitrate, the more space will be used in your SD card and better will be the video quality. 1x is near the Canon default compression.
  • Quality means the Canon will record your motion at a constant quality. It means that, if necessary, the camera, by itself, will increase or decrease the compression rate to maintain the video quality constant. The more quality, more space will use at your card and better will be the video. 84% is the Canon default compression.


Remember:

  • When you choose Bitrate, the Video Bitrate number is the active setting.
  • When you choose Quality, the Video Quality number is the active setting.


Obs.: S5 do not have these CHDK video mode options, until now.

Enable optical zoom
Digital cameras have two types of zoom available: The optical zoom and the digital zoom.

  • The optical zoom uses lens refractions to magnify the objects, resulting in clear, sharp images.
  • And the digital zoom approximates zoom by magnifying the pixel size. It does some math to improve the result, but will always produce worse results when compared to the optical zoom. Objects will appear larger, but can lack definition and appear blocky.

Canon blocks the optical zoom during video shoots. That's bad because you will lose quality when you zoom things digitally. CHDK unleashes the optical zoom that the Canon's engineers blocked, but the drawback is that the zoom mechanism noise is recorded in your video as well.
Do some tests to get the best combination for you.


Customizing CHDK

There are a lot of different things you can do with CHDK.  And a lot of things you can do to customize CHDK to your liking. Many of these are buried deep within the CHDK menu structure, so to provide a guide some of the better ones are posted below.

OSD Icons

OSD Icon Positions

Languages & Fonts

Grids

CHDK Colors

User Menu

Edge Overlay

Histogram

Script Modes on Startup

Console

ALT Help Screen

Shortcut Keys

Splash Screen on Load / Startup Sound

<ALT> Mode Buttons

Disable LCD Off

Versions

Notice

In the early days of CHDK, many developers produced and maintained their own versions of CHDK. You will still find references to those here in the wiki. However, since 2010 there has really only been one version of CHDK maintained for general use - the one available from the autobuild server (executable) and svn site (source).


Interesting Links:

View from the core: Trunk history.

More answers.


Problems: Searching and Posting

- It doesn't work!
At this moment some people have difficulty with staying calm and reviewing their previous steps, looking for simple mistakes. If you do so and still can't make it work, I suggest a few steps for you to follow.

Searching

It is very likely that you're not the first person with this particular problem. So, start searching for others with the same problem, and you are likely to find solutions and advice.

Here on CHDK wikia: The search bar is in the top left of this page.
At the official CHDK forum you'll find the Setepontos Search tool.

Try searching from general to specific. Stop narrowing when your results become easily browseable.

Ex.: Let's say you have problems working with RAW. First try

  • RAW -> You'll get a lot of info about it! But your problem is to get the RAW from the camera to your computer.
  • RAW download -> But hey, you're a Windows user, so...
  • RAW download explorer -> Now pick some and see if it fits.

Some times you have to limit your search with a minus (-) sign to exclude some words. Ex.: You're having color problems in your pictures. So if you do the bottom search

  • color -> You'll have too much. Your problem is about JPG color problems, not RAW.
  • color JPG -> But RAW references keep coming.
  • color JPG -RAW -> now you get more suitable results.


Caution: The search function in the CHDK wikia (this site) needs at least 4 chars in search expression !

Posting

- Still doesn't work!

If your problem doesn't seem to be covered yet, you can open a thread at the CHDK forum about it.

  1. Be careful in choosing the correct section/subsection. If you have specific problems dealing with CHDK, this isn't exactly a developer matter. So, don't post at CHDK Development, go Using CHDK/General Help and Assistance on using CHDK stable releases.
  2. Put a short descriptive title in your thread.
    HELP HERE! or SOME AID!! or I'M DESPERATE!!!
    usually don't receive good feedback.
  3. Describe your problem as accurately as possible.
  4. List at least:
    1. Camera model and firmware version
    2. CHDK brand and version
    3. Operating system
    4. Card size and brand
  5. Wait.
    There is no Help Desk service. You have to count on the goodwill of other CHDK users like you.
  6. Don't beg for urgent help. But don't give up. Check answers on a daily basis.
  7. After someone answers you, reply and say if the proposed solution worked or not, and why. This will help others searching for answers in the future!
  8. Thank the person who helped you!
  9. Be polite and friendly, don't argue with others trying to help, it's a waste of your time.
  10. And when you know and can, help others.