Canon eTTL Protocol Investigation

Having established an Arduino based sniffer complete with an IDE I was finally ready to do some actual real investigation of the Canon eTTL protocol - as spoken by my Canon G16 and a 430EX II flash.

My prior work had indicated that there was constant chatter between the camera and flash. Even in an idle state.

Arduino Bit Bashing Canon eTTL Protocol

I needed to be able to sniff the digital data exchange between a Canon G16 camera and a 430EX II flash. Prior work had determined that the Canon digital eTTL protocol interface was VERY close to SPI. Mostly. Except for signal voltage levels. I had already determined that the Arduino SPI interface was not suitable for sniffing.

Arduino eTTL Protocol Sniffer

The easiest way to investigate the Canon eTTL protocol was to eavesdrop on the conversation between the camera and a flash. This approach would allow me to observe a real working system. I needed to learn about the Cannon eTTL protocol supported by my G16. There was some reference material available on the web but they all cautioned about model differences and misunderstood features. So a sniffer was the way to go.

This required a couple of things I did not have:

Arduino Development Setup

Time to learn how to program an Arduino! How hard can it be? In my early years I was involved in real-time process control and embedded controllers. I even created a patent for weighing garbage. So this was familiar ground, just repackaged and modernized for the hobby crowd. Bonus! Makes my life easier.

Canon eTTL Decoder

The path was clear. If I wanted to control my underwater strobes from my G16, I would need to create a magic decoder box. It would translate between Canon eTTL digital protocol and Nikonos analog TTL protocol. Simple in concept: digital goes in, analog comes out.

This is a problem calling for a microcontroller solution! Easy enough, There are several readily available hobby boards to choose from. Seems like a perfect excuse to spend some time and money playing with technical gadgets. 

Canon eTTL Protocol

The Nikonos analog TTL protocol is relatively simple and has been reverse engineered by a number of scuba strobe manufacturers. The X contact is used to start the strobe dump and the Q contact is used to stop it. That's about it.

Tags: 

Canon Hot Shoe

My problem: trying to control scuba strobes from my new Canon G16.

I have ruled out optical control because my YS110 strobes work poorly in optical mode AND the G16 cuts out after about 20 onboard flashes in continuous burst mode. So now I am focused on wired sync control of my smart analog strobes via the camera hot shoe.

Scuba Camera Strobe Woes

Time for a brand new topic: Scuba diving, Cameras and Strobes. My problem is how to happily control my scuba camera strobes.

Drupal List Fields allowed_values_function == Custom Display Values

We had a simple problem and Drupal provided a simple (but very obscure and hard to find) solution. So I thought I would blog about it.

MyPhoneExplorer - Part 2

After a short burn in period involving multiple 2 way syncs with both my desktop and my laptop, I was ready to wean myself from Gmail.

Pages

Subscribe to KWGiffen & Associates RSS