Author Topic: Tracking camera state  (Read 147 times)

garry23

  • Hero Member
  • *****
  • Posts: 1499
Tracking camera state
« on: April 15, 2018, 10:42:42 AM »
@a1ex

I've played around with lots of ideas on the above, and I have been successful in some areas, eg

Code: [Select]
repeat -- hang around until ETTL value has stabilised
check_tv = camera.shutter.apex
msleep (scriptmenu.submenu["Settings"].submenu["ETTR Set Time?"].value*1000)  -- adjust this for your camera. The time delay allows the ML ETTR process to settle down
until check_tv == camera.shutter.apex

But I can't get the above approach to work when I'm wanting to pause the script until the camera has stopped taking images, especially when I don't know how many images it is going to take, eg when advanced bracketing.

Generically I was looking to use the above this way:

Code: [Select]
repeat -- hang around until something has happened that you are tracking
-- put stuff here that you want to do or do nothing
        sleep(1)
until {thing you are watching} == {true state}

The problem I have is, I cant't find a 'thing to watch' to detect the end of advanced bracketing, and I don't want my pause to negatively interact with advanced bracketing.

Do you have any ideas how I might approach this scripting challenge, ie pause a script (allowing other tasks (Canon and ML) to compete) and detect the restart condition, eg image taking using advanced bracketing has stopped.

Cheers

Garry

garry23

  • Hero Member
  • *****
  • Posts: 1499
Re: Tracking camera state
« Reply #1 on: April 15, 2018, 11:17:37 PM »
@a1ex

I worked out a 'solution'. A bit clunky maybe, but it works.

I exploited the fact that the advanced bracketing, with a Canon 2 sec delay, returns to the ML LV after completing.

Thus all I need to do is detect this, ie lv.overlays == 2, together with the first bit of the code having started. I can then continue running the script to completion, even with an advanced bracketing in 'the middle'.

My experimental script thus does the following:
1. captures some brackets under my control
2. carries out an ETTL (sic)
3. captures some more brackets under advanced bracketing control
4. captures some more images

:-)