Chdk in brief
Chdk is a firmware enhancement that operates on a number of Canon cameras. chdk gets loaded into your camera's memory upon bootup (either manually or automatically ). it provides additional functionality beyond that currently provided by the native camera firmware.
Chdk is not a permanent firmware upgrade: You decide how it is loaded (manually or automatically) And you can always easily remove it.
Please seeFAQAndFirmware usage page, As well as other pages on this Wiki, for more specifics on Supported cameras, details of features, scripting, downloading, etc.
[Edit]
A sampling of those additional features/functionality.
Main features:
- Save images in raw format
- Ability to run "scripts" to automate the camera
- Live histogram (RGB, blended, luminance and for each RGB channel)
- Zebra mode (blinking highlights and shadows to show over/under exposed areas)
- An "always on" full range battery indicator
- Ability to turn off automatic dark-frame Subtraction
- A higher compression movie mode
Additional features:
- A depth-of-field (DOF)-calculator
- File Browser
- Text Reader
- Calendar
- Some fun tools and games
[Edit]
Why wocould I want to use chdk?
- To get raw file capability on cameras that don't have that ability
- To get the ability to use scripts
- To be able to know the battery status at all times (not just when it's about to run out of power)
- You want or need any of the other enhancement features that chdk provides
What are scripts? ScriptsAre basic language programs that give you the ability to control the operation of the camera under program control. they have been used to add or extend the native capability of the camera: more flexible intervalometers, extended-range exposure compensation, extended bracketing ability, lightning photography, etc. see the script pages for more details.
[Edit]
Beyond "standard" chdk
Several developers have extended the basic features of chdk to add additional major functions. You'll find these extended features in "Special builds ".
There are several "motion detection" versions available that allow scripts to detect when motion (or any change in light intensity) occurs in one or more predefined regions of the images (the script can then take a photograph, a video, start a timer, etc) and there are some * very * cool applications based on this implementation.
There is a "stereo data maker" (SDM) version, specifically geared to stereo image applications (which also inmo-ates the motion detection routines ).
Additional video compression options (more or less), and the ability to go beyond the 1 Gbyte limit.
Use your USB port as a remote control/"cable release ".
SeeChdk special buildsSection at the bottom of the front page for more information, and then follow the links to the developers 'pages for the details.
[Edit]
Chdk: How do I get started?
[Edit]
Step 1. See if there is a chdk for your camera and firmware
You need to know your camera Model and Its firmware version. (Note: non-US models sometimes have different model designations, and sometimes references to the camera models here don't cross reference to those. you may have to seek out this information .)
A good place to start is onDownloadsPage.
[Edit]
Step 2. If chdk is available for your camera & FW (yeah !), Download it
You can find the links atDownloadsPage as well.
[Edit]
Step 3. Transfer the chdk program files onto your memory card
SeeFAQFor how to do this. (key point: there are two files, each about 110 Kbytes, that must be placed on the memory card in its root directory)
[Edit]
Step 4. Get chdk to 'boot' (or load) into the camera after you turn it on
You camera is a computer, and just because you load a program onto its hard disk doesn't mean that program will run every time you turn on your computer. You reallyMust read the FAQTo learn how to get chdk running. in brief, you have two options: either manual (you take steps to load it each time you turn on your camera) or automation loading (it loads each time the camera turns on, without any additional steps by you ).
[Edit]
Step 5. Use it!
ReadFirmware usage pageFor the basics. Then expore the rest of this Wiki for more information.
[Edit]
Chdk: What if there isn' t a chdk for my camera?
There is active development work on a number of cameras and/or firmware versions that currently are not supported. Check outFor developersPage for the listing of ongoing projects. (And consider helping out .)
In brief, these are the key steps in the porting process:
- Get the camera to somehow respond to something on the card.
- Using the process that got you step 1, and some mediumly complex electronics, (and a bit of luck and late night futzing) read out a copy of the existing firmware (e.g ., dump the firmware ).
- Analyze the firmware, find out where key routines are.
- Modify the source code to add the locations of these key routines
- Compile the software, debug it, and you 've got it!
- Flip out like a ninja! (This step is optional, but truly deserved! :)
The table at the begining ofFor developersPage shows known status of different camera's