0

I have ~10 cameras (FLIR Blackfly S BFS-PGE-31S4C) set up currently between 2 different rooms (but on the same network) and trying to set up groups/masks so I can specify which room to use and it will automatically select the correct cameras. I am using the PySpin/simple_pyspin packages and currently set the following for the interface with all of my cameras:

    interface.TLInterface.GevActionDeviceKey.SetValue(0)
    interface.TLInterface.GevActionGroupKey.SetValue(1)
    interface.TLInterface.GevActionGroupMask.SetValue(1)

And this for each camera

    camera.ActionDeviceKey = 0
    camera.ActionGroupKey = 1
    camera.ActionGroupMask = 1

This means that all cameras are in the same group/mask. The Spinnaker documentation is not very clear (and for C++) on how to properly implement the GroupKey and GroupMask so I followed page 8 from this document. I tried the examples they had (which worked), by setting the following:

interface.TLInterface.GevActionDeviceKey.SetValue(0)
interface.TLInterface.GevActionGroupKey.SetValue(1)
interface.TLInterface.GevActionGroupMask.SetValue(int('1110',2))

camera.ActionDeviceKey = 0
camera.ActionGroupKey = 1
camera.ActionGroupMask = int('0011',2)

but if I try to set the camera ActionGroupMask to '1110' for example, it does not work. But I expected it to work since a logical bitwise AND operation on the group mask number of the action command and the group mask number of a camera would be non-zero.

My questions are:

  • What is the difference between ActionGroupKey and ActionGroupMask
  • If the rules are different for PySpin, how can I know which values are valid to use for the group/mask?
Kunal Shah
  • 610
  • 6
  • 17

0 Answers0