Table of Contents
The EOS 20D introduced a new version of the Canon native protocol. While it still seems to use the same basic format of command and response blocks, some command codes have been abandoned, new ones added, and, worst of all, some codes have changed their meanings. This section describes what we know so far about this revised protocol. I assume that there will be other cameras using this new protocol; the first candidates would be the EOS 1D Mk. II and 1D Mk. II, which share the CR2 raw image format with the 20D.
Table 4.1. New Storage Control Commands (cmd2=0x11)
cmd1 | cmd3 | Argument(e.g.) | Response Length | Operation | Old code |
---|---|---|---|---|---|
0x01 | 0x202 | 0x00000001 "A:/DCIM/100CANON\IMG_0098.CR2" <NUL> | L | Get picture | 0x01 |
0x04 | 0x201 | none | 0x54 | Unknown | |
0x05 | 0x201 | none | 0x54 | Unknown | |
0x06 | 0x201 | none | 0x54 | Unknown | |
0x07 | 0x201 | none | 0x54 | Unknown | |
0x09 | 0x201 | none | 0x54 | Unknown | |
0x0A | 0x201 | "A:/DCIM/101CANON/IMG_0105.JPG" 0x0007 0x0005 0x0100 0x0008 0x008f7668 0x008f8078 "A:/DCIM/101CANON/" | L | Delete file | 0x0D |
0x0B | 0x202 | 0x01 "D:\DCIM"<NUL> <NUL> <NUL> | L | Get directory | 0x0B |
0x0D | 0x201 | "A:" <NUL> | 0x5c | Disk info request | 0x09 |
0x0E | 0x202 | none | L | Flash Device Identification | 0x0A |
Table 4.2. New Camera Control Commands (cmd2=0x12)
cmd1 | cmd3 | Argument(e.g.) | Response Length | Operation | Old code |
---|---|---|---|---|---|
0x01 | 0x201 | none | 0x9c | Identify camera | 0x01 |
0x03 | 0x201 | none | 0x60 | Get time | 0x03 |
0x04 | 0x201 | 0x390873f0 0x00000000 | 0x54 | Set time | 0x04 |
0x05 | 0x201 | none | 0x74 | Get owner | NA |
0x06 | 0x201 | "Cornell University" <NUL> | 0x54 | Set owner | 0x05 |
0x13 | 0x201 | none | 0x58 | Power supply status | 0x0A |
0x1D | 0x201 | 0x00000000 | 0x94 | Get custom function settings | 0x13/??? |
0x21 | 0x201 | 0x00000000 | 0x54 | Unknown command | |
0x22 | 0x201 | 0x0000000f | 0x54 | Unknown command | |
0x23 | 0x201 | none | 0x58 | Get Body ID | 0x1D |
0x24 | 0x201 | none | 0x458 | Get Photo Abilities | 0x1F |
0x25 | 0x201 | 9 bytes: 00 00 00 00 00 00 00 00 00 | 0x5c | Remote Capture Control | 0x13 |
0x26 | 0x202 | 0x10 bytes: 00 00 00 00 00 00 01 00 02 00 00 00 07 00 00 00 | varies | Get captured image | 0x17 |
0x35 | 0x201 | none | 0x5c | Lock keys | 0x1B |
0x36 | 0x201 | 00 00 00 00 00 00 00 00 | 0x54 | Unknown |