FWIW, the 1.4 code should allow http://chdk.wikia.com/wiki/Lua/PTP_Scripting#usb_force_active to work on nearly every camera, without any special define or patches.
Update:
using sx150is-100a-1.4.0-r4153-full built straight out of chdk-shell & using chdkptp gui gave:
> =usb_force_active(1)
> =usb_sync_wait(1)
> =shoot() -> then disconnect 5V prior to 10 sec delay then immediately reinstate 5V
> =usb_sync_wait(1)
> =shoot() -> then disconnect 5V prior to 10 sec delay
2 consecutive synched shots on transistion from 5v -> 0V [if period between issuing shoot() and voltage transistion > 10 secs a timeout shot happened as expected].
Very nice indeed. I'll try to build usb_force_active(1) into multicam.lua camera side script soon. Much easier than having to work between 2 builds for ptp or usb triggering testing - appreciate the FWIW
Now, to get two consecutive shots (Topic: Faster Sync Triggering?) as quickly as possible I plan to add to multicam.lua camera side similar to the following
http://chdk.setepontos.com/index.php?topic=12219.msg120473#msg120473 . It'll need a few changes and i'll need to add
usb_sync_wait(1)
at the start of the script and again immediately after
repeat sleep(20) until get_usb_power(1) == 0 .
Is there anything I can do programatically to ensure the usb_sync_wait(1) has taken effect for the first shot [and prior the 2nd "shoot_full") occurence] or any guidance about how long a wait should be inserted (if any) to allow it to take effect?