Gphoto2, version 2.4.4 and the Canon 20D (February 10, 2009)

I just downloaded and buit libgphoto2 and gphoto2 from the 2.4.4 source and am eager to try it out.

I put a fresh batter in the camera (the --summary command was indicating power "bad"), and ensure the camera is in normal mode. Interestingly, the fresh batter seems to have cured some of the USB communication errors (143 and 144) that I was getting previously, so there is a word to the wise.

(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --version
gphoto2 2.4.4

Copyright (c) 2000-2008 Lutz Mueller and others

gphoto2 comes with NO WARRANTY, to the extent permitted by law. You may
redistribute copies of gphoto2 under the terms of the GNU General Public
License. For more information about these matters, see the files named COPYING.

This version of gphoto2 is using the following software versions and options:
gphoto2         2.4.4          gcc, popt(m), exif, no cdk, no aa, jpeg, readline
libgphoto2      2.4.4          gcc, ltdl, EXIF
libgphoto2_port 0.8.0          gcc, ltdl, USB, serial baudboy locking
(~/gphoto2) cholla $ /usr/local/bin/gphoto2 --summary
Detected a 'Canon:EOS 20D (normal mode)'.                                      
Camera summary:

Camera identification:
  Model: Canon:EOS 20D (normal mode)
  Owner: unknown

Power status: on battery (power OK)

Flash disk information:
  Drive A:
  2'039'545'856 bytes total
  1'505'853'440 bytes available

Time: 2009-02-10 17:27:20 (host time +0 seconds)
Now we try and trigger a remote capture.
(/u1/tom/Lists) cholla $ /usr/local/bin/gphoto2 --capture-image
Detected a 'Canon:EOS 20D (normal mode)'.                                      
New file is in location /DCIM/154CANON/_MG_5478.CR2 on the camera
And now let's try the new command Marcus Meissner told us about:
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --capture-image-and-download
Detected a 'Canon:EOS 20D (normal mode)'.                                      
New file is in location /DCIM/154CANON/_MG_5479.CR2 on the camera
Downloading '_MG_5479.CR2' from folder '/DCIM/154CANON'...
Saving file as _MG_5479.CR2                                                    
Deleting file /DCIM/154CANON/_MG_5479.CR2 on the camera
Deleting '_MG_5479.CR2' from folder '/DCIM/154CANON'...
And lastly:
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --capture-preview
Detected a 'Canon:EOS 20D (normal mode)'.                                      
File canon_preview.jpg exists. Overwrite? [y|n] y                              
Saving file as canon_preview.jpg
This yields this "miniature" raw file that Marcus just warned me about.
(/u1/tom/gphoto) cholla $ ls -l
total 7588
-rw------- 1 tom wheel 7208314 Feb 10 17:29 _MG_5479.CR2
-rw------- 1 tom wheel  542283 Feb 10 17:39 canon_preview.jpg
Indeed if I run gthumb (which invokes dcraw for me) it displays _MG_5479.CR2, but is confused about canon_preview.jpg, which is some kind of 1536x1024 pixel TIFF file. (Note the file sizes with the camera pointing at the same subject, the blackboard in my office).
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --get-config capturesizeclass
Detected a 'Canon:EOS 20D (normal mode)'.                                      
Label: Capture size class
Type: MENU
Current: Compatibility mode
Choice: 0 Compatibility mode
Choice: 1 Thumbnail
Choice: 2 Full Image
So, I am in compatibility mode (whatever that is), so as Marcus advises, I will switch to Full Image and see how that works.
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --set-config capturesizeclass="Full Image"
Detected a 'Canon:EOS 20D (normal mode)'.                                      
Capture size class changed
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --capture-preview
Detected a 'Canon:EOS 20D (normal mode)'.                                      
Saving file as canon_preview.jpg                              
This still yields the small file. However, if I specify both on the same command line:
(/u1/tom/gphoto) cholla $ /usr/local/bin/gphoto2 --set-config capturesizeclass="Full Image" --capture-preview
Detected a 'Canon:EOS 20D (normal mode)'.                                      
Capture size class changed
File canon_preview.jpg exists. Overwrite? [y|n] y                              
Saving file as canon_preview.jpg
This yields a file the same size as the CR2 file via download, but dcraw does not seem to like it.
(/u1/tom/gphoto) cholla $ ls -l
total 14628
-rw------- 1 tom wheel 7208314 Feb 10 17:29 _MG_5479.CR2
-rw------- 1 tom wheel 7194192 Feb 10 17:48 big_preview.jpg
-rw------- 1 tom wheel  542445 Feb 10 17:49 little_preview.jpg
This is great progress! No mysterious errors, and if the raw file download thing can be fixed, it should be a wonderful thing. I notice that identify from image-magick shows both the full and small size ".jpg" files to be 1536x1024, which clearly cannot be right. A full size image from the 20D should be 3504x2336.

Here are two files (big and little) from the --capture-preview discussed above: