Recently I was faced with the problem of generating a TTL compatible pulse from the PC sync output of a Canon 1D Mark III digital SLR.
This ought to be pretty easy. The sync jack on the camera has two contacts: the center pin and the shield, normally disconnected. When the shutter fires, a switch momentarily closes between the two. My understanding is that older flash units would use this switch closing to discharge a capacitor through a xenon flash tube.
So the circuit is trivial: a 5V supply, a resistor from +5V to the TTL output, connect the grounds, and the PC sync goes between the TTL output and ground. When the shutter fires the camera pulls the TTL output low, otherwise it gets pulled high by the battery.
Except: the Mark III doesn't open the switch until the current has stopped flowing. That's not a bad thing; the camera thinks it is discharging a cap, and keeps going until the cap is drained or the arc in the xenon tube collapses. It does mean that I needed to build a one-shot instead of the single-passive circuit, but that's not really so bad.
The problem is that Canon hasn't documented this behavior anywhere. Worse still, their phone support folks told me the exact operation of the PC sync terminal is proprietary (after keeping me on the phone for over an hour). This is a standard interface! They already have a proprietary flash interface on the top of the camera -- there is hardly any need for another one.
Call me disgusted.