Skip to content

FLIR camera not working #245

@guiwitz

Description

@guiwitz

In order to benefit from recent changes in the software I tried to run the most recent version from master (46deda8). When starting the software I run into this issue with the FLIR camera:

Traceback (most recent call last):
  File "/home/squid3/Desktop/master_210525/octopi-research/software/main_hcs.py", line 76, in <module>
    win = gui.HighContentScreeningGui(is_simulation=args.simulation, live_only_mode=args.live_only)
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/gui_hcs.py", line 122, in __init__
    self.loadObjects(is_simulation)
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/gui_hcs.py", line 215, in loadObjects
    self.camera: squid.abc.AbstractCamera = squid.camera.utils.get_camera(
  File "/home/squid3/Desktop/master_210525/octopi-research/software/squid/camera/utils.py", line 87, in get_camera
    open_if_needed(camera)
  File "/home/squid3/Desktop/master_210525/octopi-research/software/squid/camera/utils.py", line 42, in open_if_needed
    camera.open()
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/camera_flir.py", line 540, in open
    self.device_info_dict = get_device_info_full(self.camera, get_genicam=True)
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/camera_flir.py", line 347, in get_device_info_full
    nodemap_gentl = cam.GetTLDeviceNodeMap()
  File "/home/squid3/.local/lib/python3.10/site-packages/PySpin.py", line 34169, in GetTLDeviceNodeMap
    return _PySpin._SWIG_CamPtr_GetTLDeviceNodeMap(self)
_PySpin.SpinnakerException: Spinnaker: NULL pointer dereferenced. [-1015]
2025-05-21 15:44:18.540 - 14738 - squid - ERROR - Uncaught Exception! (logging.py:161)
Traceback (most recent call last):
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/camera_flir.py", line 1198, in __del__
    self.stop_streaming()
  File "/home/squid3/Desktop/master_210525/octopi-research/software/control/camera_flir.py", line 871, in stop_streaming
    if not self.camera.IsStreaming():
  File "/home/squid3/.local/lib/python3.10/site-packages/PySpin.py", line 34358, in IsStreaming
    return _PySpin._SWIG_CamPtr_IsStreaming(self)
_PySpin.SpinnakerException: Spinnaker: NULL pointer dereferenced. [-1015]
terminate called after throwing an instance of 'Spinnaker::Exception'
  what():  Spinnaker: Can't clear a camera because something still holds a reference to the camera [-1004]
Aborted (core dumped)

In the code I see comments about like While we transition to AbstractCamera, we need to do some hacks here to make the non-transitioned drivers still work." so I guess this issue is related to this? I tried to debug but don't know enough about the drivers to figure out the problem.

It's definitely not a problem with the camera as the system works fine with older version of the software.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions