ixus 160 - usb remote - unreliable sync with flash strobe - General Help and Assistance on using CHDK stable releases - CHDK Forum supplierdeeply

ixus 160 - usb remote - unreliable sync with flash strobe

  • 3 Replies

Offline mrred

  • *
  • 11
ixus 160 - usb remote - unreliable sync with flash strobe
« on: 08 / January / 2019, 10:06:02 »
Hi all, since 7 days, I try to sync 5x ixus 160, with a strobe light. 20% of the time one picture from random ixus are darker, I use an arduino to sync the flash (+25ms delay) with my 5x ixus (usb remote same wire).

on the camera side I have enabled USB remote / one push / Normal / Synch
1/125 speed iso 100 no ND manual focus

at 1/60 I can manage to have almost 95% of good shot, but not at 1/125.

I tried with 3x differents strobe brand with flash duration from 1/800 to 1/4000.

my camera startup script:
Code: [Select]

my chdkptp script (to setup camera):

Code: [Select]
!return mc:cmdwait('call set_prop(require("propcase").RESOLUTION, 3)')
!return mc:cmdwait('call set_prop(require("propcase").FLASH_MODE, 2)')
!return mc:cmdwait('call set_zoom(0)')
!return mc:cmdwait('call set_aflock(1)')
!return mc:cmdwait('call set_config_value(1141,1)')
!return mc:cmdwait('call set_config_value(1140,1200)')
!return mc:cmdwait('call set_config_value(1130,100)')
!return mc:cmdwait('call set_config_value(1131,1)')
!return mc:cmdwait('call set_config_value(1160,0)')
return mc:cmdwait('call set_config_value(1110,1)')
!return mc:cmdwait('call set_config_value(1111,1)')
!return mc:cmdwait('call set_config_value(1114,800)')
!return mc:cmdwait('call set_config_value(1003,2)')
!return mc:cmdwait('call set_prop(271, 5)')

!return mc:cmdwait('call set_remote_timing(1000)')

to fire camera and flash, I use my arduino:
HIGH usbremote
3000ms delay
LOW usbremote
25ms delay

Any ideas to improve the sync between cameras?
thx alot for your precious help !
« Last Edit: 08 / January / 2019, 13:26:26 by mrred »


Offline mrred

  • *
  • 11
Re: ixus 160 - usb remote - unreliable sync with flash strobe
« Reply #1 on: 09 / January / 2019, 06:17:31 »
I obtain a max 8ms sync jitter between camera (usb remot), anyone have some tips to improve, thx alot?


Offline srsa_4c

  • ******
  • 3814
Re: ixus 160 - usb remote - unreliable sync with flash strobe
« Reply #2 on: 09 / January / 2019, 12:10:57 »
I'm only replying because no-one else has (I'm not really into cam arrays and sync).

You could try the following:
- since you're shooting with flash, increase your exposure time (obvious solution, but doesn't work well if your subject is not in complete darkness)
- use a CHDK build that has "precision sync" implemented. Problem is, precision sync is only implemented on a single camera model and won't necessarily work even if somebody makes such a build available. The original changeset was this: r3302.
There is an outdated copy of SDM source that has some relevant constants for the ixus160, here (I don't know whether they are tested or just copy&paste from somewhere).

Re: ixus 160 - usb remote - unreliable sync with flash strobe
« Reply #3 on: 09 / January / 2019, 15:43:27 »
I obtain a max 8ms sync jitter between camera (usb remot), anyone have some tips to improve, thx alot?

Some more background.

This test, for SX150IS, used "normal" usb sync for 88 stereo pairs:
I used a CRT to measure sync. The results were unexpectedly good. The average mis-sync was 0.37ms and maximum was 5.1ms . The test used a physical spst switch - chdkptp was not used.

I had actually expected results similar to those in waterwingz test, for A1200, here:
i.e. the  distribution referred to for Normal CHDK sync method enabled  (i've attached the original diagram from that post here). That test used a single camera triggered by a microcontroller.

I do not understand why the SX150IS results were so good cf A1200.

Having said this, Microfunguy did mention, prior to the availability of vnd's precision sync code, sub 1ms sync "most" of the time (in SDM) here:

Presumably as a consequence of the nature of multi-tasking (tasks having to yield at random times), most results have sub-millisecond error whilst the rogue shots are many milliseconds in error.
Although not sure, I don't think the CHDK / SDM code for "normal sync" would have been materially different at that time.

I cannot currently find the result set but a subsequent SX150IS test of 500 stereo pairs, using the vnd precsion sync code referred to in waterwingz post resulted in a similar distribution of results to that of the original 88 pair test BUT also included 3 pairs in which the mis-sync was approximately 33ms (i.e. seemingly similar to the green distribution shown in waterwingz experiment).

Before considering these 33ms "outliers" - I do not understand why the "precision" sync results were no better than the "normal" sync results. Neither have I since conducted a larger quantity test with "normal" sync to identify whether mis-sync much greater than 5.1ms occurs infrequently.   

In any case, philmoz suggested a fix to address these "precision sync" infrequent "outlier" mis-sync occurrences here (all of around a single 33ms timing period):

I had that built and then tested 1000 stereo pairs here:
The Maximum Mis-Sync was 7.57ms and average 0.13ms. The single timing period problem outlier's seem solved for SX150IS.

As the precision sync code stands there is probably a delay of 4 x std periods (around 132ms) between usb release and exposure start but that could be camera dependent (also, if ambient light is dropped low/very low after focus I suspect it will also destroy precision sync). My comment here:
suggests this delay could be reduced to 3 x std periods (approx 99ms). I plan to test that soon, after a ptp sync investigation, but don't currently have a chdk build environment.

To enable the precision sync code (without my suggested changes) the camera's platform_camera.h file is included as described here:

If you are interested in testing precision sync someone will probably build that for you if you mention it.

Are you triggering the 5 cameras, directly, from a single digital i/o?
How did you measure the 8ms max mis-sync & how many 5 cam trials did you base that on?
To be sure, are you only firing a single flash in each experiment (IGBT controlled flash simply stop xenon discharge at a point and their start time depends on a few things)?

In summary, as it stands I can't be totally sure that precision sync provides any benefit to normal sync (and could just be adding a little extra latency). If you are measuring a maximum of 8ms mis-sync across hundreds of images that is excellent and a precision sync test is probably unnecessary - if your cameras provide sub 1ms sync practically all the time (like SX150IS) then that is just icing on the cake.
« Last Edit: 10 / January / 2019, 10:34:02 by andrew.stephens.754365 »


Related Topics