Canon PowerShot Series Transfer Protocol Description $Date: 2005/07/29 20:15:26 $


Table of Contents

1. Introduction
About this document
Camera Models Covered
Contributors
Copyright
To Do
Serial
USB
General
Changelog
2. Serial Protocol Description
Introduction
Data link layer
Serial timing
Framing
Escaping
CRC
Transport layer
Packet level
Message fragment level
Session (message) Layer
Identify camera
Get Power Status
Change Owner Name
Set Date
Get disk(s)
Disk info
List (show directory contents)
Download and Data
Upload file
Switch Camera off
Low Battery warning
3. USB Interface
Init of camera
USB Command Protocol
Structure of a command block
Structure of a response block
Status Codes
Summary of available (known) commands
Get Picture
Make directory
Delete directory
Disk Info Request
Flash Device Identification
Get Directory
Delete file
Set File Attributes
Set File Time
Identify Camera
Get time
Set Time
Change Owner
Power supply status
Remote Camera Control
Camera control initialization: 00
Exit release control: 01
Start viewfinder: 02
Stop viewfinder: 03
Release shutter: 04
Set release parameters: 07
Set transfer mode: 09
Get release parameters: 0A
Get zoom position: 0B
Set zoom position: 0C
Get available shot: 0D
0E Set custom function
Get custom function: 0F
Get size of extended release parameters: 10
11 Get version of extended release parameters
Get extended release parameters: 12
13 Set extended parameters
Select camera output: 14
15 Do auto exposure, focus, and white balance
Download Captured Image
Download Captured Preview
Unknown
EOS (D30/D60) Lock Keys
EOS Unlock Keys
Get EOS Body ID
Get Camera Photo Abilities
Lock Keys
USB Upload (a little bit special)
4. New USB Interface
Summary of available (known) commands in new protocol
Get Picture
Unknown function
Unknown function
Unknown function
Unknown function
Unknown function
Delete file
Get Directory
Disk Info Request
Flash Device Identification
Identify Camera
Get time
Set Time
Get Owner
Set Owner
Power supply status
Get Custom Functions
Unknown Command
Unknown Command
Get EOS Body ID
Get Photo Abilities
Remote Capture Control
Camera control initialization: 00
Exit release control: 01
Release shutter: 04
Set release parameters: 07
Set transfer mode: 09
Get release parameters: 0A
Get available shot: 0D
Get size of extended release parameters: 10
Get extended release parameters: 12
Set extended parameters: 12
Unknown command: 1B
Unknown command: 1C
Get captured image
Lock Keys
Unknown command

List of Tables

1.1. File attributes
2.1. Layers of the serial protocol
2.2. Sequence numbers observed in serial streams
2.3. File attributes
3.1. Unknown contents of response packet
3.2. Storage Control Commands (cmd2=0x11)
3.3. Camera Control Commands (cmd2=0x12)
3.4. Remote Camera Control Codes
3.5. EOS Custom Functions
3.6. Fields in camera photo abilities response
3.7. PowerShot G2 image formats reported
3.8. Camera models with unusual response length
4.1. New Storage Control Commands (cmd2=0x11)
4.2. New Camera Control Commands (cmd2=0x12)
4.3. Custom function values for EOS 20D
4.4. Fields in photo abilities response
4.5. EOS 20D image formats reported
4.6. Remote Camera Control Codes
4.7. Remote Camera Control Codes
4.8. Contents of extended release parameters block
4.9. Contents of parameter block for Set Extended Parameters