Close

Simulated Camera

A project log for Wireless ETTL flash conversion

Convert a vintage flash to wireless with full ETTL

lion-mclionheadlion mclionhead 12/12/2022 at 18:490 Comments

The receiver could be made with just a PIC, but it took an STM32 to prove it.  The mane problem is generating 0, 2, & 3.3V for CLK & D2.  That would take a resistor ladder & 2 GPIOs for each signal.  10 years ago, it wouldn't be worth it.  Today, mixed signal microcontrollers belong in a museum.

The great challenge with this is error correction.  The decision was made to prioritize error protection above high speed sync.  It would repeat the trigger packets several times.  The problem with this is it doesn't allow using a voltage change as the trigger.  Instead of a voltage change signifying the triggers, it would use a certain number of of consecutive characters not part of the standard packets.  Then, there would be a timeout if it doesn't get any trigger characters.

The latency of a 4 character sequence is going to be 400us at 100000 baud.

Another optimization is compressing the packets.  1 idea was just sending all the differences from the ref packets, but that led to the mane flash packet being 2.1ms while the smallest packet is 1.4ms.  There's a lot of redundancy.  The mane flash could be compressed to 1.7ms.  That increases the mane flash repeats from 3 to 4.  Unfortunately, this requires a lot of logic & it it's more vulnerable to unforeseen protocol variations.

Another idea is just increasing the baud rate to 200000.

Besides the highest speeds, another thing getting dropped is manual mode. That was only ever used for photographing very fast objects & never off camera.  It would require moving data from the flash to the camera with a lot more logic.  If the camera doesn't know it's in manual mode, it delays for the preflash but it otherwise works.

It takes 5ms to switch the radio between receive & transmit.  Even with ACKs, the reliability wouldn't improve since they would reduce the number of repeats. It wouldn't be possible to wait for an ACK & resend during the flash sequence.  Without an ACK, it can always resend.


After much testing, it finally took its 1st pictures with the wireless flash.  ETTL 1/100s worked.  Manual mode worked, though it had a delay for a preflash.  Exposure compensation & multi didn't work.  The lion kingdom never used multi, but exposure compensation has to work, so it needs 2 way communication.

High speed mode worked to the 1/4000 maximum with debouncing set to 4 characters.  High speed mode worked in ETTL or manual mode.  Triggers fired 250us late with a 4 character debounce & 150us late with a 2 character debounce.  It was surprising how correlated the delay was to the serial port speed.  The latency of a digital signal is microscopic compared to what a mechanical shutter considers fast.

Discussions