diff --git a/scripts/export_camera_profile.py b/scripts/export_camera_profile.py index 12f4f84..81b9095 100755 --- a/scripts/export_camera_profile.py +++ b/scripts/export_camera_profile.py @@ -40,15 +40,21 @@ except ImportError: sys.exit("vmbpy not installed - see the header of this file") # Recipes are ordered: binning changes the sensor geometry, and the throughput -# limit caps the frame rate, so both come before the rate is set. A feature the -# camera does not have is reported and skipped, not fatal: the fleet runs several -# Alvium generations and their feature vocabularies differ. +# limit caps the frame rate, so both come before the rate is set. Frame +# triggering is turned off first: the host streams free-running frames and never +# sends a trigger, and a camera that boots with it on (a legacy tower's, whose +# old program triggered by software) delivers nothing - and keeps its frame rate +# read-only - until it is off. A feature the camera does not have is reported +# and skipped, not fatal: the fleet runs several Alvium generations and their +# feature vocabularies differ. RECIPES = { # Daylight. 2x2 binning is not optional at 10 Hz: unbinned RGB8 on a 16 MP # sensor is a 48 MB frame, which is both over the USB ceiling in # known-issues #19 and far too slow to reach 10 fps under any throughput # limit this camera offers. "standard": [ + ("TriggerSelector", "FrameStart"), + ("TriggerMode", "Off"), ("BinningHorizontal", 2), ("BinningVertical", 2), ("PixelFormat", "RGB8"), @@ -67,6 +73,8 @@ RECIPES = { # Night: 1 Hz, long exposures, more gain allowed, noise over motion blur, # and the status LED off so it cannot contaminate a long exposure. "night": [ + ("TriggerSelector", "FrameStart"), + ("TriggerMode", "Off"), ("BinningHorizontal", 2), ("BinningVertical", 2), ("PixelFormat", "RGB8"),