You are on page 1of 73

CHDK 1.3.

0 User Manual

Based on the http://chdk.wikia.com/wiki/CHDK_1.3.0_User_Manual


from 26 November 2013
revision 1.3.0-3
This is a draft manual for the CHDK 1.3, the NEXT version of CHDK.

TableofConents
Introduction............................................................................................................................1
ImportantDisclaimer..............................................................................................................3
UsingCHDK............................................................................................................................4
LoadingCHDK...............................................................................................................4
Firmwareupdatemethod..........................................................................................4
BootableSDCardmethod.........................................................................................5
HasCHDKbeenloaded?............................................................................................5
Itsrunning!What'snext?..........................................................................................5
<ALT>Mode.................................................................................................................5
CHDKMainMenu...................................................................................................................7
EnhancedPhotoOperations...........................................................................................7
DisableOverrides.......................................................................................................7
OverrideTv................................................................................................................8
OverrideAperture......................................................................................................8
OverrideISOvalue....................................................................................................9
OverrideSubjectDistance..........................................................................................9
EnableFastEVSwitch?............................................................................................10
AutoFlash+Exp.Comp.........................................................................................10
ManualFlash+Power............................................................................................10
NDfilterstate..........................................................................................................11
DarkFrameSubtraction...........................................................................................12
OverrideJPEGQuality.............................................................................................12
BracketinginContinuousMode..............................................................................12
CustomAutoISO.....................................................................................................15
CustomCurves.........................................................................................................17
DisableOverridesonStartup...................................................................................18
VideoParameters.........................................................................................................19
VideoMode..............................................................................................................19
VideoBitrate............................................................................................................19
VideoQuality...........................................................................................................19
Videowithouttimelimit..........................................................................................19
ClearVideoParamsonStart?..................................................................................20
FastVideoControl...................................................................................................20
VideoQualityControl?...........................................................................................20
EnableOpticalZoom...............................................................................................20
MuteDuringZooming.............................................................................................20
AFkey......................................................................................................................20
ShowRemainingVideotime.....................................................................................21
RefreshRate(~sec).................................................................................................21
RAW(digitalnegative)................................................................................................22
SaveRaw.................................................................................................................22
Exceptions................................................................................................................22
OnlyFirstRAWinSeries.........................................................................................23
RAWFilePrefix........................................................................................................23
RAWFileExtension.................................................................................................23
RAWsubtractextension...........................................................................................23
II

RAWdevelop...........................................................................................................24
Manualbadpixelremoval.......................................................................................24
RAWbuffercached..................................................................................................25
Showrawsavingtime..............................................................................................26
DNGformat.............................................................................................................26
DNGfileextension...................................................................................................27
DNGversion.............................................................................................................27
Createbadpixel.bin..................................................................................................27
EdgeOverlay(panoramatool).....................................................................................27
EnableEdgeOverlay................................................................................................28
FilterEdges..............................................................................................................28
PanoramaMode.......................................................................................................28
Panooverlap(%).....................................................................................................28
Alwaysshow............................................................................................................29
Edgeoverlaythreshold............................................................................................29
EnableinPlay..........................................................................................................29
SaveEdgeOverlay...................................................................................................29
Load+SetZoom.......................................................................................................29
LoadEdgeOverlay...................................................................................................29
Histogram(exposuregraph)........................................................................................30
Showlivehistogram................................................................................................31
HistogramLayout....................................................................................................31
HistogramMode......................................................................................................32
Showhistogramover/underEXP.............................................................................32
Ignoreboundarypeaks............................................................................................33
AutoMagnify...........................................................................................................33
ShowHistoEvGrid..................................................................................................33
Zebra(showover&underexposure)..........................................................................34
DrawZebra..............................................................................................................34
Zebramode..............................................................................................................34
UnderExposureThreshold.......................................................................................34
OverExposurethreshold..........................................................................................35
RestoreOriginalScreen...........................................................................................35
RestoreOSD............................................................................................................35
DrawOverZebra.....................................................................................................35
RGBzebra(overexp.only)......................................................................................35
Scripting(programyourcamera)................................................................................36
LoadScriptfromFile...............................................................................................36
Scriptshootdelay(.1s)............................................................................................37
Autostart..................................................................................................................37
RestartLuaonerror.................................................................................................37
Loaddefaultparamvalues.......................................................................................37
Parameterset...........................................................................................................37
Saveparams.............................................................................................................37
CHDKSettings..............................................................................................................38
OSDParameters.......................................................................................................38
ShowOSD...........................................................................................................38
ShowStateDisplays............................................................................................38
III

ShowTemperature..............................................................................................39
InFahrenheit.......................................................................................................39
ShowUSBinfo.....................................................................................................39
MiscellaneousValues...........................................................................................39
DOFCalculator....................................................................................................42
Raw.....................................................................................................................43
Battery.................................................................................................................44
Filespace..............................................................................................................44
Clock....................................................................................................................46
ShowOSDinReviewMode.................................................................................46
OSDLayoutEditor...................................................................................................47
ColorSettings..........................................................................................................47
MenuSettings..........................................................................................................49
UserMenuEnable...............................................................................................49
UserMenuasRoot..............................................................................................49
UserMenuEdit....................................................................................................49
CenterMenu........................................................................................................50
Autoselect1stentry@menu.............................................................................50
Show<ALT>HelpScreen..................................................................................50
HelpScreenDelay...............................................................................................50
Language&Fonts................................................................................................50
Grid..........................................................................................................................51
RemoteParameters..................................................................................................51
EnableHalfpressShortcutKeys..............................................................................52
ShowSplashScreenonLoad...................................................................................52
Startupsound..........................................................................................................52
<ALT>ModeButton..............................................................................................52
DisableLCDOff.......................................................................................................52
ResetOptionstoDefault..........................................................................................52
MiscellaneousStuff......................................................................................................53
FileBrowser.............................................................................................................53
Calendar..................................................................................................................56
Textfilereader........................................................................................................56
Games......................................................................................................................57
Console....................................................................................................................57
Flashlight.................................................................................................................57
ShowBuildInfo.......................................................................................................57
ShowMemoryinfo..................................................................................................57
EnableLuaNativeCalls'...........................................................................................58
SDCard...................................................................................................................58
Createcardwithtwopartitions...........................................................................58
Makecardbootable.............................................................................................59
Swappartitions...................................................................................................59
EyeFi........................................................................................................................59
Availablenetworks..............................................................................................59
Configurednetworks...........................................................................................59
Forceeyefiwlanoff.............................................................................................59
Forceeyefiwlanon.............................................................................................60
IV

Debug......................................................................................................................60
Debugdatadisplay..............................................................................................60
PropCase/ParamsDatapage..............................................................................60
Taskliststart.......................................................................................................60
ShowMiscValues................................................................................................61
Memorybrowser.................................................................................................61
Benchmark..........................................................................................................61
ALT+/debugaction.........................................................................................61
RAMDump..........................................................................................................61
SaveROMCrashLog...........................................................................................61
CHDKtoPCInterfaceviaPTP..............................................................................................62
CCHDK2.CFG........................................................................................................................63
OSDMap(Diagram).............................................................................................................64
KeyShortcuts........................................................................................................................65
Acknowledgements...............................................................................................................67
GPLlicenseinformation........................................................................................................68

Introduction
What is CHDK?
Canon Hack Development Kit
CHDK is a unique software application developed by enthusiasts that enables extra
features for ported Canon "Point&Shoot" cameras. (Note:itwillnotrunon
DSLRcameras).
What can it do? CHDK enhances the capabilities of your camera in a non-destructive,
non-permanent way.
After loading CHDK, your camera will have the following extra functionality:
Shutter-priority (Tv)
exposure - via shutter
value override feature
Aperture-priority (Av)
exposure - via aperture
value override feature
Shooting in RAW, with
RAW Average, RAW
Sum, and RAW Develop
features
DNG (Digital Negative)
in camera conversion,
and USB download
options
Bracketing -Tv, Av, ISO,
and Focus bracketing,
using scripts, or in
continuous or custom
timer modes
Live histogram (RGB,
blended, luminance and
for each RGB channel)
Zebra mode (a live view
of over and underexposed areas of your
picture) for many
cameras
Depth-of-field (DOF)calculator, Hyperfocalcalculator with instant
Hyperfocal and Infinity

focus-set, and more


Battery indicator
RAW and Video spaceremaining gauges with
custom low-limit alerts
USB cable remote shutter
release

higher
High-speed Flash Sync at
all speeds up to 1/64,000
second
Custom, user-editable
visible grids for framing,
cropping, and alignment
(not all cameras)

Motion-detection trigger
- automatically fires
camera on motion
detection. - Ability to
capture lightning strikes.

File browser

Adjust Video quality and


size (compression)
adjustable while
recording

Calendar

Elimination of 1 Gig
video-size limit (for most
DIGIC II cameras)
Zoom during video
function - for cameras
without this feature
Shutter, Aperture, and
ISO Overrides
Ultra-long shutter speeds
- at least up to 64
seconds - and longer for
supported cameras
Ultra-fast shutter speeds
- up to 1/10,000" and

Text reader
Text editor
Games
Fully customizable
CHDK display, info
placement, user colors,
fonts in menus, etc.
Multi-language Interface
- CHDK supports many
languages
Custom CHDK User
Menu - for instant recall
of up to 10 favorite
functions
Scripts execution including intervalometer,
motion detection, etc
And many others.

These new features are accessed through CHDK-specific menus, rather than the default
camera menus. As CHDK is continually evolving, new features are added as they are
developed. Updating occasionally will ensure you have all the latest features for your
camera.
How is all this possible? Firstly, by the skill, persistence, and generosity of the
developers, and other contributors to the CHDK project. Secondly, in the same way that
your computer hardware runs an operating system, such as Windows, Mac OS, or Linux,
your Canon camera also has an operating system in it. And in the same way that the OS
runs Photoshop or Zoombrowser on your computer, the OS in your camera is also able to
run programs such as CHDK.
Does CHDK permanently alter the camera? No. CHDK is simply software. Just like
a computer, when the camera is turned off all the software disappears from memory until
it is turned on again and CHDK is reloaded. Also like some software, there is an option to
automatically start CHDK when the camera starts ("booting").
How does CHDK get on the camera? In the same way that you install Photoshop or
Zoombrowser onto a computer (by copying the software onto your hard drive from, say, a
CD) CHDK is installed by copying the CHDK software onto one of the cameras "drives" the SD flash memory card.
How does CHDK software get copied to the flash card? CHDK can be copied to
your SD flash card using a file manager such as Windows Explorer. A card reader is used to
connect the SD flash card to your computer. Once connected, the SD flash card appears
like any other hard drive on the computer. Your printer may contain a usable card reader.
Card readers are fairly inexpensive, and can simplify transferring of files, and thus files can
be transferred via USB. See also: Raw Parameters, and DNG visible via USB.
Where can CHDK software be downloaded? Visit this Wiki : Prepare your SD card
to learn how do to find the correct CHDK version for your camera and how to prepare your
SD card to use it. If this is your first time using CHDK, it is strongly recommended that you
use the STICK Utility to download CHDK and setup your SD card.
Thanks to the Authors
Many thanks go to all the contributing writers over the past few years, please see
Acknowledgements at bottom of this page

Important Disclaimer
This CHDK User Manual is FOR INFORMATIONAL PURPOSES ONLY, and
offered WITHOUT ANY WARRANTY, without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. The
information offered is for experimental application.
CHDK is experimental! CHDK comes with no warranty for any use - use it at
your own risk.
Before downloading and using the CHDK software, careful consideration should be given
to the following:
Usually the first question is: Can CHDK damage your camera?
The short answer: It is unlikely, but theoretically possible. CHDK is created by reverse
engineering an undocumented system that directly controls the hardware. Because of this,
it is impossible to be certain that it is completely safe.
The long answer: It is very unlikely that CHDK will permanently harm your camera. There
have been no confirmed reports of CHDK damaging a camera, and both the original
rmware and the CHDK developers use safeguards to prevent situations where this could
happen. There is a wiki page where suspected issues with CHDK can be documented :
Camera failures suspected to be caused by CHDK
There are at least two ways in which CHDK could theoretically do damage:
1. By commanding physical hardware to do something it was not designed to do. For
example, it is possible to command the lens hardware to move when the lens is
closed. It is also possible to move lens hardware beyond limits allowed by Canon's
rmware, using scripts, or overrides. For an example of this, see Tele-Super-Macro
Mode Comments.
2. By overwriting the internal ash ROM where the Canon rmware is kept, rendering
the camera un-bootable. Since CHDK is never intended to write directly to internal
ash, it would take an extremely unlikely sequence of events for this to happen.
It is worth noting that neither of these cases has resulted in actual damage, and both would
require direct input from the user. If you are concerned about this, the risk can be
minimized by avoiding untested developmental builds (such as test builds posted on the
forum) and being selective about what scripts you run.
One more thing: There are tens of thousands of satisfied users all around the world
enjoying the benefits of CHDK.
See also GPL license information below.

Using CHDK

Once CHDK is installed, you will need to start it on your camera. As explained earlier,
CHDK does not actually change your firmware, so it must be started each time the camera
runs.

Loading CHDK
There are two methods of loading CHDK: The Firmware Update method and the
Bootable SD card method. Both methods are fully described on the Prepare your SD
card wiki page.
Firmware update method
Use this method to load CHDK once, manually. If this method is used, CHDK will be
unloaded when the camera is powered off, and you will need to repeat the steps each time
you want to use it. This is a good method if you just want to try CHDK out, or only use
CHDK occasionally. Despite using the Canon Firmware update menu, it does not update
the firmware.

Start the camera in playback mode. On cameras that with a distinct PLAY button
(usually a blue triangle) use that to power the camera on instead of the power
button. On cameras with a play/record switch, ensure it is in the PLAY position.

Press MENU, then press UP once.

An option to update the firmware appears. Select that option. (Pic 1)

Conrm the update, (OK-press FUNC.SET (Pic 2)

If the firmware update option does not appear, there are a few common causes
The camera was started in record (picture taking) mode. Switching to playback after
starting in record mode does not enable the firmware update menu, the camera
must be started in playback mode.
The CHDK port for the camera does not support this method. Check the wiki page
for your camera model. If this method is not supported, you can use the bootable SD
card method.
The files were not correctly installed on the card. If you installed from a Mac, be
sure to check FAQ/Mac#Still Having Trouble?
Bootable SD Card method
Use this method if you want CHDK to run every time you start your camera. The steps
needed to use this method depend on the camera, type of card and OS of the PC used to
install CHDK. See Prepare your SD card for details. After the card is prepared, CHDK will
load automatically when the camera starts if the card is locked. To disable CHDK
temporarily, just unlock the card.
Has CHDK been loaded?
When CHDK starts, this splash screen
appears on the LCD for about 2 seconds,
showing CHDK is loading to the cameras
memory. (The splash screen can be disabled
in Main Menu > CHDK Settings ).
Its running! What's next?
When the splash screen is cleared, CHDK will
be running in the background. Some features
are enabled by default, for example, the
battery and memory indicators. However, most features are inactive by default.
To make changes to how CHDK operates, you start by entering <ALT> mode.
<ALT> Mode
When <ALT> mode is enabled the function of certain buttons on the camera will change,
allowing you to start accessing CHDK features. For example, pressing the FUNC.SET
button will display the CHDK Script menu, rather than the usual function associated with
FUNC.SET
There are different ways to enter <ALT> mode, depending on the style of camera and how
it was configured for CHDK operation. For <ALT> mode, try one of these key
combinations :

most cameras press the PRINT, SHORTCUT or PLAY button (with a


"momentary" short press - don't hold the button down for more than 1 second.).
5

Some cameras with exceptions to the above options :

A480 Press the MODE button

A3000, SX120, SX130 Press the FACE button

Ixus220/elph300hs, Ixus1000/SD4500 Press the VIDEO button

Note:ChecktheCHDKWikipageforyourspecificcamera'sCHDK
features.ForinstancetheMODEbuttonfor<ALT>oncertainmodels
maybelistedthere.Ifitsnot,pleasefeelfreetoupdatethe
informationonthatpage.
When you enter <ALT> mode, the indicator
will appear at the bottom middle of the
OSD. In <ALT> mode you can now use CHDK Scripts, and also enter the CHDK Main
Menu. When you have finished customizing how CHDK operates, and/or using scripts,
press the <ALT> mode button to exit <ALT> mode. You can now use the camera to take
photos or video, and its operation will be changed by the options you set in CHDK. . . .
Remember - unless you are running a script, you must exit <ALT> mode to actually take
photos. Any overrides you have selective will be active once you leave <ALT>mode.
This last point should be emphasized by itself: you must exit <ALT> mode to
take photos normally !
And another final point : you must also switch the camera from playback
mode to shooting mode to take pictures.

CHDK Main Menu


The Main Menu is the top-level menu from
which all CHDK functions are enabled and
customized. To access the Main Menu, set the
camera to <ALT> mode and press the MENU
button. Use the Directional buttons
to navigate the Menus.

Like Canons menus, pressing the


FUNC.SET button will select the
highlighted menu option. Pressing the DISP. button will move back one menu level.
Pressing the MENU button will exit the current operation.

Enhanced Photo Operations


The Enhanced Photo Operations menu is used
to configure the CHDK functions most directly
related to actually taking a photograph. These
are specifically those functions related to
exposure and focus settings.
Disable Overrides
[No, Yes]
Allows the disabling of all overrides,
regardless of the settings in the other
menu entries.
No - Overrides are individually enabled & disable via individual menu items (below).
Yes - All overrides are disabled regardless of the state of the individual menu items
(below).

Include AutoISO & Bracketing


Enable [?] / Disable [ ]
Includes AutoISO and Bracketing settings in the "Disable Override" setting. If not
enabled then the AutoISO and Bracketing settings will not be affected by the "Disable
Override" setting.
NOTE:youmustexit<ALT>modetoshootpictureswithoverride
adjustmentsapplied.Alsoremembertouncheckthe"Disable
OverridesonStartup"menuitemifyouwanttoretainyour
overridesettingsafterarestart.
Override Tv
This feature allows you to override the cameras shutter speed in all auto and manual
modes with the speed you select. Shutter speeds can be longer than 60 seconds or as short
as 1/100,000th of a second. Please note that the actual speeds available are dependent on
the camera used and other conditions such as the aperture setting.
There are three ways to enter a Tv override, selected by the Override Tv type -> menu
item.
Ev Step The override shutter speed is set in fractional units using standard values
from the days of film cameras. Enter the desired shutter speed from the Ev Step
Value menu item that appears below when you select this option.
ShrtExp The override shutter speed is set in decimal seconds. Enter the desired
shutter speed from the Short Exp. Value menu item that appears below when you
select this option.
LongExp The override shutter speed is set in hours:minutes:seconds. Enter the
desired shutter speed from the Long Exp. Value menu item that appears below
when you select this option. Use the zoom lever to move between the different
hh:mm:ss fields
Note that Tv override is enable when the selector box beside the Value field is enabled.
Use the Func/Set button to toggle it on & off.
Override Aperture
(Only available on cameras with an actual aperture / iris. mechanism)
[?] [ 1.8 32.00]
This feature allows you to override the cameras aperture settings using standard f-stop
values. Simply select the desired setting and the camera will use that setting in all auto and
manual modes. Please note that the actual aperture values available may depend on the
camera's construction and zoom position.
The [?] field is used to enable or disable the override.

Override ISO value


[?] [ 0 - 10000]
This feature allows you to override the cameras ISO setting. Select the desired ISO setting
and the camera will use that setting in all auto and manual modes.
The [?] field is used to enable or disable the override.
Notes:
ThevaluesenteredintheISOoverridemaynotbeexactly
equivalenttothevaluesdisplayedintheCanonUIand
EXIFimagedata.Internally,thecamerausesadifferent
ISOvalueforexposurecalculations("real"ISO)and
display("market"ISO).Asofrelease1.2.0,CHDKISO
overridesuse"market"valuesbutthe"real"valueused
internallyisusuallyalittlelower.Theresultisthat
thedisplayedvaluewillsometimesnotexactlymatchthe
reportedvalueintheCanonUIorimageEXIF.
CHDKallowsyoutoentervaluesfarbeyondthoseavailable
intheCanonfirmware,buttheminimumandmaximumISO
actuallyachievedusuallyfallveryclosetothelimitsin
theCanonfirmware.ISOoverridegivesfullcontrolofISO
settings,butdoesnotusuallyextendtherangeof
availablevalues.
Override Subject Distance
For cameras without manual focus capability, the Override Subject Distance setting can be
used to manage the camera's focus setting.
[Off/On/Inf] [ 0 - 65535]
Enter the focus distance in mm from the lens. Use the DISP / SET button to toggle
between:
Off : override disabled
On : override enabled
Inf : override enabled and set to infinity
Depending on camera, you may need to activate AF lock for subject distance override to
work. Disable any camera function that tries to alter the focus, for example: "Servo AF",
"Continuous AF".
Note : Manual focus adjustments can also be achieved with CHDK shortcut keys. In
<ALT> mode, using the LEFT / RIGHT keys to adjust the Value Factor and the Zoom
lever to adjust the Subject Distance, (or on cameras without a zoom lever use the DISP.
button. Infinity is immediately selected by pressing the UP key, and for Hyperfocal
adjustment based on current F-stop and zoom focal length, press the DOWN key.

Enable Fast EV Switch?


[?] [1/6Ev 4Ev]
Turns the UP and DOWN buttons into quick EV compensation buttons. You no longer
have to press the FUNC.SET or MENU buttons to adjust your EV settings while shooting.
By pressing UP or DOWN buttons the EV increased or decreased by the amount specified in
the menu item. There is also a screen display showing your chosen EV-compensation
settings by whatever step-size you have chosen (see Step Size (1EV)?) below). It is
advisable to move the OSD EV override display over the camera's own to prevent
confusion.
You will see a real-time change in the EVF/LCD as you change the EV values with this
short-cut. It also works while the Zebra Mode is engaged. You can ne-tune the Zebra alert
just by pressing the UP and DOWN buttons with half shoot. When used in conjunction
with the Curves "Auto DR" Mode you should never miss another blown highlight or
dropped shadow again. One drawback: If using the UP and DOWN buttons during a halfpress to see the Zebra alerts while changing your EV setting, it will toggle the "Disable
Overrides" on and off if you have that feature engaged as well. A small price to pay for the
ability to have these amazing features. One work-around, set your EV step-size to 1/2 what
you normally would use, then the "Disable Overrides" shortcut will always toggle back to
the original ON (or OFF) on every 2nd EV +/- press, effectively resetting it where you
wanted it in the rst place.
See: > http://chdk.setepontos.com/index.php/topic,2595.msg24211.html#msg24211 and
http://chdk.setepontos.com/index.php/topic,2501.msg23321.html#msg23321
Note:Thisfeaturemaynotworkproperlyonallcameras.
Notealso:Thischangeisnotsavedbetweencamerapowerdowns.If
youwouldalwaysliketostartoutwithasmallnegativepresetEV
valuetoavoidblownhighlights,thenuseCanon'sownEV
compensationsettingforyourstartupEVvalue.ThisFastEV
Switchwillreectthatvalueonstartup.
Auto Flash + Exp. Comp.
[?][-3 to +3]
When selectedm, enables automatic flash exposure control when

the camera is set in manual


mode (for Tv, Sv, Av). Also allows manual compensation of flash exposure. Useful for using
electronic "through the lens" (eTTL) exposure control when using external or internal flash
while other setting are locked manually.
Manual Flash + Power
[?][Min/Med/Max] ( Note:useMaxsettingwithcautionasitwill
causeaveryhighbrightflash.)
This feature is used for optional control over camera flash output, allowing give 3 separate
steps in flash output power.

10

Will override the flash power setting when then camera exposure control decides to fire the
flash - especially if the camera is setup to force the flash to fire. Because there is no
preflash with manual flash, force manual flash can be used to advantage when using slave
flash equipment.

Pics thanks to Walqas


ND filter state
(For cameras with an ND Filter)
[Off/In/Out]
When the camera detects a really bright scene, it will swing the ND filter inline with the
lens and sensor. This if primarily used to allow the camera to shoot at a lower shutter
speed, useful in bright light shooting situation where some motion blur may be desirable
(fireworks) or where the scene is so bright that the camera must shoot outside of its normal
range. With the ND filter in, the camera can select a slower shutter speed without overexposing the entire scene. With CHDK, you can choose to keep the ND filter out, and just
select a faster shutter speed to compensate.
11

Select one of the options :


Off means the camera will automatically control the ND filter state.
In means the ND filter is swung in.
Out means the ND filter is kept out.
Dark Frame Subtraction
Controls the application of the Dark Frame Subtraction feature of your camera. Dark
Frame Subtraction is a function used to reduce the effects of sensor noise - especially
useful when exposure times are 1.3 seconds or longer. When dark frame subtraction is
enabled, the camera essentially takes two pictures with the same exposure time - once with
the shutter open and then again with the shutter closed. By subtracting the second frame's
pixel values from the first frame's, the camera automatically removes most sensor thermal
noise from the image.

Auto Performs a DFS on exposures 1.3 seconds or longer.

Off Never performs a DFS.

On Always performs a DFS.

By always performing a dark-frame subtraction the noise caused by the hot-pixels will be
removed from any image. There will be an increase in processing time equal to twice the
shutter open time.
Override JPEG Quality
[ Off, Superne, Fine, Normal ]
Allows you to override the JPG quality setting selected in the Canon menus. Some cameras
do not allow a "Superfine" setting in the Canon menus so this menu item allows you to
select "Superfine". Actual quality changes in Superfine mode are camera dependent.
Bracketing in Continuous Mode
Bracketingfeaturesareenabledwhenthecameradrivemodeisset
tocontinuousorwithcustomtimeronsomemodels.Fornewer
camerasyoucanusealsothehighspeedburstmode.
Bracketing is the practice of making several
exposures of a scene, with each exposure
differing from the next by predetermined steps
in exposure or focus settings. Bracketing is used
to easily capture a range of exposures so that
the best exposure can be selected at a later time.
Bracketing is also used to create a series of
exposures which will be combined using
methods such as HDR processing. In order for
bracketing to work, the camera must be in
continuous mode, or the custom timer is set to
take more than one shot. The sequence stops
when the shutter is released in continuous
mode, or the number of shots set for the custom timer is reached.
12

Set camera Custom Timer in Canon


Menu
TV bracketing value
[Off, 1/3 4 Ev]
Set this value to bracket via exposure time. A value of 1 will double or halve the
exposure time for the following exposures.
AV bracketing value
[Off, 1/3 4 Ev]
Set this value to bracket via aperture. A value of 1 will open or close the aperture by 1
stop for the following exposures. (only available for cameras with an adjustable
aperature)
Subj. Dist. Bracket Value
[*] [0 30000]
Set this value to enable focus bracketing. This feature is only enabled during manual
focus mode. This feature allows you to specify the manual focus distance in
millimeters.
ISO bracketing value
[*][0 10000]
Set this value to bracket via ISO.

13

Bracketing type
[+/-, -, +]
BRACKET in the OSD. With all bracketing types the first exposure uses the current
exposure settings of the camera. The exposure settings are adjusted as follows:

+/This bracketing type will alternatively apply the bracketing value by first
increasing then decreasing the exposure value like this: 0 Ev, +1Ev,
-1Ev, +2Ev, -2Ev, etc. Bracketing will continue until the shutter is released,
or the number of shots set for the custom timer is reached. For example,
TV bracketing is set to "1 Ev", and, when the shutter is half-pressed, an
exposure time of 1 s is registered. When the shutter is fully pressed the
exposures will be at these shutter speeds: 1 s, 1/2 s, 2 s, 1/4 s, 4 s, etc.
+

This bracketing type works as above but will only increase the exposure
value. Using the above example, the exposure times would be 1 s, 2 s, 4 s,
etc. Once the cameras limit is reached, subsequent exposures will occur at
the maximum setting.
This bracketing type works as above but will only decrease the exposure
value. Using the above example, the exposure times would be 1 s, 1/2 s, 1/4
s, etc. Once the cameras limit is reached, subsequent exposures will occur
at the minimum setting.

Disable Bracket Values on Startup


Enable [?] / Disable [ ]
Enable this option to turn off bracketing when the camera is turned off.
Add raw-suffix
Enable [] / Disable [? ]
In bracketing mode add a suffix to the raw filename, so that later you can easily
identify the RAWs that were created during bracketing.

14

Custom Auto ISO


Canon P&S cameras typically allows ISO values
to be either a fixed number (eg ISO 80) or an
"Auto" value. There are no user defined setup
options in Auto mode, the algorithm used is
fixed and not configurable.
CHDK Custom Auto ISO overrides Canon's
"Auto ISO" mode. It gives the ability to define
the permissible range of ISO values to be used,
the minimum allowable shutter speed, and
some fine tuning of exposure compensation.
Custom Auto ISO trades off ISO for shutter
speed based on settings in the Custom Auto ISO
menu. It tries to set the camera's ISO setting as close as possible to a Min ISO setting. This
is to minimize noise in the photograph. However, as it lower the ISO value, the shutter
speed must also be lowered to compensate and maintain the correct exposure. Typically,
there is a minimum acceptable shutter speed needed to avoid blur due to camera shake or
subject movement. This minimum can be set to a fixed value or calculated automatically
based on the current lens focal length setting and user defined factors related to camera
steadiness and camera image stabilization ability.
For example, if the camera set ISO 100 at 1/8s, and AutoISO is configured to allow ISO50400 with a 1/15s minimum shutter speed, then Custom Auto ISO will shift the ISO setting
to ISO200 to maintain a 1/15s shutter speed.
This feature is available in all camera shooting modes except for Manual (M), Shutter
priority (Tv) and Stitch Assist (to prevent using different settings for each panorama part).
Enable Custom Auto ISO
Enable [?] / Disable [ ]
This is the master switch for this feature.
Minimum Shutter Speed
[Auto, 1/8 - 1/1000s]

Auto - This is for use when photographing still-life, landscapes, etc. It will use the
factors below to prevent camera shake, but will assume the subject holds still.

Numerical setting - hint to the camera what the optimal shutter speed is for the
subject you are photographing.

15

The camera will try to use this value or a faster one as much as possible (to prevent
blur), e.g.
1/8s - 1/30s - Slow moving subjects.
1/60s - 1/125s - Kids, Pets, general movement
1/250s - 1/1000s - Sports, Fast action.
User Factor (1/FL/factor)
[1-8]
This setting is only used if Mimimum Shutter Speed is set to Auto mode. It accounts
for the users ability to hold the camera steady. It is based on the old rule that the
shutter speed should be no less than 1/focal-length. Start by dividing the effective
focal length of the lens by the actual focal length. The answer is generally somewhere
around 6. Then increase or reduce this amount by a self-assessed value of your
steadiness. If you think your hands are steadier than average then decrease by 20%. If
you think youre shaky then increase by 20%.
IS Factor (Tv*factor)
[1-8]
This setting is only used if Mimimum Shutter Speed is set to Auto mode. In
determining the ISO setting, the effectiveness of the IS system will be taken into
account. Use a setting of 4 if the IS is effective enough to give you a two-stop
reduction in shutter speed. Use a setting of 2 if the IS isnt very effective, or 8 if the IS
is very effective.
Min ISO
[10-200]
Sets the minimum "Auto" ISO that the camera can select.
Max ISO Auto
[100-3200]
Sets the maximum ISO that the camera can select when operating in "Auto" ISO
mode.
Max ISO HI
[200-3200]
Sets the maximum ISO that the camera can select when operating in "HI" ISO mode.
Fallback Min. Shutter Speed
[Off, 1/4 s to 1/1000 s]
If the shutter speed & ISO cannot be held within the range specified above, this
setting will be used as an alternate minimum shutter speed setting.
Setting this value to Off will disable the use of the alternative values.

16

Fallback Max ISO


[100 - 3200]
If the shutter speed & ISO cannot be held within the range specified above, this
setting will be used as an alternate maximum ISO setting.
Overexp Compensation
[Off, -1/3 Ev, -2/3 Ev, -1 Ev, -1 1/3 Ev, -1 2/3 Ev, -2 Ev ]
A fixed value exposure adjustment applied when the overexposure threshold is
exceeded for more than a defined percentage of pixels (see below). Set to Off to
disable this functionality.
OverExposure Threshold
[0-32]
The threshold value above which a pixel is considered to be over exposed. Units
unknown.
OverExposure Pixel Percentage
[0-20]
The percentat of pixels that can exceed the overexposure threshold before the
Overexposure compensation value is applied.
Custom Curves
Note:ThisCHDKmenuitemwillonly
appearoncameraswith10bit
sensors.Newercameraswith12bit
sensorsarenotsupported.
This function enables the use of custom "curve"
profiles to adjust the exposure of the RAW and
JPG images. Two types of curve profiles can be
used - CV & CVF. CV curves are the standard
RGB curves. CVF curves are special version
curves intended to avoid the color shift side
effect of the RGB curves. They are an
approximation of the luminance curves.
Except the SYSCURVES.CVF file it is recommended that curves files be stored in the
\CHDK\curves directory on your SD card..
See -> http://chdk.setepontos.com/index.php/topic,932.0.html
Enable Curve
Enable Curve [ None, Custom, +1EV, +2Ev, Auto DR]
None - No curve profile is applied.
Custom - Your custom curve profile is applied as-is.

17

The following three options require that you have a SYSCURVES.CVF file in your /CHDK
folder on the SD card. This file is included in the "full" CHDK packages and can also be
obtained from this link: CurveUpdate.zip (which also contains a curve editor).
+1EV - Increases shadow detail by 1EV step.
+2EV - Increases shadow detail by 2EV steps.
Auto DR (auto dynamic range):
Auto DR with Zebra is intended to be used for the direct application of the curves to the
shot - not for post processing (the feature is a mimic of the Fuji S100 +200, +400 Dynamic
Range). The workflow is:
1. Activate Zebra display
2. Activate Auto DR
3. Use the camera EV negative compensation to reduce the Zebra overblown highlights
shown on screen. You can use the (+/-) button on the back of the camera.
4. Take the shot. You will directly get the JPG without post processing. The luminance
of the darker areas will be raised while the highlight is compressed. During the RAW
develop process, you need to set the EV comp. to the value that you used to reduce
the highlight blown out when you took the RAW. Care should be taken with in
camera develop since it is a tricky art there (for White Balance issues in particular).
If the scene does not require you to reduce exposure to avoid blown highlights, the
Auto DR feature does not do anything.
Load Curve Profile
Load your desired curve profile from the \CHDK\CURVES folder. All curve profile files
except for SYSCURVES.CVF should be in that folder.

Disable Overrides on Startup


Enable[?] / Disable[ ]
if enabled, CHDK override settings will not be automatically cleared the next time the
camera is started.

18

Video Parameters
The Video Parameters menu is used to configure all aspects of recording video using
CHDK overrides.
Video Mode
[ Bitrate or Quality ]
Bitrate dictates a constant data rate. Video
compression (and hence, video quality)
expands or contracts as necessary to maintain
the data rate constant.
Quality Sets a constant compression level,
ensuring a defined level of quality regardless of
how much data that level requires.
Note1:FromownersreportsoftestingQualityoverrides,itis
evidentthatsettingsabovethestandardCanonsettinggainlittle
ifanyhigherquality.Howeverfilesizeswillincrease
significantly.Lowersettingswillloselittleinqualitybutwill
reducefilesize.
Note2:Bitratecontrolisnotavailableonallacameras.Ifnot
available,theoptionswillbeQualityandDefault.Bitrateand
Qualitysettingsthataresettoohighcancausememorybuffer
overload,andstoprecording,ared!willshowontheOSD.Also
alowqualitysetting,orneartofull/fragmentedSDcards,can
haveaneffectonthesesettings.
Video Bitrate
[ 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2, 2.5, 3 ]
The compression factor for Bitrate compression. 0.25 is the most compressed / least
quality and 3 is the least compressed/best quality.
Video Quality
[ 1 - 99 ]
The compression factor for Quality compression. 1 is the most compressed / least quality
and 99 is the least compressed / best quality.(Roughly ~70 - 80 is Canon equivalent).
Video without time limit
If available for your camera, enables byassing of the built-in time limits on video recording.
Note that this will not bypass the 4G video file size limit.

19

Clear Video Params on Start?


Enable [?] / Disable [ ]
When enabled this will clear all your custom video compression settings back to the
camera's own defaults on startup.
Fast Video Control
Enable [?] / Disable [ ]

Only a few cameras are supported. Pause and unpause video by pressing LEFT / RIGHT
while recording. Note:Whenusingthisfunctiontheremainingvideo
recordtimecalculationisreset,sothechangeisshown
immediatelyintheOSD.
Video Quality Control ?
Enable [?] / Disable [ ]
When enabled, using the UP / DOWN button will increase or decrease video quality or bitrate (depends on which one is enabled in the Video Mode override) - While you are
recording.
Enable Optical Zoom
Enable [?] / Disable [ ]
This feature allows you to use the cameras optical zoom during video recordings.

Mute During Zooming


Enable [?] / Disable [ ]
To eliminate focus mechanism noise. Please note that the zoom mechanism sound is very
loud in video, which is probably why it was disabled by the manufacturer.
AF key
[Shutter, Set]>
(Shutter button - half press, or FUNC.SET button) During video recording - camera
makes a single autofocus scan.

20

Show Remaining Videotime


[ Dont, hh:mm:ss, KB/s, both ]
Displays a positionable OSD element to show the video bit-rate, and the remaining video
recording-time, on the SD card,
Don't - No display of remaining recording time and/or video data-rate.
hh:mm:ss - Display a clock of remaining video-recording time left.
KB/s - Display video recording bandwidth (data-rate) in Kilobytes per Second.
Both - Display remaining video-recording time in both hours/mins/secs, and video
data-rate in Kilobytes per Second.
Refresh Rate (~sec)
Due to the nature of video's variable bit-rate and compression methods, subject dependent,
the "Show Remaining Videotime" has to be updated regularly by re-polling the card-space
and the bit-rate to calculate a fairly accurate time-remaining estimate. Choose, in seconds,
how often that you want this Video-Recording time-remaining to be updated. Shorter
periods of time are less accurate from each on-screen update to the next.

21

RAW (digital negative)


The RAW menu is used to configure all the CHDK setting necessary to enable the
recording of a RAW image each time the camera records a JPG image. Details about using
CHDK RAW can be found here : RAW
Save Raw
Enable [?] / Disable [ ]
Enables the saving of CHDK RAW files.
Enabling RAW does not disable JPEG, both are
saved.
Exceptions
Disable @ Video Record? Enable [?] /
Disable [ ]
Some cameras, the S-Series in
particular, have a dedicated "Video
Record" button where you can engage
that and also shoot individual stillframes during video recording. It was
found that RAW file-saving can
interfere in this process. Turning this
option on will ensure that you don't
miss a shot or your video.
Disable RAW @ Sports Enable [?] /
Disable [ ]
Disable RAW saving when the Mode-Dial is turned to Sports Mode. This
ensures that fast action sequences won't be missed due to RAW file-saving time,
when forgetting to disengage the RAW feature.
Disable RAW @ Burst Enable [?] / Disable [ ]
Disable RAW file-saving when using burst mode. Again, a handy override for
when RAW is not needed during fast burst-sequence shots (RAW enabled would
certainly increase time between shots)
Disable RAW @ Timer Enable [?] / Disable [ ]
Disable RAW file-saving when using the camera's Custom Timer mode (similar
to the safety feature for the burst mode).

22

Disable RAW @ EV Bracketing Enable [?] / Disable [ ]


Disable RAW file-saving when you are using any of the high-speed bracketing
features.
Disable RAW @ Edgeoverlay Enable [?] / Disable [ ]
Disable RAW saving while using Edgeoverlay.
Disable RAW @ Auto Enable [?] / Disable [ ]
Disable RAW saving while using Auto shoot mode.
Warn when Exception? Enable [?] / Disable [ ]
Displays a "RAW Disabled" OSD warning in a selectable color when any of the
RAW File-Saving Exceptions are enabled and RAW file-saving is turned on.

Only First RAW in Series


Enable [? ] / Disable [ ]
When shooting in continuous mode, this will only create a RAW capture for the first image.
Subsequent images will not have RAW captures. This allows rapid continuous shooting.
RAW File in Dir with JPEG
Enable [?] / Disable [ ]
Saves RAW files in the same folder as the JPEG files. If disabled then RAW files are always
saved in the 100CANON folder.
RAW File Prefix
[CRW_, SND_, IMG_]
CHDK lets you name the raw files with any combination of the standard prefixes IMG_,
CRW_, SND. If you are going to process the RAW files with DNG4PS-2 then setting a
prefix of IMG_ will allow DNG4PS-2 to retrieve EXIF data from the accompanying JPEG.
RAW File Extension
[.CRW, .CR2, .THM, .WAV, .JPG]
Set the extension to be used on RAW files. so the files are visible when you connect the
camera via USB.
RAW subtract extension
[.CRW, .CR2, .THM, .WAV, .JPG]
Using more than one extension with the same prefix can cause a problem with USB listing.

23

RAW develop
This feature is used to process a CHDK RAW file and create a JPEG from it. When selected,
a file browser window is displayed, Select a RAW file and press FUNC/SET, then the
message 'Switch Camera to Record Mode and take one shot' displays, Press FUNC/SET
again to back out of this menu, then use the <ALT> button to exit <ALT> mode. Press the
shutter button, instead of taking an image, it will process that selected RAW le and make
a JPEG le from it, that will be named according to whatever last JPEG lename is in that
folder and increment it by one (1). Remember that the EXIF data on this new JPEG le will
not reect the original RAW le. It will use whatever camera settings were available at the
time that you take the RAW Developing shot for the resulting EXIF data.
Notes:
This feature only works with CHDK raw or DNG, not Canon native raw.
If the Canon "I-Contrast" feature is on when using raw develop, you may see "ghost
image" artifacts in the resulting jpeg.
White balance and image processing for the jpeg will occur with the cameras
current settings. So, for example, you can use the MyColors settings to create Vivid
and Sepia versions of the same image, or simply tweak the sharpness or contrast,
and other settings. Normally, you would have to set MyColors before the image is
taken, and you would get only one image. In effect, RAW files can be kept as
'Masters' to develop from as desired, and to experiment with settings.
See also > File browser for RAW Merge.
Manual bad pixel removal
[ Off, Average, RAWconv ]
The CHDK Manual bad pixel removal tool allows the removal of defective pixels from each
image as it is taken. While Canon firmware will automatically fix bad pixels that were
found when the camera was manufactured, this CHDK feature will also remove "hot" or
"defective" pixels which are not known to the Canon firmware (e.g. pixels that became
defective during the camera lifetime). This feature affects both the JPG image and RAW image.
The first step in enabling bad pixel removal is to create a badpixel file. (Note:thisis
notthebadpixel.binfileusedforDNGfilecreation). This text file
should contain a list of the coordinates of all bad pixels to be fixed. To create this file, you
will need to capture a "dark frame" image by shooting an image with the lens completely
capped. For shutter speeds longer than 2 seconds, you may want to keep a collection of
"dark frame" image on hand for each exposure length that you will be using in the future,
as more warm and hot-pixels appear with extended shutter speeds. Convert your dark
frame images to a list of the bad / defective pixels using the show_bad tool from here:
show_bad direct download
CHDK repository tools section

24

NOTEthistoolonlysupportsrawfilesfromafewoldcameras.
Ifyourcameraisnotsupported,youwillneedtomodifythe
sourceorfindanotherwaytogeneratethefile.
Read more about this program & how to use it here: Hot/bad pixel removal
Once you have generated a file with the list of all the "bad" pixels for your camera, CHDK
can remove them automatically with the [Average] or [RAWConv] option selected. CHDK
looks for the files badpixel and badpixel.txt in the /CHDK folder; this is a plain text file
with coordinates of the bad pixels in the raw image, with one x,y pair per line. If both files
are present, pixels listed in each file will be patched. Only the first 8kb of each file will be
used.
[Off] with this setting no Bad pixel removal processing takes place.
[Average] with this setting CHDK calculates the color for the bad pixel based on its four
neighbor pixels with a simple average calculation and then interpolates - bad neighbor
pixels will be ignored in this calculation.
[RawConv] setting means - intended for use with post processing raw converter software
to remove the bad pixels later in the workow. With this setting CHDK just sets the bad
pixel to the value 0 (zero), without any other calculation or modication. Most RAWcapable apps. will detect this and apply their own algorithms. This option is ignored in
DNG mode (in DNG mode bad pixels are always averaged by CHDK).
Quote from senior developer ewavr - You can compare bad pixel removal quality in both
modes, IMO, 'RAWConv' mode is preferred, because CHDK interpolation is very
unsophisticated.
Note:WithDNGformatenabled,badpixelsidentiedby
badpixel.binarealwaysremoved(interpolated/averaged)by
CHDK.Thisdoesnotaffectthe'Badpixelremoval'option,which
alsoxesuserspeciedpixels.
Forum discussion: http://chdk.setepontos.com/index.php?
topic=3098.msg28955#msg28955 re: 'Average' and 'RAWconv'
RAW buffer cached
Enable [?] / Disable [ ]
When enabled, CPU cache is used while processing raw data for DNG. This is faster, but
could theoretically lead to a small amount of data being incorrect. In practice, there seems
to be no negative effect and should always be enabled except for debugging.

25

Show raw saving time


Enable [?] / Disable [ ]
When enabled, CHDK onscreen console will display a message showing the time taken to
save the most recent RAW/DNG image.

DNG format
Enable [?] / Disable [ ]
Save RAW in DNG format directly in the
camera. This format can be read by many image
editing programs. Also includes meta-data like
EXIF and whitebalance / color matrix
information. The DNG files created have the
same file extension as described in RAW, and
can be reset manually to DNG. There is also an
automatic function to rename for most cameras
in the CHDK RAW menu. DNG format is now
the preferred method of CHDK RAW capture.
To enable this option the first time, as described
above, a special file BADPIXEL.BIN must be
generated and stored on the memory card once. This camera specific binary file contains
information about the sensor pixels which were marked as defective by the manufacturer.
Note:WithDNGformatenabled,badpixelsinbadpixel.binare
alwaysremoved(interpolated/averaged)byCHDK.Thisdoes
notaffectthe"Badpixelremoval"option,whichfixesuser
specifiedpixels.
There are two ways to create this BADPIXEL.BIN file:

in the camera, using "Create badpixel.bin" from the raw menu: (See Create
badpixel.bin below)

and with a little software tool - read about it here > Badpixel removal

26

DNG file extension


Enable [?] / Disable [ ]
To distinguish DNG from other RAW files. The DNG RAW image files will be stored as
"<filename>.DNG" with this option enabled, otherwise the extension from the "RAW file
extension" menu entry is used.
Note that you will not be able to transfer files with the .DNG extension over USB, unless
your camera has the "DNG visible via USB" option is enabled in the misc menu. "DNG
visible via USB" is not available on some cameras.
DNG version
[1.1 , 1.3]
CHDK supports two different versions of the Adobe DNG file format. While there are many
differences in the two versions, the principal difference from a CHDK point of view is that
when you use DNG 1.1, CHDK will use the badpixel.bin file (see below) to remove bad
pixels from the image. When you use DNG 1.3, the bad pixels will only be removed
automatically if your raw processing software is fully DNG 1.3 compatible. Many nonAdobe programs are not fully compatible.
The use of version 1.1 is recommended for maximum compatibility. DNG 1.3 is
recommended if your raw software supports it, or if your camera has very low free RAM.
Create badpixel.bin
Switch to record mode (there is a reminder dialog if still in display mode), Select 'Create
badpixel.bin' in the RAW menu, press FUNC./SET, and the operation commences, taking
approx. 20 to 40 seconds, you will notice the camera takes 2 shots, the blue Print LED will
come on briey during each shot, wait for the process to complete, you will see a display of
the number of bad pixels, - that number can be disturbing to some, a gure such as 18,000
or even more is not uncommon. You can check for the le with the File Browser.

Edge Overlay (panorama tool)


Edge overlay creates and overlays a high-contrast outline of the edges in an image. It can
be used to assist in stitching together panorama images by allowing you to see the outline
of the previous image while taking a new image.

27

Enable Edge Overlay


Enable [?] / Disable [ ]
With the default CHDK settings the Edge
overlay will be visible while the shutter button is
half-pressed. Once a picture is taken, the
overlay will be frozen and it will not update
until a second picture is taken, allowing you to
align image features in the new shot to the
previous one. During that time you can use the
the Directional buttons on the camera in ALTmode to move the overlay of the previous
picture Up, Down, Left,or Right.
Zebra mode should be disabled when using the Edge overlay and disable Edge overlay
when using Canon Stitch Assist mode.
Filter Edges
This option applies noise filtering to the edge overlay. It makes the overlay redraw slower
but cleans the overlay of noise that appears in low-light scenes. To reduce overhead of
Edge overlay, use Filter edges only when required.
Panorama Mode
[ Off, Right, Down, Left, Up, Free ]
When this option is not set to Off, the edge overlay will not update continuously, but only
when images are taken. Except for the very first image, you will always see the overlay of
the previous image in frozen mode. "FROZEN" is shown in the top left corner of the OSD.
Note:PanoramamodereturnstoOffoneachcamerastartup.
Off - Does not lock the overlay and it will keep updating.
When set to either Right, Down, Left or Up, the camera will automatically move the
overlay in the opposite direction by the amount corresponding to the "Pano overlap
(%)" setting. This is useful so that you can align the next image of a panorama series
in the corresponding directions.
Free - The overlay will not update continuously, and it will not be moved
automatically in any direction, (it will be centered), however, you can use the the
Directional buttons in ALT-mode to move it manually.

Pano overlap (%)


[ 0 - 100]
Set the overlay offset for Panorama mode, affects each of the options in Panorama mode
except "Free".
28

Always show
Enable [?] / Disable [ ]
When enabled, the Edge overlay will be visible even without half-pressing the shutter
button.
Edge overlay threshold
[ 0 - 255 ]
This setting adjusts the Edge-overlay sensitivity. Lower values create edges along lower
contrast / lower-brightness edges, but can potentially cause more noise. Higher values
create edges only on the highest contrast/ brightest boundaries, and therefore fewer, finer,
and more well defined lines. The downside of using higher values is that some edges might
be missed. In general, lower values are more useful with low-light scenes, while higher
values are more useful with bright scenes. If you get too much noise, try the Filter edges
option.
Enable in Play
Enable [?] / Disable [ ]
When enabled, the Edge overlay will be visible during canmera playback mode.
Save Edge Overlay
Saving an Edge overlay allows you to recall it at a later time even if the camera was
switched off. Note that you can only save an overlay while it is frozen. After creating an
overlay, navigate to this Menu item and press FUNC.SET to save.
Load+Set Zoom
Enable [?] / Disable [ ]
This option will cause the zoom to move to the same position used when the overlay was
stored when an edge overlay file is loaded.
Load Edge Overlay
Opens a file browser menu to let you select a previously stored edge overlay file.
Notes :To move an overlay - with a loaded overlay rst switch to <ALT> mode, then press
a Directional button
to move the overlay continuously until release of the button,
or click the button to move in steps. It is be advisable to make a log of the saved edge
overlays, keeping a description together with the le number and date of the le, to keep
track of them over time, perhaps adding GPS information as well.

29

Histogram (exposure graph)


Enables and customizes the CHDK Live
Histogram feature.
Histogram Anatomy
The horizontal component of a histogram runs
from 0 to 255. What is important to understand
is the "0" and "255" are not valuesthey are
labels representing a color value. When you see
a line in the middle of the histogram (label
"127") its saying "this is how many 127s there
are in the image."
The vertical component of a histogram is the
count of pixels at a given level. The bottom is
zero and the top represents the largest count of values for a label. So if you have a 7MP
image and every color is "127", then the top of the histogram represents 7 million pixels.
RGB Histogram
RGB histograms simply count pixels at each level. The RGB histogram of an image of three
boxes (red, green, and blue) where every color has a value of 127 would be a single line in
the middle of the histogram (at label "127".)
Luminance (Y) Histogram
Luminance histograms attempt to factor in the perceived brightness of colors. A luminance
histogram of an image of three boxes (red, green, and blue) where every color has a value
of 127 will show three lines at labels "38" (red- x 0.3), "75" (green x 0.59), and "14" (blue x .
11).

30

Show live histogram


[Dont, Always, Shoot]
Dont Dont show histogram on LCD.
Always Always show the histogram on the LCD.
Shoot Only show the histogram when shutter is half-pressed.
Histogram Layout
[RGB, Y, RGB Y, R G B, RGB all, Y all, Blend, Blend Y]
RGB Displays the RGB histogram only.
Y Displays the luminance histogram only.
RGB Y Displays RGB above luminance.
R G B Displays three histograms, one for each color.
RGB all Displays all 5 variations of histograms with RGB on top.
Y all Displays all 5 variations of histograms with luminance on top.
Blend Combines the three histogram of the R G B display into one.
Blend Y Same as Blend but with the addition of luminance below.

31

RGB

RGB Y

RGB all

Y all

RGB

Blend

Blend Y
Histogram Mode
[Linear, Log]
Determines how the Y-axis (vertical) of the histogram will be scaled. Log mode is
useful for scenes with a large amount of a single color, such as an overcast sky (lots of
gray.)
Show histogram over/under EXP
Enable [?] / Disable [ ]
EXP in on-screen display. If parts of a scene are over or under exposed, then this
setting will display "EXP" above the histogram, and a red dot at the end that indicates
exceeding exposure limits.

32

In this example the red dots show the image is both over and under
exposed (the scene has a very wide dynamic range).
Ignore boundary peaks
[0 32]
Another tool for controlling the scaling of the histogram. If you know that the scene
will contain large amounts of black or white (e.g a moon shot) you can set how many
levels from the left or right edges of the histogram to ignore, if those levels peak in the
histogram. This will increase the visibility of the smaller portion of the histogram.
Auto Magnify
Enable [?] / Disable [ ]
N.NNx in on-screen display. Another tool for controlling the scaling of the histogram.
This option will magnify the Y-axis (vertical) if less than 20% of the histogram area is
filled. The purpose of this function is to make the histogram easier to read when there
are very tall peaks. This function lies somewhere between the Linear and Log options
above. A red dot over a peak indicates that its been clipped due to the magnification.
The amount of magnification applied is displayed over the histogram.

No Magnification
With magnification
Show Histo Ev Grid
Enable [?] / Disable [ ]
Adds 4 or 5 vertical lines to the histogram dividing the histogram by full stops.

EV Grid Enabled
33

Zebra (show over & under exposure)


Zebra is a feature that indicates over and under
exposed areas of the scene. When the shutter is
half-pressed, the areas of the scene that are
under or over exposed will turn red. The zebra
effect can also be applied to existing images by
half-pressing the shutter during playback mode.
Draw Zebra
Enable [?] / Disable [ ]
Enables the drawing of over/under exposure
indicators.
Zebra mode
[Blink 1, Blink 2, Blink 3, Solid, Zebra 1, Zebra 2]
Determines how the over/under exposed areas will be indicated.
Blink 1 Solid coverage, blinks every second.
Blink 2 Solid coverage, blinks every second.
Blink 3 Solid coverage, blinks every two seconds.
Solid Solid coverage, no blinking.
Zebra 1 Striped coverage, thin diagonal lines.
Zebra 2 Striped coverage, thick diagonal lines.

Solid coverage

Zebra 1 Thin stripes

Zebra 2 Thick stripes

UnderExposure Threshold
[0 32]
Controls the sensitivity of exposure indication. 0 is less sensitive and 32 is very
sensitive.

34

OverExposure threshold
[0 32]
Controls the sensitivity of exposure indication. 0 is less sensitive and 32 is very
sensitive.
Restore Original Screen
Enable [?] / Disable [ ]
This option only applies to Zebra Blink modes. When exposure indicators are visible,
all of the original Canon indicators are erased. When this option is enabled, the
original Canon screen items (such as exposure) are redrawn between blinks.
Restore OSD
Enable [?] / Disable [ ]
This option only applies to Zebra Blink modes. When exposure indicators are visible,
all of the CHDK half-shutter indicators are erased. When this option is enabled, the
CHDK half-shutter indicators (such as DOF calculator) are redrawn between blinks.
Draw Over Zebra
[Histo, OSD, Nothing]
This option applies to all Zebra modes. When exposure indicators are visible, nothing
else is displayed on the screen. This option specifies which additional indicators will
be drawn.
Histo Only the live histogram is drawn with the exposure indicators.
OSD The entire CHDK OSD is drawn with the exposure indicators.
Nothing Nothing else is drawn with the exposure indicators.
RGB zebra (overexp. only)
"Enable [?] / Disable [ ]
Overexposed areas are indicated by the color of the channel that is overexposed.
Underexposed areas are ignored.

Black All channels are overexposed.


Red Red channel is overexposed.
Green Green channel is overexposed.
Blue Blue channel is overexposed.
Cyan Green and blue channels are overexposed.
Magenta Red and blue channels are overexposed.
Yellow Red and green channels are overexposed.

35

Solid coverage

Zebra coverage

Scripting (program your camera)


CHDK supports two scripting languages (Lua & uBASIC) that allow you to customize how
your camera works. Scripts can control exposure, shoot based on use defined conditions,
detect motion, and interact with the user via either a text console or graphical UI.
To use a script :
enter <ALT> mode by pressing your camera's ALT key
press FUNC.SET to go directly to the Script menu (or navigate there from the main
menu)
select a script using the "Load Script from File" menu item
set any required parameters to suit your needs - see the scripts documentation
press MENU to nish loading & configuring the script
stay in <ALT> mode and press your camera's shutter button to actually run the
script
To interrupt a running script press the Shutter button.
To return to normal shooting, exit <ALT> mode.
CHDK saves the last user-selected script parameters from one session to the next.
There is a Default Script that loads when CHDK is first installed. It does not do anything.
New scripts can be added to the SCRIPTS folder as they become available.
Note:Wheneverascriptisloadedthereisextrademandfor
memory,usingthedefaultscriptwhennootherisneededmay
helpsomecamerasperformancewhenusingCHDK.Referto:
MemoryUsage
Load Script from File...
Used to activate a file selection window that lets you pick which script to run. Scroll
through the available files and press the FUNC.SET to select one.

36

Script shoot delay (.1s)


After an image is captured, indicates how long to delay the execution of the next script
command. A value of 0 executes immediately. A value of 10 executes the next script
command one second after capture.
Autostart
[Off, On, Once]
When enabled, the script listed under "current script" will execute immediately when the
camera is turned on when the ALT button is pressed.

Setting to On causes this to happen every time the camera starts.

Setting to Once will cause the script to only run once - at the next camera restart

Setting to ALT causes the script to run when you press the ALT button (rather than
entering CHDK ALT mode). The camera will return to <ALT> mode when the script
exits.

(Hint : remember this setting ifyou see your camera operating by itself after it is turned
on.)
Restart Lua on error
The Lua programming language contains more advanced error checking that the uBASIC
language. If it detects an error condition while running, setting this value will cause the
script to restart rather than halt. Generally, its not a good idea to leave this feature
enabled.
Load default param values
Each script has up to 26 parameter that can be set from the Script menu (down at the
bottom). Selecting this menu item causes those values to reset to the default value specified
in the script.
Parameter set
[Default, 0-9]
To accommodate different shooting scenarios, CHDK allows up to 10 different sets of user
parameters to be stored and reused each time the script is loaded. Setting this value to
Default will cause the defaul values specified in the script to be used each time the script is
loaded.
Save params
When set to "On", the current values of the script parameters (perhaps adjusted by the
user) will be store in the parameter set specified above. When set to "Off", parameter
values are "locked" and will not change. Complete information about scripting can
be found here : Scripting Cross Reference Page

37

CHDK Settings
The CHDK Settings menu is used to configure
the look, feel and operation of CHDK. This
menu allows you to configure the CHDK On
Screen Display (OSD) through the selection and
positioning of on-screen information and icons
showing the current state of camera operations.
Other operating display functions can also be
configured with this menu and the menu allow
access to the setup of the CHDK USB remote
control.
OSD Parameters
Show OSD
Enable [?] / Disable [ ]
Control the visability of the CHDK On Screen
Display (OSD) Hide in ?
[ Dont , In Play , On Display , Both ]
Don't - always shows the OSD
icons/elements
In Play - hides them in playback mode
On Display - hides them when you
toggle the CANON icons on/off with the
display button (does not work for the
EVF)
Both - hides OSD in both playback and by "display button cycling", Helpful to those
who don't need the battery and other indicators in their playback screens.
Show State Displays
Enable [?] / Disable [ ]
Displays the Override, Bracketing, and Override Disabled settings in their own
positionable information area.

38

Show Temperature
[ Off, Optical, CCD, Battery, all ]
Off - No display of camera component temperatures.
Optical - Displays the temperature of the optical elements (most assume this is
used for the IS mechanism and Zoom/Focus motors). When the camera is first
turned on this will most accurately reflect the environmental temperature.
CCD - Displays the temperature of the CCD. Lets you know when it might be getting
too warm. Or when it's cold enough to take lower-noise images.
Battery - Displays the temperature of the battery compartment.
NOTE:3rdpartyLIIONbatterypacksmayalwaysreporta
constanttemperature,e.g.25Cor28C.
all - Displays all 3 values.
Note:Notallmodelshaveaseparatetemperaturesensorforeach
component,andduetodifferencesindesign,valuesreportedby
differentmodelsmaynotbedirectlycomparable.
In Fahrenheit
Enable [?] / Disable [ ]
Default is Celsius, check this for Fahrenheit.
Show USB info
[Off. Icon, Text ]
Displays either a colored icon or a text string when the USB Remote is enabled.
NOTE : when USB remote is enable, PTP connections (i.e USB connection camera/PC) are
disabled.
Miscellaneous Values
Show Misc Values
[Dont, Always, Shoot]

Dont Dont show misc values on LCD.


Always Always show the misc values
on the LCD.
Shoot Only show the misc values when
shutter is half-pressed.

39

Show values in video


Enable [?] / Disable [ ]
Displays the Miscellaneous values when the camera is in video mode.
Show Zoom
Enable [?] / Disable [ ]
Z:n/n.nx in Micscellaneous Values. Displays the current Zoom position of the lens.
Z:n = zoom position, from 1 to 14
Zoom value
[X, FL, EFL]
Method of displaying the Zoom position of the lens
X as a multiple of the shortest focal length, as in 6X.
FL as the actual focal length of the lens, as in 34.8mm.
EFL as the effective focal length, (35mm Equivalent, as in 210mm).
Adaptor Lens Scale, 100=1x
[0 1000]
Adjusts the zoom value above by a multiplier, which is based on the converter
lens that is installed on the camera. For a 0.7x wide converter use 70. For a 1.75x
tele converter use 175.
Show Real Aperture
Enable [?] / Disable [ ]
Av in Miscellaneous Values. This is the actual aperture setting after any override
aperture adjustments have been applied.
Show Real ISO
Enable [?] / Disable [ ]
I-R in Miscellaneous Values. Displays the actual ISO value after overrides or
bracketing have been applied.
Show Market ISO
Enable [?] / Disable [ ]
I-M in Miscellaneous Values. Displays Canons ISO value, which is not always
the same as the actual ISO value.

40

Show ISO only in AutoISO Mode


Enable [?] / Disable [ ]
Display the ISO value only when the camera is in Auto ISO mode.
Show Set Exposure Ev (Tv+Av)
Enable [?] / Disable [ ]
Evs in Miscellaneous Values. Show camera exposure value based on the values
of shutter speed and aperture.
Show Measured Ev (Bv+Sv)
Enable [?] / Disable [ ]
(brightness value + scene sensitivity set in a camera)
Show Set Bv (Brightness Value)
Enable [?] / Disable [ ]
Bvs in Miscellaneous Values. Internal-brightness scenes through recalculation
of the parameters established in the camera. Just Av-Sv + Tv.
Show Measured Bv
Enable [?] / Disable [ ]
Displays the measured brightness value, as written in the Exif data.
Show Overexp. Value (No Flash!)
Enable [?] / Disable [ ]
Indicates a calculated overexposure value. Av-Bv-Sv + Tv
Show Canon Overexp. Value
Enable [?] / Disable [ ]
Indicates the overexposure value calculated by the camera.
Show Scene Luminance
Enable [?] / Disable [ ]
B in Miscellaneous Values. Run average in standard illumination scenes
candelas per square meter calculated from a ratio to Bv = 12.5

41

DOF Calculator
The Depth Of Field Calculator displays 5 distances in meters
SD Distance to the subject (Near Limit + DOF*0.33). Also called the Focal Plane.
NL Near Limit. The distance where acceptable sharpness begins.
FL Far Limit. The distance where acceptable sharpness ends.
DOF the Distance between the Near Limit and the Far Limit.
HYP - Hyperfocal distance
Depending on the aperture and zoom settings, the hyperfocal distance reflects the
optimal distance for an object to be photographed, i.e. the sharpness of that object
will be the sharpest at this specific distance.
Show DOF calculator
[Don't, Separat, In Misc]
Dont Disables display of the DOF calculator
Separate Displays the DOF values apart from the Misc values.
In Misc Displays the DOF values with the Misc values.
Canon Subj. Dist. as Near Limit
Enable [?] / Disable [ ]
Enabling this value affects the way the subject distance is calculated.
Use EXIF subj. Dist. (Propcase #65)
Enable [?] / Disable [ ]
Enabling this value affects the way the subject distance is calculated.
Note:Experimentationmayberequiredtoclarifythese2
precedingsettings,theywilleffectscriptcommandsthat
establishfocusandsomeothercamerabehavior,suchasfocus
bracketing.
The following 5 settings determine which DOF values will appear. When the "Show DOF
calculator" is set to "Separat", all 5 values are always displayed. When it is set to "In Misc"
then only the enabled values below are displayed as part of the Miscellaneous Values.
Show Subj. Dist. in Misc.
Enable [?] / Disable [ ]
Enable to show in Miscellaneous values on OSD.

42

Show Near Limit in Misc.


Enable [?] / Disable [ ]
Enable to show in Miscellaneous values on OSD.
Show Far Limit in Misc.
Enable [?] / Disable [ ]
Enable to show in Miscellaneous values on OSD.
Show Depth of Field in Misc.
Enable [?] / Disable [ ]
Enable to show in Miscellaneous values on OSD.
Show Hyperfocal Dist. in Misc.
Enable [?] / Disable [ ]
Enable to show in Miscellaneous values on OSD.
Subject distance from lens
Enable [?] / Disable [ ]
When enabled, distances displayed are measured from the front of the lens
rather than the sensor. This is useful for macro photography.
Raw
Show RAW state
Enable [?] / Disable [ ]
Enables the display of the RAW indicator.
Show RAW shoot remain
Enable [?] / Disable [ ]
Calculates how many RAW captures will fit in the current free memory and
displays that number next to the RAW indicator.
Warning threshold
[0 200]
Turns the RAW indicator red when the number of RAW shots remaining drops
below the threshold value.

43

Battery
Controls the display of the battery indicators on the LCD
Set the maximum and minimum voltages to match fully charged and discharged
battery reading. The battery icon fill color will reduce as voltage lowers and will
change to red color close to minimum voltage.
Show Battery Percent
Enable [?] / Disable [ ]
Displays text status of battery in units of 0-100%
Show Battery Voltage
Enable [?] / Disable [ ]
Displays text status of battery in units of volts
Show Battery Icon
Enable [?] / Disable [ ]
Displays a battery icon that changes color (or fill) with battery state.
Filespace
Show Filespace Icon
Enable [?] / Disable [ ]

Displays a small SD card shaped icon on the screen to show how much filespace is left on the SD
card. Opaque means remaining free space. Transparent means that space has been used. Use the
OSD Layout Editor to position the icon anywhere on the screen.

Show Space Bar


[ Dont, Horizon, Vertical ]

Displays a thin SD capacity remaining "fuel-gauge" icon on the screen. Location is


positionable in the OSD Layout Editor.
Don't - Turn off this feature.
Horizon - Displays the bar-graph gauge in a horizontal orientation.
Vertical - Displays the bar-graph gauge in a vertical orientation.
Size on Screen
Changes the display size of the "Space Bar" SD-capacity gauge.
1/4 - the bar-graph only goes 1/4th the width or height of the EVF/LCD display.
1/2 - the bar-graph goes 1/2 the width or height of the EVF/LCD display.
1 - the bar-graph goes the full width or height of the EVF/LCD display.

44

Width/Height
Change the width (for vertical space-bar) or height (for horizontal space-bar) in 1pixel increments.
Show Filespace in Percent
Enable [?] / Disable [ ]
Display the SD card space left in percentage of its total capacity. (Toggles
between this and the MB option.) OSD display element positionable in the OSD
Layout Editor.
Show Filespace in MB
Enable [?] / Disable [ ]
Displays the SD-card space-remaining in Megabytes. Toggles between this and
the percentage option. (see above).
Warning Unit
Don't - Don't display a warning when the free SD-card space is getting low.
Percent - Change the space remaining display to the warning color when the
percentage reaches or goes below your selected "% Threshold" (see below).
MB - Change the space remaining display to the warning color when the Megabytes
reaches or goes below your selected "MB Threshold (see below).
% Threshold
Setting used in conjunction with above "Warning Unit" feature. Set the amount of
SD-card space percentage remaining when you want that OSD element to turn to
your chosen warning color.
MB Threshold
Setting used in conjunction with the above "Warning Unit" feature. Set this to how
many megabytes when the space remaining feature turns to your chosen warning
color. Note:maybeusedinconjunctionwithahandyscriptif
youneedtorationtheamountofphotosyoutakeonalong
vacation.

45

Clock
Show Clock
Displays an OSD real-time clock.
Don't - No clock display.
Normal - Displays HH:MM
Seconds - Displays HH:MM:SS
Clock Format
12-hour or 24-hour format toggle. When 12-hour
format is used then the chosen 12-Hour Clock AM/PM indicators are enabled. Also
influences the temperature format. 12h - Fahrenheit.
12h Clock Indicator
PM- Displays AM or PM suffix on the OSD Clock
P - Shorthand version of A or P for AM and PM on the OSD Clock (to save real-estate
space). Ultra-shorthand version of AM or PM. Displays a simple "." after the time to
indicate PM, no character is displayed for AM. Examples: 10:30 = 10:30 AM, 11:15. =
11:15 PM (notethesmallperiodafterthe15).
@ Shutter Half-press Show
Shows the OSD clock during a half-press of the shutter button.....
Don't - No clock display on a half-press.
Full - Shows full clock time during half-press.
Seconds - Only counts off the seconds in the clock display during a half-press.
Helpful when doing manual timings between consecutive shots without having to
quickly call up some intervalometer script.
Show OSD in Review Mode
Displays the OSD when in REVIEW mode. Do not confuse this with Playback mode.
Review mode is when the last taken photo is temporarily being displayed as you hold down
the shutter-button (and press SET to lock it into Review Mode) or when you have the
Canon's Menu "Review" options turned on. This allows you to keep the on-screen grid and
other settings visible when reviewing the photo to see if you got the framing or other
settings as you had intended.

46

OSD Layout Editor


The on-screen position of OSD items can be
rearranged to suit personal preferences and to
avoid the Canon items on the display. All OSD
items are available in the Layout Editor
although they will not actually appear on the
OSD unless they are enabled individually in the
OSD Settings menu.
When a feature is selected you use the Set
button to move between icon outlines and the
rocker switch to move the selected icon around.
A red highlight display at the top or bottom of
the screen gives the name of the icon being
moved and its screen position in X, Y format. You can change the resolution of movment of
the icons between course and fine using the DISP key.

FUNC.SET - switch between display features.

< ^ v > - 4 direction switch/rocker moves the selected feature.

DISP. - toggles between 1 pixel per move or 10 pixels per move.

HALF_PRESS - changes the font size of the currently selected item

ZOOM.IN - increases the font size of the currently selected item

ZOOM.OUT - decreases the font size of the currently selected item

Color Settings
Change any of the display colors for all the text
and icons. If you don't change them they will
remain as their defaults. There are opaque
colors and transparent colors, and also some
"special effect" colors. Note that record mode
and playback mode use different color tables. So
it may happen that you pick a nice color in
playback mode, and in record mode it will look
totally different. But there are also colors which
will stay the same in both modes. Some
examples for A-series cameras > 0x11(white),
0xFF(black), 0x22(red), 0x55(green), 0x44
(transparent light grey).

47

Draw Palette
Shows the current color space in the current shooting
mode. Use the cursor keys to scroll around to any color
- the hex value of that color is displayed at the top of
the display.

48

Menu Settings
CHDK offers the ability to define a customized
menu of the things you use the most. This menu
can contain menu entries from other menus, the
name of favorite scripts to load and even
loadable code modules. This custom menu is
called the User Menu and it can be configured to
appear as soon as you press the <ALT> key or as
the first menu displayed when the MENU key is
pressed.
See also > CHDK User Menu Wiki Page
User Menu Enable
[ Off, On, On Direct ]
Add frequently used menu items to make a custom, easy access menu.
Off - Disables use of the User Menu
On - Enables the User Menu when in <ALT> mode and pressing [HALF-PRESS] +
MENU.
On Direct - When entering <ALT> mode the User Menu will be automatically
displayed without having to press the MENU button. The main menu can be
reached by scrolling to the top or using a HALF-PRESS + MENU shortcut keys.
User Menu as Root
Enable [?] / Disable [ ]
Toggles the behavior of the Menus when the User Menu is turned ON. When
this option is set then the User Menu will be the first one to be seen, and the
main menu may be reached by using the HALF-PRESS + MENU shortcut keys,
or just selecting the top entry "Main Menu".
User Menu Edit
Provides a full screen editor for the User Menu. When selected it opens the current
user menu. Use the UP and DOWN keys to select a current menu item. Use the
RIGHT and LEFT keys to change the position in the menu of the current menu item.
Press the Set./Disp button to bring up a pop-up box that will allow you at add or
delete items from the User Menu.
Customizing hint / reminder:- Some CHDK features require 2 or more options that
work together. An example, "Override Shutter Speed" might also need its associated
"Value Factor" selection and the "Shutter Speed Enum Type" if you frequently change
that too. Be sure to copy any related menu items together so they are still available
where you need them in your custom menu.Customizing hint / reminder:- Some
CHDK features require 2 or more options that work together. An example, "Override
Shutter Speed" might also need its associated "Value Factor" selection and the
"Shutter Speed Enum Type" if you frequently change that too. Be sure to copy any
49

related menu items together so they are still available where you need them in your
custom menu.
Center Menu
Enable [?] / Disable [ ]
Selecting this option causes each CHDK menu to automatically center vertically
and horizontally in the display region.
Auto select 1st entry @ menu
Enable [?] / Disable [ ]
Quickly position the menu-selection cursor on the first entry in any CHDK
menu. Instead of having to press once to enter the menu options it will now
start out already on the first menu option.
Show <ALT> Help Screen
Enable [?] / Disable [ ]
Enables a pop user help menu.
Help Screen Delay
[0 - 10]
Sets the delay in seconds after the
last key press before the user help
menu appears.
Language & Fonts
Language
Lets you choose another language if you
have the appropriate .lng-file in the CHDK/LANG/ folder of the SD card.
OSD codepage
Choose the Codepage [ Win1250 - 1257 ]
(Win1250 East European Latin , Win1251 Cyrillic, Win1252 West European
Latin, Win1254 Turkish , Win1257 Baltic)
Menu RBF font
Choose another font RBF format for the CHDK menus. If you have chosen a RBF font
but want to switch back to the original built-in font, just choose an "illegal" RBF font
(Try to load a uBASIC script as a RBF font, for example).
Enable Symbols
Enable [?] / Disable [ ]
Enables the display of menu symbols
Symbol Font
Lets you choose the font used to display symbols on the menus.
Select textbox charmap
Changes the character set used to display menu text boxes.
50

Reset menu fonts


Reset to default fonts (useful if you accidentally select a font that makes the menus
unreadable).
Grid
This menu allows you to select and display a
custom defined grid.
Show grid lines
Enable [?] / Disable [ ]
Enables the display of custom grids.
Load grid from file
Displays the file selection screen. Use the
directional controls to select a grid file and
press Set to select it.
Override Grid Colors
Enable [?] / Disable [ ]
replace default colors from grid file with Line and Fill color selected below
Line Color
select the color for grid lines
Fill Color
select the color for grid background
See the Grids Tutorial in the CHDK Wiki.
Remote Parameters
CHDK supports the use of an inexpensive shutter remote, allowing the camera to shoot
when a remote switch is pressed. This has many application, but is expecially useful with a
tripod mounted camera to minimize vibration, or for syncing two camera to shoot at
exactly the same time for stereo photography.
Enable Remote Enable [?] / Disable [ ]
Toggles the remote USB cable detection
state, both scripted and scriptless. When
this is enabled you can use the camera
normally without any script and still use
the USB-Remote cable to trigger the
shutter. Have the camera in normal record
mode and not in <ALT> mode. This is the
same as if you pressed the shutter
manually in all normal camera operations.

51

Enable Half-press Shortcut Keys


Enable [?] / Disable [ ]
Enables or disable the shortcut keys that are active in <ALT> mode when
the shutter button is "half pressed". These keys are handy if you are
comfortable using them but tend to cause unexpected actions if you are not
aware they are enabled.
Show Splash Screen on Load
Enable [?] / Disable [ ]
Enables or disables the CHDK splash screen that appears each time CHDK
loads.
Startup sound
Enable [?] / Disable [ ]
Enables or disables the startup sound when CHDK loads.
<ALT> Mode Button
Selects a different camera button to be used to activate <ALT> mode. This function is
not available on every CHDK ported cameras.
Disable LCD Off
[Never , Alt, Script, Always]
Prevents the camera from turning off the camera's LCD when the cameras is in
the selected mode.
Reset Options to Default
Resets all CHDK option to the default values used when CHDK starts for the first
time. This reset can also be accomplished by deleting the CCHDK2.CFG file from the
CHDK folder on the SD card.

52

Miscellaneous Stuff
The Miscellaneous Stuff menu contains
the various CHDK features and
functions that don't really belong in any
of the other menus. These functions are
usually related to the mechanics of how
the CHDK program loads and operates.
Functions related to actually taking
photographs can be found in the other
CHDK menus.
File Browser
The file browser allows you to look at
the les in the various CHDK folders.
Use:

UP/DOWN key to highlight a file

FUNC.SET to enter a folder or "launch" certain file types

> right arrow key to select le

< left arrow key to activate a pop up menu of file functions

Pressing FUNC.SET over certain type of files results in special action


(only available when the file browser is started with the "File Browser"
menu item):
Text files with .txt, .log and .csv extension
The file will open in the text file viewer.
CHDK module with .flt extension
The selected module will start (the module has to support standalone operation, a few
examples: games, calendar, CPU info). Note that modules have to reside in the
CHDK/MODULES folder in order to load.
The file pop-up menu functions can include Cut, Copy, Delete, Select Inverse, Make dir,
Remove Dir, Rename, Purge RAW, RAW sum, RAW average, Purge RAW, Sub from
marked, DNG -> CHDK RAW, RAW develop. The actual options available are context
sensitive - they change based on the currently selected item in the pop-up file browser
windows.

53

Cut, Copy, Delete, Rename


standard file functions that act on the currently selected filename
Select Inverse
inverts the current file selection - useful to automatically select all files in a directory
Make Dir, Remove Dir
adds or removes directories to the SD card at the current position
Sub from marked
?
DNG->CHDK RAW
?
RAW develop
?
RAW Merge When selecting (highlighting) les in the le browser mode, by using
the RIGHT navigational button, you now have 2 functions available on the LEFT
navigational button menu. If after using either of these features and you would like
to see the resulting image without having to load them into a computer and using
RAW viewing software, use the "RAW Develop" feature on the "RAW Parameters"
menu to create a JPG le for playback in the camera. When using either of these
options the resulting new RAW le will use whatever last lename was selected for
merging as the prex to the new RAW lename, and a WAV sufx will be added to it
so you know which last-of-a-sequence les were used for merging. This also
circumvents any confusion later when using utilities like DNG4PS with trying to
merge corresponding JPG EXIF data with the original RAW data, where lenames
could get drastically out of order by creating new JPG lename numbers.
RAW Sum
Using the selected RAW les, this will combine them into one le. Working on an
additive principle. Meaning, if you take ve 65-second exposures, then RAW Sum
them together, the resulting image will be equivalent to the brightness level of a 5
minute, 25 second exposure.
RAW Average
This RAW Merge feature will, as it says, average all the frames together. Very
convenient if taking several identical frames at high ISOs at high shutter speeds. This
will merge them together, effectively obliterating any noise, as the noise gets averaged
out. The more frames used, the less noise visible.

54

Purge RAW
This function allows RAW les to be deleted in 3
different ways...
1. Delete all RAW les in DCIM folder
including subfolders Useful when: You
keep a separate folder for RAW les. You
set up the camera to create a new folder
everyday (several days trek, holidays etc).
You want to erase the occasional
mischievous RAW le stored in a different
folder. Go to CHDK File Browser, select
DCIM folder, push the LEFT to display the
popup menu and select "Purge RAW" (See
image 1). A warning will ask you to conrm
(See image 2) and voila! You have regained
some SD space. This feature will search
through all the folders in DCIM looking for
a RAW le (CRW/CR2 prex or le
extension) and if it nds one then will look
for its JPG partner anywhere inside DCIM
(comparing the 4 digit number assigned by
the camera). If it is not found, the RAW le
is erased.
2. Delete all RAW les in a selected folder
Useful when you keep RAW les in the
same folder as JPG les, You only want to
get rid of some RAW les. (Very important shots in some other folder). You
know which folder has a lot of out-takes. Go to CHDK File Browser and inside
DCIM folder select the folder you want (E.g. "102CANON") and push the LEFT
button to display the popup menu. Select "Purge RAW". A warning will ask you
to conrm and all the RAW les in ONLY that folder will be erased. This
option works like the previous one but only on the selected Canon folder, the
rest are untouched.
3. Delete some or all RAW les in a list. Useful when You want to protect specic
RAW les (to use them later for HDR) Go to CHDK File Browser, enter DCIM
folder, enter a sub folder (E.g. "102CANON") push the LEFT to display the
popup menu. Select "Purge RAW" . A warning will ask you to conrm and all
the RAW les will be gone. Now the useful thing of this option is that you can
mark the RAW les you DON'T want to erase (protect les). The Purge RAW
function will erase the rest of the RAW les ignoring the marked ones.

55

Calendar
Yes, a calendar!
Select Year - UP/DOWN Select Month LEFT/RIGHT
Use MENU button to exit.
Text file reader
This utility can be used to read a text le stored on the
SD card. (Very convenient!, you can keep onboard
instructions.)
Open new le Displays a le browser window, opened to the CHDK/ BOOKS
directory. You can select a txt le to view. Press FUNC.SET to open the le.
Open last opened le
Will display the most recent text le that was viewed.
Select RBF font
Open the le browser in the CHDK/FONTS directory. Allows you to select a
different font for displaying text.
Codepage [Win1251, DOS] Select the text le format.
As with other menus, fonts and colours can be changed to suit all preferences.
Wrap by words Enable [?] / Disable [ ]
Enables word-wrap.
Enable autoscroll Enable [?] / Disable [ ]
When enabled the text le will scroll automatically.
Autoscroll delay (sec) [ 0 60 ]
Determines how long the system waits before scrolling the text le.
Use MENU button to exit.

56

Games
Yes, games! Choose your favourite!
Arrow buttons move
FUNC.SET- choose level (Moves counter should
be 0). Erase / +/- restart current level DISP. show 'about' info Zoom rocker - undo / redo
moves Use MENU button to exit.

If colours are not displayed properly, try entering and exiting Canon menus before
entering <ALT> mode.
Console
tbd
Flashlight
For cameras with fold out LCD. Turns the LCD panel into a flashlight! When in
Record Mode and the LCD panel is swiveled facing forward, the LCD display turns
all-white so you can see your way around in the dark, or to illuminate some close
object while setting up to take a photograph.
Show Build Info
Displays the current version of CHDK in use, ie:- 0.9.9 - 910, date May 07 2010.
Show Memory info
Displays free RAM available, also CHDK size and load address.

57

Enable Lua Native Calls'


Enable [?] / Disable [ ]
Enables Lua programs to make native calls to Canon functions. This is
sometimes necessary for advance script functionality but also involves some risk
as making the wrong native call could seriously corrupt / damage your camera.
SD Card
Functions for making your SD card bootable and for managing dual partition cards
(for cameras released prior to 2011)
Create card with two partitions
Reformats SD card with a small FAT16 primary partition and a larger FAT32 parition
that takes up the rest of the SD card. Warning : using this function will delete
everything on your SD card - including all your photos. Be sure to backup first!

This option creates a 2 MB FAT partition on the SD card, that's xed on the code for
now. Copy the CHDK rmware extensions to this partition and load them, (The
DISKBOOT.BIN and PS.FI2 les). Then select "Make card bootable" in "Main Menu
> Miscellaneous stuff", so it does not complain when you write-protect the card. Next
step is to select "Swap partitions" in "Main Menu > Miscellaneous stuff", this will
hide this small partition and make the larger FAT32 one visible. We need to format it,
and copy CHDK les DISKBOOT.BIN and PS.FI2 to it too, so we can perform "swap
partitions" again. So format it in FAT32, copy CHDK, insert it on the camera and load
CHDK using "Firmware Update", Select "Swap partitions" and "Make card bootable",
write-protect the SD card, (lock with slider on side of SD card) and power- cycle the
camera. It should now load CHDK from the small 2 MB partition, but have access to
the larger FAT32 partition to store pictures, video and the CHDK folders.
The size of the 1st partition is fixed to 2MB in the code (not changeable in the CHDK
menu), but you can change it there and compile your own build, if you know how,
using whims CHDK Shell
Normally the creation of a partition deletes all data on the card, the swap command
should not delete any data, but you should test this first!

58

The partitions can also be created manually with a card reader on a computer, the 1st
partition must be less than 4GB and formatted with FAT16.
Make card bootable...
Option to enable auto load of CHDK at startup if there is a DISKBOOT.BIN
executable file in the root of the SD card. For cameras released prior to January 2011,
the memory card must have FAT12 or FAT16 format for the bootable partition. For
cameras released after January 2011, memory cards can use FAT32 format on the
bootable partition. Note that large cards formatted in camera will be FAT32 and so
will not boot on cameras release prior to 2012. See [ Prepare your SD card ] for more
information.
After selecting this option, turn the camera off, remove the SD card and write protect,
or 'lock', the card. Reinstall the card and CHDK should automatically load.
Swap partitions
For cameras with multi partition support. To access each partition on a multi
partition memory card, (necessary for computer OS's that will only show one
partition at a time (i.e., Windows). You must swap partitions in order to see the
DCIM folder on the computer. You then must switch back for CHDK to boot in the
camera.
EyeFi
Various functionalities related to EyeFi cards. If the card in your camera is not of the Eyefi
type you will see this menu but every action will result in some sort of error.

Available networks
Queries the card for wifi networks visible at the current location. Once the list is displayed
you can press move though it with the UP and DOWN keys and press FUNC.SET to chose
a network to register on. A textbox will allow you to enter the password. Use half-shoot to
change the character set, MENU to switch input mode.
Configured networks
Shows the list of the networks currently configured in the card. you can move through the
list with the UP and DOWN buttons. Pressing FUNC.SET you can delete a network. You
will be prompted to confirm the deletion..
Force eyefi wlan off
Turns off the wlan of the card, regardless of Canon's firmware settings
59

Force eyefi wlan on


Turns on the wlan of the card, regardless of Canon's firmware settings
Debug
The Debug menu provides access to internal
camera data related the functioning of CHDK,
primarily for advanced users and CHDK
developers.
Debug data display
[None, Props, Params, Tasks]
Shows debug data on the OSD,.
PropCase
http://chdk.wikia.com/wiki/PropertyCase
(PropertyCase or PropCase) are basically variables in the camera's RAM that we
can read and write from CHDK by using uBasic commands get_prop and
set_prop. "Under the hood" some other uBasic commands work by changing
propcases, making it possible to use them in a portable way. Some propcases are
read only. Often writing to a propcase will have a different effect than pressing
the corresponding buttons on the camera's user interface. Typically this means
that while you may change something like the shutter speed and your change
will be effective in your photo, it may not be updated to the camera's on-screen
display. To find out which Property case a function changes...
Params
http://chdk.wikia.com/wiki/Params
Param are camera variable that are stored in NVRAM, which means that unlike
PropCase values, they are remembered even if the camera is turned off.
These values are generally shown unsigned - that's because the propcase viewer
doesn't know whether a value is supposed to be signed or unsigned, and treats
everything as unsigned. "65152" is just the same value as "-384" when considered as
an unsigned short rather than a signed short. Shows the task list, only on VxWorks
cameras.
PropCase / ParamsData page
[ 0 -128 ]
Sets the base address for the currently diplayed page
Task list start
(VXWORKS cameras only) First task to display If you set this to more than there are
tasks running on the camera, it will show the last twelve, adjusting on the fly as tasks
get created and then deleted.

60

Show Misc Values


Enable [?] / Disable [ ]
Displays various values for service and programming purposes.
Memory browser
Allows you to view memory location values.
Benchmark
Test write and read speed of the camera and SD cards. To compare memory cards.
Since this function during the first pass provides inaccurate values a 2nd run should
always be carried out, only the values of this 2nd run are meaningful.
ALT +/- debug action
Action for the [+/-] key. On some cameras like the SD/IXUS series the DISP key
is used instead).
Values are ;
[None]
[Dmp RAM] : a complete memory (RAM) dump will be written to the SD
card (see below)
[Page] : the page shown in the propcase viewer can be changed (doublepress changes the paging direction (up/down))
RAM Dump
Allows you to configure a how a RAM dump selected but the ALT +/- debug
[DmpRAM] action (above) will be written to the SD card.
Note:RAMdumpsarewrittentotheSDcardinthe
DCIM/100CANONdirectoryasJPGfiles.Eachdumpisnumbered
sequentiallyfromCRW_0001.JPGforward.Thesearenotactually
JPGfilestheuseofthisfilenamingconventionissimply
toallowthefile(s)tobetransferredtothePCviastandard
ptpbaseddigitalcamerasoftware.
Save ROM Crash Log
When the Canon firmware crashes, it usually stores a log of current state information
at the time of the crash. This function lets you save that log as a file on your SD card.
This can be very useful to CHDK developers when they try to debug the cause of the
crash - posting this log while reporting a bug/crash to the CHDK forum can be very
helpful.

61

CHDK to PC Interface via PTP


All recent Canon P&S cameras support connection to a PC via a USB cable. When
connected, this cable allows transferring images from your camera directly to your PC. The
protocol used to implement this capability is called Picture Transfer Protocol
With CHDK, you can
greatly increase the
capability of the PTP
interface. Several PC
programs have been
created to allow access
to this expanded
capability as
documented on this
wiki page :
PTP_Extension.
The most advanced of
these program is
probably CHDKPTP. It
supports both a
command line and GUI
interface, and provides
advanced scripting
capability on the PC side via Lua. Complete camera control, file browsing, and "live view"
in real time of the camera's LCD are all supported.

62

CCHDK2.CFG
A note on the CCHDK2.CFG configuration file. This file, amongst other things, saves the
settings the user has made to the CHDK Overrides, OSD elements, etc. If this file is
corrupted for whatever reason, it can cause some weird behavior from CHDK camera
settings. So to test for this, find and rename the file so a new one will be created at the next
start-up. If this eliminates the erratic behavior the old file can be deleted. Remember
though, all your personal settings will be gone. It is advisable to keep a copy of a known
good CCHDK2.CFG file from your camera version to use as a replacement for a corrupted
one, and to add it to other SD cards for that camera, to have them ready with your
preferred settings. The file is found at /CHDK/CCHDK2.CFG on the SD card.
Note that previous version of CHDK used configuration files called CCHDK.CFG and
CCHDK1.CFG
CCHDK2.CFG can be edited with the application CFGEDIT - available at >
http://www.zenoshrdlu.com/zips/CFGEDIT.jar

63

OSD Map (Diagram)

64

Key Shortcuts
While in <ALT> mode the following buttons are reassigned:
A Series,SX130 [+/-] Toggles RAW capture mode
G Series AF Frame Selector/Erase Toggles RAW capture mode
S Series FUNC.SET Toggles RAW capture mode
SD/IXUS Series DISP. Toggles RAW capture mode
SX200 DISP. Toggles RAW capture mode
SX10, 20 AF Frame Selector/Erase Toggles RAW capture mode
Common to most cameras
MENU Displays the main CHDK menu
FUNC.SET Display the Script menu
DISP. Button - Return to previous menu
Full Shutter press Executes the selected Script, or end the running script
The following functions are available any time CHDK is loaded.
Common to most cameras
Half Shutter + Left Toggle Zebra on/off
Half Shutter + Right Toggle OSD on/off
Half Shutter + Up Toggle Histogram on/off (on recent versions Half Shutter +
Down)
Half Shutter + Down - Toggle Overrides on/off (on recent versions Half Shutter +
Up) [Half Shutter + LEFT or RIGHT on a few later models like the IXUS120 - owners
of other later versions could verify please?]
More keys and shortcuts
In manual focus mode - (with <ALT>) Up Set MF to infinity
Down to set MF distance to hyperfocal distance (based on f/stop and zoom focallength).
Left Decrease Value Factor,
Right Increase Value Factor.
On the SD/IXUS series the DISP. button is used to instantly set MF (manual focus)
distance to infinity.
See > Extra Photo Operations
65

In OSD layout editor


DISP. Change the number of pixels the OSD (on-screen display) elements are moved
by.
In File Browser
RIGHT make selection,
LEFT Open context menu.
Zoom-in / Zoom-out Scroll-By-page in File Browser and File Reader modes.
Half-shoot Scroll one page forward in File Reader mode.
Menu numerical units Zoom-in / Zoom-out - To enter numerical values in menus the zoom lever / switch is used
to change the unit value, ie: 1, 10, 100.
The unit value is indicated in the top LH corner of the OSD. When doing this, first select
the menu item to be changed, then change the unit value with the zoom lever / switch, then
change the selected menu item.
SX series (And models with separate playback and record buttons) To turn the camera
on directly into record mode, hold the On /Off button for ~ one second. When switched on,
pressing the shutter button full or half will switch to record mode from playback mode.
Note1.CameraswithaSHORTCUTbuttoncanbeconguredin
Miscellaneousstufftouseeither,Shortcut,Flash,Timer,ISO,
orVideobuttonstoenter<ALT>mode,theShortcutbuttonisthe
default,pressthebuttonwithashortmomentarypress,andfor
theoriginalCanonfunction,pressandholdslightlylonger.

66

Acknowledgements
CHDK might be one of the most innovative improvements to any camera that has ever
come along since the beginning of photography. Started out by some people who only
wanted RAW out of their raw-crippled cameras, it has now grown into an adaptable,
exible, and full-featured operating system.
We are all extremely grateful for the work that everyone has put into this arena of
discovery, implementation, coding, sharing, camera testing, (especially with the unknown,
and possibly high risk), and those that provide all the information on the Wiki pages (and
elsewhere in the world). Those who have contributed to this great stride in the world of
photography deserve a huge vote of thanks.
Many thanks go to the original developers - vitalyb, and GrAnd, owenjm, Harvester,
jeff666, [mr.anon], MX3, Fingalo, ewavr, Allbest, CHDKLover, BarneyFife, also to Jucifer
and PhyrePhoX, and cosmograph for the excellent CHDK logo.
Other early contributors included acseven (for the forum), achurch, acid2000, ADamb,
ArtDen, atalwar, Atnas, auj, awdark, barberofcivil, Basq, Bg~, bondo, bperrybap,
brabl2, brake, cail, chdkj, chr, cormac, cppasm, cyril42e, danielmewes, Darkness,
DataGhost, DavidB, diablo, Divalent, ehmu, elecktro255, ERR99, fantomas4o, fboesch,
fbonomi, fe50, shpepper, f_m_b, fudgey, gajownik, Graystar, Grin, Hacki, HarpoMa,
hiker_jon, h-v-n, iax, ihar, image13, Intrnst, Keoeeit, KevB, m2tk, ma_jk, MartinBudden,
mattkime, Microfunguy, mkmenuts, mproko, mrblack51, mrowl, MrSpoon, msl,
mweerden, nandoide, neszt, nimrod, nirschi, Novex, oldgit, pedropaislopes, peregrine,
pev69, philmoz, pixeldoc2000, PlasmaHH, quietschi, RaduP, revivery, reyalp,
Rorschach, rudi, sharky, shenty, Smartkiller, snc, stevetm2, stift, syahmixp, Thorwak,
tillo, toinech, TPC, tr1stan, ultimA, uvvv, Velo, viulian, vit40, whim, whoever, wontolla,
xiaofeng, Yarvieh, Yossar, zeno, zfeet, and for the documentation of Canon Basic - Oren
Isacson and Alfredo Ortega
More recently, the bulk of core CHDK development and support has been contributed by
the hard work of acseven, fe50, hacki, rudi, lapser, msl, nafraf, philmoz, reylap, srsa_4c,
tsvstar, whim, & zeno : supported by generous contributions by many others.
And to all rest of the camera porters, rmware dumpers, testers, forum posters, wiki
contributors & editors, bug reporters and general fans - many thanks for your big part in
keeping this project going.

67

GPL license information


This file is part of CHDK. Copyright 2007 -2013 The CHDK Team
This program is free software; you can redistribute it and/or modify it under the terms of
the GNU General Public License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version. This program is distributed
in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details. You should have received a copy of
the GNU General Public License along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA, 02110-1301 USA
Trademarks
Registered in the U.S. and other countries.
Canon is a registered Trademark of Canon Inc.
PowerShot is a registered Trademark of Canon Inc.
Apple, Mac, Macintosh, and Mac logo are registered Trademarks of Apple
Computer Inc.
Photoshop is a registered Trademark of Adobe Systems Incorporated,
Windows is a registered Trademark of Microsoft Corp.

68

You might also like