CHDK Wiki
Register
Ke7doy (talk | contribs)
(Undo revision 7699 by 124.77.48.142 (talk))
Ke7doy (talk | contribs)
Line 338: Line 338:
   
 
[[Category:CHDK]]
 
[[Category:CHDK]]
  +
 
reverted vanalism[[User:Ke7doy|Ke7doy]] 03:41, 24 January 2008 (UTC)
 
reverted vanalism[[User:Ke7doy|Ke7doy]] 03:41, 24 January 2008 (UTC)

Revision as of 03:41, 24 January 2008

Q. What does the CHDK program do?

A. After loading of CHDK program you can get the following functionality:

  • Shooting in RAW
  • Live histogram (RGB, blended, luminance and for each RGB channel)
  • Zebra mode (blinking highlights and shadows)
  • DOF-calculator
  • Battery indicator
  • Scripts execution (exposure/focus/... bracketing, intervalometer and more)
  • File browser
  • Text reader
  • Calendar
  • Some fun tools and games :)

Q. What camera models are supported by the CHDK program?

A. Currently, the CHDK program is available for Canon digital cameras of the following models:
Camera: Firmware Versions

Firmware versions in green are available in stable and/or dev for download
Firmware versions in gray do not have official CHDK releases. Check porting status here
For the development status of not-yet-supported cameras, see For Developers.
In theory it can be modified to support any camera based on the DIGIC II or DIGIC III platform. (How do you do this?)


Q. How can I get the original firmware version number of my camera?

A. To get the version number, you need to:

  • create a file called ver.req in the root directory of your SD card. Be sure to save it as all files and not text.
  • switch on the camera in playback mode (don't switch on in rec mode and change to playback later)
  • press the set+disp. buttons together (press set first, hold it down, then press disp.).

You will see a string like Firmware Ver GM1.00E. The 1.00E part is the firmware version.
ver.req is just an empty dummy file.

Creating the ver.req file

  • Windows based systems
One way to create this file is to switch to dos-mode and type:
"copy nul ver.req" <ENTER>
Copy it to your SD.
An alternative is to select the SD card in a DOS box and type
copy con ver.req <ENTER>
, then Ctrl-Z to close the file.
Another way to create this file: make an empty text file with Notepad and rename it into "ver.req".
Yet another way to create the file is to open the memory card in My Computer, right click inside the window and select New... and then Text Document. An empty text document will be created and you can rename it to "ver.req".
  • GNU/Linux or *nix based systems
Or on *nix (Linux,Solaris,BSD etc) based systems, from the shell cd to your SD card's mount point and run the following command:
touch ver.req
  • Mac based systems
When using a Mac, open a blank document in TextEdit, then choose save, and save as ver.req , then select the root folder on your memory card from the menu provided.
Important: change plain text encoding from Western (Mac OS Roman) to Unicode (UTF-16), and uncheck "if no extension is provided, use .txt" (if you don't see these options then you need to select "Make Plain Text" from the Format menu). Then click on Save.

Please note! your camera's firmware version is NOT 1.0.0.0 or 1.0.1.0! It's a number that looks similar to this example: 1.01e. If you get a number like 1.0.1.0, then you did not do it properly. Try again.

[It has been found that some cameras now also support finding a "vers.req" file in the same way. Note that it is called "vers.req" and not just "ver.req". That extra S in the filename now allows you to even see the total number of shots that have been taken with your camera with the same keys pressed multiple times. For further info see this thread on the new CHDK Forum.]



Q. How can I update the original Canon firmware?

A. Official Canon firmware updates (if available) can be found here at the Canon website.

Information about an unofficial upgrade of the A620 firmware from an early version to 1.00F can be found in this message. The 1.00F Firmware can be obtained from this link.

Attention: These firmware updates will permanently change the firmware of your camera (unlike the CHDK program, which is only temporary). If anything goes wrong during the update process (for example because you tried it when the batteries were low), you may end up with a dead camera. Please also note that using one of these updates may void your warranty - at least if they are not directly from Canon. (I don't know... please check for yourself.)


Q. Where can I download the CHDK program?

A. Go to the Downloads page.


Q. Where can I find a changelog of the CHDK program?

A. Go to the ChangeLog Page. Click on the Chgset number of the build you want to know about and read the log message.


Q. How do I get CHDK onto my camera's SD memory card?

A. Follow these steps:

  • Remove the SD card from your camera and put it in the card reader of your PC.
  • Copy the files PS.fir and Diskboot.bin into the root folder of your SD card.
  • Put the SD card back into the camera.

Q. How do I manually load CHDK so I can use it?

A. Follow these steps:

  • First, copy CHDK onto your camera's SD memory card (see that question above)
  • Start the camera in Play mode. (note: you must start directly into playback mode. It won't work if you start in 'record' mode and then switch to playback mode)
  • Press the Menu button.
  • Go to the new menu entry "Firm Update" (usually, it's the last option in the menu).
  • Select that function and confirm that you want to update with "OK". (If you don't see that option in the menu, then either you didn't correctly copy the files to the SD memory card, or you didn't start your camera directly into playback mode)

The camera will now reboot (in about 1-2 seconds), the blue LED on your camera will blink once and a splash screen will appear.
If the camera hangs or is switched off during updating process and/or does not respond to the power button, then this means that this CHDK program is not compatible with your camera firmware. If that happens, don't worry! Just open up the battery compartment and remove the batteries to turn the camera off, stick them back in and everything should be fine.

See also How can I make the CHDK program load automatically at startup?


If you later want to update a CHDK version, just copy the new PS.fir and Diskboot.bin files onto the SD card and overwrite the old ones. You do not have to delete any other file. All settings are forward/backward compatible.

After running CHDK and setting all your options for histograms, zebra-mode, OSD layout, fonts, colors, last script loaded, etc. all your settings are saved in the /CHDK/CHDK.CFG file. It even saves the last position you were reading in the last text-file you were viewing using the File-Reader. If you want to recreate those exact same settings on another SD card with CHDK on it, just copy that file from one SD card to another, making sure it's in the /CHDK/ folder on the new SD card.


Root

The root directory

Q. What is the root directory of my SD card?

A. The root directory is the first or top-most directory. If your SD card has the drive letter "K", then the root directory is "K:\".




Q. Do I need a special card reader, or is it sufficient to connect the cam to the PC?

Card-Reader

a card reader

A. Digicanon has an uploader for the A610 on his page which you can use to upload the CHDK program files to the A610 without a card reader. This uploader may work also for other camera models, I've used it for A620.

How to use it:

  • Put your CHDK program files PS.FIR and DISKBOOT.BIN into the same folder as the uploader
  • Make sure your SD-card is not write-protected
  • There is a textfile named "FirmInfo.txt". It contains this text: "[Firmware File Name]". Just change the name below it into the filename you want to upload. Then save the text file and start the UploadFirmware.exe. You have to do this two times: 1x for PS.FIR and 1x for DISKBOOT.BIN.

I personally find it more convenient to use a cheap USB card reader. Cheap readers have no sensor for the write protection switch on the card, and this is great. Otherwise, you would have to switch the card to "unlocked" everytime you want to put something on the card, or delete something with your PC.


Q. When I switch off my camera and then switch it on again, the CHDK program does not work. What's wrong?

A. When you update your camera by CHDK program it doesn't touch the original firmware. Because it is just a some kind of resident program and it remains in camera memory until camera is shutdown. So, if something goes wrong and camera does not respond you never get your camera toasted, because after switching off/on your camera will back with original firmware.
Recently, CHDK program got the ability to autoload (see the next answer).


Q. How can I make the CHDK program load automatically at startup?

A. You have to do the following actions:

  • Copy the files PS.fir and DISKBOOT.bin into the root folder of your SD card (if you have not already done so).
  • Load the CHDK program as described above.
  • Enter <ALT> mode.
  • Press Menu to enter the CHDK main menu.
  • Go to "Debug Parameters" in the Menu on the screen.
  • Select "Make Card Bootable". (It won't seem like anything happened. don't worry)
  • Switch off the camera and take out the SD-card
  • Lock your SD-card. This is mandatory. (But you will still be able to record pictures.)
  • Reinsert the card back into the camera.

From now on, CHDK will load automatically on startup until you unlock the card again.
If the camera reports that the SD-card is locked, just ignore that information; the camera is still able to store pictures on the SD-card.

Note: Unfortunately, autoload does not work with FAT32-formatted SD-cards. This means: cards up to and including 2 GB will work, cards larger than 2 GB won't.

Note2: 4 GB cards can support the autoload feature if they are formated in FAT16 manually. To format SD-card in Windows command line just type 'format X: /fs:fat' (where X: - a drive letter of mounted SD-card). But be aware that the formatting of 4 GB cards in FAT16 leads to non-standard 64K cluster size. The correct support of such cluster size is not guaranteed.

Autoload sometimes also does not work if the camera is switched on directly in record mode.


Q. I don't need the autoload feature temporarily/anymore. How can I disable it?

A. The simplest way is to just unlock your SD-card. Deleting the file DISKBOOT.bin from your flash card will have the same effect.


Q. What are the key settings and shortcuts?

A. Here is a list of important key settings and shortcuts. Have a look at the firmware usage guide for detailed explanations. Note that you can press and hold down certain keys to simulate pressing this key multiple times, just like your PC keyboard.

camera-specific key settings:

  • Enter <ALT> mode:
- direct print button for A-series cams
- user selectable button for S-series * ( shortcut by default )
* See the Firmware Usage pages of <ALT> mode and/or Miscellaneous Menu on how to select and use the button of your choice for entering and exiting <ALT> mode.
  • Toggle RAW on/off:
- <ALT> + +/- button for A-series
- <ALT> + func button for S-series
- <ALT> + erase button for G-series

universal keys and shortcuts:

  • Start a script: <ALT>+shoot
  • Open "scripting parameters" menu: <ALT>+set
  • Enter the main configuration menu: <ALT>+menu
  • Toggle Zebra mode on/off: half shoot+left
  • Toggle Histogram on/off: half shoot+up
  • Toggle OSD on/off: half shoot+right
  • Scroll-By-page in File Browser and File Reader modes: zoom-in / zoom-out / half-shoot (scroll one page forward in File Reader mode)
  • (main configuration menu) Go back one menu level: display
  • (OSD layout editor) Change the amount of pixels the OSD elements are moved: display
  • (File Browser) Open context menu: left

Q. How do I use scripts?

A. CHDK allows you to automate your camera by running "scripts", small and simple programs written in a short-hand version of BASIC. You can find some pre-made scripts like bracketing, intervalometer etc. here or write your own scripts using the scripting language. To use a script, you have to do this:

  • Put the script you want to use into the CHDK/SCRIPTS-folder on your SD card
  • Load the script (main menu>scripting parameters>load script from file) and adjust script parameters as needed
  • To run the script, press the shutter button while in <alt> mode. You can also stop it by pressing the shutter button again.

If your script does not work properly, try to increase the "script shoot delay" parameter, which is a small time-delay after a shot is taken, before the next line of the script is executed. Some scripts also may require certain camera settings. For example the generic bracketing script: go to menu>review and switch it to "off". Use P, Tv, Av or M mode and activate the camera function where you want to have bracketing. For example: Activate the focus slider when you want to have focus bracketing. Activate the exposure compensation slider in P mode when you want to have exposure bracketing, and so on.


Q. I've shot some RAW pictures. How do I process them?

A. When you have a RAW file from your cam, you can

  • convert it to the standardized DNG digital negative format using the DNGForPowerShot converter. The DNG files then can be processed with nearly every RAW converter on the market, including Adobe Lightroom and Apple Aperture (read notes on the bottom).
(Note that DNG4PS will copy the EXIF data from the RAW file's corresponding JPG file to the new DNG file. The RAW files themselves do not contain any EXIF-header info until this is done. If you are using some of the new builds of CHDK with features like shutter-speed and aperture overrides then the original JPG EXIF header, from which this data is taken for the DNG RAW file's EXIF-header, may not reflect these new values that are outside of the normal bounds of your Powershot's EXIF information. A small utility was created that allows you to process your JPG files to update appropriate EXIF fields with these non-standard CHDK override shutter-speed, aperture, and ISO values. You can find the latest version of this utility at the new CHDK Forum at the end of this discussion thread Converting CHDK EXIF info to Standard EXIF. Read the full thread on how to install and use it as it also requires the installation of EXIFTool and copying then renaming the main "exiftool(-k).exe" file to just "exiftool.exe". Installation and usage info is on a link in that thread to the original Auto ISO Patcher that was edited for this purpose.)
  • convert it to the DNG format using the DNG4PS-2 converter. It is newer and much more optimized and featurefull. Supports Windows and linux. Now in early stage of development.
  • process the RAW files directly with appropriate converters. Right now, this applies to converters which are based on David Coffin's DCRaw. Here are four free examples:

[Note that the above mentioned steps may not work for all cameras yet. Especially the A640 CHDK program was just recently added, so the RAW converters may not support it yet.
If you know that it works or have further information, please delete this paragraph]

The A630 and A640 are first mentioned in DCRaw (http://www.cybercom.net/~dcoffin/dcraw/) source code at version 8.70 (current as of May 7, 2007 is version 8.72), so may be supported (I don't have these cameras to test with). If you want to use DCRaw directly (from command line), you can download the source code from the above link and compile, or download binaries for both Windows and Mac OS X from http://www.insflug.org/raw/.

The A630 and A640 is also supported in Raw Therapee (http://www.rawtherapee.com/). Its also available for Windows

DNG For PowerShot supports A610, A620, A630, A640, A710 IS, S2 IS, S3 IS since v1.1

There is also a hack for RawShooter (thanks PhotoHans). Examine a DNG file to obtain the exact name eg. 'PowerShotS3IS' (no spaces) open RawShooter.exe in an editor and change 'PowerShot G5 ' to PowershotS3IS and save. Make sure file length is unchanged and make a backup before you begin.

These are some Mac programs which read the RAW files (.CRW) produced by CHDK. From least to most hassle (and decreasing expense):

Fast, sweet WB & other options.
An extremely capable editor, better than PhotoShop in many ways. Full RAW file support, interpolation methods, WB, contrast, clipping, color correction, contrast, auto-whitepoint, clipping limits, assign ICC color-profiles, define curves on all or each channel, save favorite presets, etc.
Promising. Slower; its WB options not yet satisfactory for some.
Does many conversions, great for automation, but you're working blind. This page gives examples of its parameters.
This is a GUI-Version of the above mentioned dcRAW. Works with my A710is (and I guess with most other Powershots)
These export JPG, and some TIFF and DNG


How to make converted DNG files work with Apple Aperture

By default the converted RAW files do not work with Apple Aperture, but with a little plist hack you can organize and edit them in Aperture!

  • Convert the RAW files with DNG4PS2 (Only Windows verison avaliable, but it also works with Darwine or CrossOver Office )
  • In the finder, navigate to System/Library/Frameworks/ApplicationServices.framework/ Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/Raw.plist

If you are using Mac OS X 10.5 Leopard, the file is in /System/Library/CoreServices/RawCamera.bundle/Contents/Resources/Raw.plist

  • Open up the Raw.plist with any text editor (I use SubEthaEdit) or an advanced plist editor.
  • Add the follwing line into Raw.plist:
 <key>Canon PowerShot A610</key>  <string>Canon PowerShot G6</string> 

(Change "Canon-PowerShot A610" into the name of the camera you have. I also tried the S70 and 350D strings which also works. You can examine different Canon cameras' strings. Colors will be offset since Aperture treats your converted DNG files as the camera you assigned.) (2008/1/16 - Removed the dash from the <key> above from its previous, nonworking form <key>Canon-PowerShot A610</key> <string>Canon-PowerShot G6</string>. Make sure to add the key above the Canon PowerShot G6 entry in Raw.plist)

  • Save the edited Raw.plist
  • Now you can load all the converted DNG files into Apple Aperture.

For more detailed discription on editing the Raw.plist you may look at here.


> hi! only DCRAW and RAW THERAPEE works with my S2 IS raw files, but imho (for me) RAW THERAPEE is better...you can edit your foto before you save it (i.e. in TIFF). So, don't waste your time:) Download RAW THERAPEE for your S2 IS raw files :)


My recent experience with CHDK for Canon G7 (fw v1.00i): The CHDK program works perfectly with the G7. Many Raw applications won't open the G7 raw files. UFRAW doesn't display white balance "as shot"; requires manual adjustment to make images look ok. UFRAW doesn't display G7 EXIF metadata. Picasa does seem to display white balance "as shot", but white balance controls are limited. Picasa does not display EXIF metadata. For best results: convert raw files to DNG using DNG4PS-2 (a modified Adobe DNG Converter). DNGForPowerShot and Adobe DNG Converter won't work for the G7. Then open with Adobe PhotoShop + Adobe Camera Raw Plugin or Adobe Lightroom (other apps that recognize DNG may work). With this protocol, image white balance will be displayed "as shot" and EXIF metadata will be preserved. The only issue is that Photoshop thinks that your photos were shot using a Canon A640 (not really a problem). Good luck!

Q. Does using the CHDK program void your warranty?

A. First, please bear in mind that CHDK comes with no warranty for any use; you use it at your own risk. What follows is just a few thoughts, and is not a legal opinion. Many believe that using the CHDK does not harm your warranty, since it is said to be loaded into the memory only temporarily (turn off the cam and it's gone completely) and that it leaves the original camera firmware untouched.
Canon Tech Support says: "Unfortunately, any upgrades to the software of the camera not performed by an authorized Canon Repair Facility, would void the warranty." ... and ... In further discussion with Canon about this specific hack, their response is: "If it is not Canon firmware the warranty would be void."

Is it an "upgrade" of the camera firmware when the firmware remains untouched? It's up to you to decide. Don't use it if you are not willing to take the slightest chance. Many many people have used CHDK on their cameras (including some very experimental versions) and there is no report of any permanent malfunction. Thus, CHDK appears to be quite safe to use as long as you make sure that it's the CHDK and not a real firmware update (A real firmware update which is not an official Canon update could alter or completely screw up the camera and will void the warranty). Addressing their second comment (i.e. "if it is not Canon firmware"): CHDK is NOT firmware. By very definition, FIRMware is software that remains in the memory of the device when it is not using any power-source.

However, this is not a legal opinion and the user accepts all risk of using it. And as a practical matter, if you send your camera in for warranty service, and Canon says your warranty is void because they found evidence of CHDK on your memory card, there is not much you can really do (what are you going to do? Spend thousands of dollars suing them to get your camera repaired?)


Q. May I suggest a new feature?

A. Yes you certainly can, although not every wish can be fulfilled. Please note that the CHDK is not able to change any standard behaviour of the camera, because it does not modify the original firmware. CHDK can just "extend" current functionality.

Here is a list of "Frequently Suggested Features":

Possible
  • Support for more camera models
In theory the CHDK can be ported on every Digic II camera, but this takes time and a firmware or firmware dump (which you might be able to provide if a firmware dumper is available for your model). If the new cam is very different internally/externally from already supported models, it would be very difficult to port the CHDK without actually having the camera, because heavy testing would be required.
Suggested, but not possible at the moment
  • Removal of the 1GB film size limit (well, now it seem that this IS possible!)
  • uBasic: direct access on camera features in scripts.
Right now it's only possible to emulate button presses. There's no way to tell the cam directly to start a sound memo, for example.
  • Exposure times longer than 15 seconds / Bulb mode
This would probably mean a change in the original firmware and so it is against the design philosophy of the CHDK. But it would also increase image noise and the time of the dark frame subtraction: for a 2 min. image, your camera would also need to shoot a 2 min. dark frame afterwards.
As a workaround, you can take multiple exposures with an intervalometer script and combine them afterwards into one image with a very long exposure, for example with CombineZM. If you choose an exposure time of 1s or faster, the camera won't make a dark frame subtraction. Combine this with the new 'press' and 'release' scripting commands of the shutter button and you will get almost a real bulb mode with no dark frame subtraction time - you only have to combine the images afterwards on your PC. This is a method that many astrophotographers use, it is referred to as "Image Stacking". For more information here's one (of thousands) of pages online describing How Image Stacking Works There are a few freeware packages to also help with this process, one called Registax comes to mind. Using this method with low ISOs you could get nearly noise-free images with many-hours long exposures, far surpassing anything that a DSLR can do on its own.
CombineZM is not used for long exposures, it's used for stacking planes of focus for extending DOF in macro photography (primarily), whoever edited this from the original information that I provided is just stupid and wrong.
Suggested, but not possible at all
  • SDHC support for cams which don't have it
  • Video resolution more than 640x480
These require the changes in hardware part.
  • Zebra mode which not only supports luminance, but also R/G/B
It is possible, but not with acceptable speed. Because the camera provides the image in YUV format it is too hard for the internal processor to convert the image to RGB on the fly with acceptable speed.

If a feature that you have in mind hasn't already been requested or wouldn't be impossible to do, please feel free to suggest it here Feature Requests & Feedback.


Q. What can I use exposure/focus bracketing for?

A. You can use focus bracketing to increase the DOF (depth of field) of a photo. This is especially useful for macros, because often the DOF is so shallow that large parts of the picture will be blurred. Just load your pictures into CombineZM (freeware), click "Macro>Do Stack" and they will be combined into one photo with large depth of field.

You can use exposure bracketing to make a high dynamic range photo. See these links for tutorials or try one of these tools: Photomatix (demo available), Traumflieger-DRI-Tool (freeware; no installation required; just load your pictures and click "start").

For bracketing shots it is best that you use a tripod and don't shoot moving objects. So the different pictures will match perfectly. In the event that you are using hand-held bracketed exposures and each frame is not perfectly aligned, you can use a freeware utility called "HDR Alignment Tool" (download link and discussion). But for best results it's always better to start out with perfect alignment in the beginning by using a tripod. "HDR Alignment Tool" will, however, fix most all of your alignment problems admirably.


Q. Why won't my Remote-Capture programs work?

A. If you are using programs like Remote Capture from Canon, "Cam4you Remote" (the best I've ever found! ~keo~), "PSRemote", or "Time-Lapse" (has a nifty geo position function to compensate for changing sunrise/set) they need to do a "hand-shake" with the camera when first connecting to the camera. CHDK's slight delay on boot-up might/will prevent these programs from connecting to the camera properly. Just remove your SD card and UN-lock (write-enable) the card to turn off CHDK's auto-booting feature. Or if not using the auto-booting feature, power-up the camera without CHDK running. These remote-capture programs should then connect just like they always had. Perhaps future versions of these programs might be updated for CHDK capable cameras so they will work in conjunction with it, vastly improving their own software's capabilities too by running complex/beneficial CHDK scripts remotely. Requests to the authors might help.


Q. Does the CHDK program consume additional battery power?

A. (wise guy answer) Yes, because you will use your camera more often!

B. Some people measured the battery consumption rate and found that using the CHDK does not affect battery consumption (either not at all, or just minimally). It makes no difference whether the live histogram etc. is activated or not, because the CPU of the camera is always running (looking for keyboard presses in the loop) and the histogram is calculated even it is not displayed.
CHDK users tend to half-press the shoot button more often than regular users, as this allows them to see not only the green/yellow rectangle, but also the histogram, zebra, etc.

If you are interested in the details about which camera mode consumes how much battery power, you can find the details here.


Q. I have a Mac But Nothing Works!

Q. I can't seem to get CHDK to run on any SD card I put it on. Or after I have managed to get it working I can't get CHDK to run any scripts written for my camera!

A. See this special Mac FAQ page.

reverted vanalismKe7doy 03:41, 24 January 2008 (UTC)