CHDK Wiki
Register
Line 258: Line 258:
 
{{Notice|In the early days of CHDK, many developers produced and maintained their own versions of CHDK. You will still find references to those here in the wiki. However, since 2010 there has really only been one version of CHDK maintained for general use - the one available from the autobuild server (executable) and svn site (source).}}
 
{{Notice|In the early days of CHDK, many developers produced and maintained their own versions of CHDK. You will still find references to those here in the wiki. However, since 2010 there has really only been one version of CHDK maintained for general use - the one available from the autobuild server (executable) and svn site (source).}}
   
====Useful links====
+
====Interesting Links:====
The big bucket:
 
[http://chdk.wikia.com/wiki/Downloads here] (if you haven't look yet...).<br /><br />
 
Interesting links:<br />
 
 
View from the core: [http://tools.assembla.com/chdk/timeline Trunk history].<br />
 
View from the core: [http://tools.assembla.com/chdk/timeline Trunk history].<br />
  +
 
More [http://chdk.setepontos.com/index.php/topic,103 answers].<br />
 
More [http://chdk.setepontos.com/index.php/topic,103 answers].<br />
  +
<br />
 
Obs: If someone was forgotten, please excuse. I apologize. Just edit and update for more correct info.
 
 
----
 
----
   

Revision as of 15:27, 1 September 2014

Attention

This page is currently under construction.


The Very First Steps

CHDK :  What's it all about ?

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

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

The CHDK (Canon Hacker Development Kit) software makes some of the extra settings of a DSLR available on Canon's point-and-shoot cameras.
Good places to read about digital cameras are Dpreview (offers lots of camera reviews) or the Canon Forum, a website used by people who love to talk about Canon cameras.

Using CHDK

  • CHDK only works with Canon point-and-shoot digital cameras. CHDK does not work with cameras from other manufacturers, nor with Canon's dSLR cameras.
  • A unique version of CHDK is needed for each Canon camera model and for each firmware version of that camera. For example, the version of CHDK for the Canon G9 camera does not work with the Canon SX200 IS camera.
  • Volunteer computer developers adapt CHDK for each new Canon camera. The adaption takes some time, so CHDK might not be immediately available for a new Canon camera model.
Modern digital cameras contain tiny computers. The firmware tells the computer how to drive the various functions of the camera. CHDK uses the firmware that comes with your camera, so CHDK for the SX200 firmware version 1.00c should not be installed on an SX200 running firmware version 1.00d.

The next section describes how to check which firmware version your camera has. This info is also in the FAQ entry.
Review the official CHDK camera list to see if there is a version of CHDK for your camera model and firmware version.


Installing CHDK

USBCardReader

USB Card Reader

FormatSDCardWindows

Format SD Card

CanonA580 Back

Canon Camera Back Side

The one sentence summary of this section is "put an empty file called 'vers.req' in the top folder on your SD memory card, put the card back in the camera, switch the camera on, and press a combination of buttons." The firmware version will then be displayed on the camera LCD.

Preparing the file on the SD card

To see the firmware version of your digital camera, you must create a file with a special name, on the camera's SD card. It is trivial to do this, if you take the SD card out of the camera and connect the SD card to your PC.

Modern laptops usually have integrated SD card readers; if you have a computer or an older laptop, you will need a separate USB card reader connected to one of the free USB ports.

Now follow these simple steps:

  1. Insert the SD card into your card reader.
  2. [deleted; unnecessary]
  3. Create two empty files in the top level folder of your SD card, one called ver.req and the other called vers.req. Both these names mean "version request". Newer cameras use vers.req.If you put both files on the SD card, you will be compatible with both older and new cameras, and the new request will be used if the camera recognizes it.
On Windows, you can create a file by right clicking on an empty area in the root folder of your card and selecting the New > Text Document menu entries.
Type ver.req and, when asked, click on Yes to confirm that you want to change the file extension. That creates the first file. Now create the second one.
 
In the store

With the files on the card, put the card into your camera. If you don't own the camera yet, you can go to a store and kindly ask the salesman to put this card in the camera, for a test.

  1. Switch the camera in Play mode and start the camera. Remember: camera must be in Play mode before you start it! Some cameras have no Play mode, instead you can press [>]to switch on in Play mode.
  2. Wait until the camera starts completely
  3. Locate the FUNC SET (on PS S2IS it's SET) and DISP buttons (see picture on the left)
  4. Press and hold the FUNC SET.
  5. Still pressing the FUNC SET, press DISP once. (This is not true for all cameras.. some require FUNCSET then DOWN. eg A1100IS)
  6. Look at the display. You will see something like this:
Canon PowerShot A650 IS

P-ID:315B NT D

Firmware Ver GM1.00D

NoError

Jul 6 2007 12:41:33

The GM1.00D part is the firmware version. If you see B1.xx listed, this usually means the firmware is beta.

Write down the camera model and the firmware version, remove your SD card from the camera and thank the salesman nicely for helping you out.

Check the official CHDK Camera list to see if this particular camera model and firmware version is supported.


Will CHDK damage my camera?

There is always a chance for something to go wrong but there are many thousands of satisfied CHDK users, and there are no verified reports of any damage so far. CHDK does not make any changes to the factory-installed firmware in the camera. CHDK is stored on the same memory card as your photos. When you remove the SD card or delete the CHDK files, the digital camera reverts to its original state.

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

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

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

More technical info at: What is the worst that can happen?


I have my camera already!

SD Card with Card Reader

SD Card & Card Reader

Check List

  • one SD card
  • one card reader
  • one personal computer plus one free USB port
  • simple computer navigation knowledge



USB connector

USB Connector


Load CHDK onto the card

WARNING: This process erases all files and folders on the card!

The most current information about the preparation and loading of CHDK onto a SD card is available here :

Instructions on how to prepare your SD card


CHDK is loaded!

First thing you'll notice using CHDK is your OSD (On-Screen Display) changes. You'll see now, left to right a number, two icons and a percent.

  • First number is your available card space in MB.
  • Next to it you'll see your battery icon and below the charge remaining capacity in percent.
  • A720 back buttons

    CHDK buttons

  • The top right one is the iconic representation of the free space amount of your SD memory card in MB.
Menu Navigation
RAW
Raw

RAW menu

A few words about RAW

You have probably already watched those nature programs where they show us the world through the eyes of bees, dogs, flies and spiders. Your camera sensor works in a similar way. Like the human eye, the camera eye - the Charge-Coupled Device (CCD) or the Complementary Metal–Oxide–Semiconductor (CMOS) sensor - sees the light, but in a different way. Therefore, to bring that vision to our natural way of seeing light, some math needs to be done. So, after the camera hardware has done some processing, the OSD can show us an understandable and expected result. The final product is a photo file that you print, send or store in your computer - the JPEG image file. On the other side, this very first and odd looking from the camera's sensor is called RAW. CHDK saves that information in a file for further uses.

CHDK generates a 10 bit non standard RAW file; few commercial programs support this format yet. But you can always convert your CHDK_RAW files to a standard DNG or TIFF file by using this program: DNG4PS-2 and read DNG4PS2 for more information. If you don't have any preference yet, give PhotoLine a try, it already supports CHDK_RAW files. Lately, some people have proclaimed good results with Raw Therapee and UFRaw

Latest version of XnView also supports CHDK's RAW.


More links
About RAW settings RAW parameters and RAW Develop.
About camera sensors Digital Camera Sensors.
About RAW editions and compatibilities Raw image format.
How to use RAW with Linux (this also applies somewhat to Windows and Mac).


CHDK Features

Bracketing and HDR

It's a way of using a series of shots of the same subject, generally at distinctly adjusted settings, to achieve, usually at a later time, a different and better result. Basically, there are three kinds of bracketing: luminance, focus and noise reduction. With many technical variations on each. The first and third can be done internally by a P&S camera with some CHDK processing (RAW Develop).

Now you can go for some HDR (High Dynamic Range) imaging edits.


Bracketing and DOF

There is a good start tutorial at DoF Stacking.

Bracketing and Noise

The easiest way to remove noise of low light photos is by using the internal Raw Develop CHDK functions, there you will find a concept explanation.

Obs.: Noise is a mess... with a lot of variations. If you wanna start this war you must know with what bandit you are fighting against:

CHDK Bracketing Techniques
Useful links

Scripts

Concept

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

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

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

For more information see:

How to load

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

LoadScrptFromFile

Load Script

How to use
How to change
Useful links

CHDK Video features

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

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

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

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


Remember:

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


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

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

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

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


Versions

Notice

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


Interesting Links:

View from the core: Trunk history.

More answers.


Problems: Searching and Posting

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

Searching

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

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

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

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

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

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

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


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

Posting

- Still doesn't work!

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

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


Is there a manual?