-
Notifications
You must be signed in to change notification settings - Fork 12
Description
On expansion microscope, the action was to run two cameras at the same time. However, when assigned the two cameras as the primary and the additional, due to the difference in their field of view and pixel size, after clicking acquire in Continue Scan, the software freeze, an error occurs:
...
Nanoscale: Stage axes mapping is not specified in the configuration file, will use default settings!
Macroscale: Stage axes mapping is not specified in the configuration file, will use default settings!
Exception inside ObjectInSubprocess: Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 526, in _child_loop
result = getattr(obj, method_name)(*args, **kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\model.py", line 525, in run_command
self.prepare_acquisition()
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\model.py", line 1027, in prepare_acquisition
self.virtual_microscopes[m].prepare_acquisition()
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\microscope.py", line 443, in prepare_acquisition
return self.calculate_all_waveform()
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\microscope.py", line 483, in calculate_all_waveform
exposure_times, sweep_times = self.calculate_exposure_sweep_times()
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\microscope.py", line 577, in calculate_exposure_sweep_times
) = self.camera.calculate_light_sheet_exposure_time(
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\devices\camera\camera_photometrics.py", line 314, in calculate_light_sheet_exposure_time
linedelay = self.camera_parameters["unitforlinedelay"] / 1000
File "", line 2, in getitem
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\multiprocessing\managers.py", line 825, in _callmethod
raise convert_to_error(kind, result)
KeyError: 'unitforlinedelay'
camera ready to acquire programmable scan mode with scandelay 1
model thread exception happened! 'unitforlinedelay' Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 252, in func
target(*args, **kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\controller.py", line 960, in
"model", lambda: self.model.run_command(command, *args)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 417, in attr
return _get_response(self, True)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 438, in _get_response
raise resp
Exception: 'unitforlinedelay'
model thread ended because of exception!: not all arguments converted during string formatting Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 252, in func
target(*args, **kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\controller.py", line 960, in
"model", lambda: self.model.run_command(command, *args)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 417, in attr
return _get_response(self, True)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 438, in _get_response
raise resp
Exception: 'unitforlinedelay'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 98, in run
self.target(*self.args, **self.kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 260, in func
logger.debug(
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1434, in debug
self.log(DEBUG, msg, args, **kwargs)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1589, in log
self.handle(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1599, in handle
self.callHandlers(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1661, in callHandlers
hdlr.handle(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 948, in handle
rv = self.filter(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init_.py", line 806, in filter
result = f.filter(record)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\log_files\filters.py", line 95, in filter
if record.getMessage().startswith("Performance"):
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init_.py", line 367, in getMessage
msg = msg % self.args
TypeError: not all arguments converted during string formatting
Exception in thread model:
Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 252, in func
target(*args, **kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\controller.py", line 960, in
"model", lambda: self.model.run_command(command, *args)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 417, in attr
return _get_response(self, True)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\model\concurrency\concurrency_tools.py", line 438, in _get_response
raise resp
Exception: 'unitforlinedelay'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 98, in run
self.target(*self.args, **self.kwargs)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\controller\thread_pool.py", line 260, in func
logger.debug(
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1434, in debug
self.log(DEBUG, msg, args, **kwargs)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1589, in log
self.handle(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1599, in handle
self.callHandlers(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 1661, in callHandlers
hdlr.handle(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init.py", line 948, in handle
rv = self.filter(record)
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init_.py", line 806, in filter
result = f.filter(record)
File "C:\Users\Dean-Lab\Documents\navigate\src\navigate\log_files\filters.py", line 95, in filter
if record.getMessage().startswith("Performance"):
File "C:\Users\Dean-Lab\miniconda3\envs\navigate\lib\logging_init_.py", line 367, in getMessage
msg = msg % self.args
TypeError: not all arguments converted during string formatting
...
Also, switching from macroscale to nanoscale, or vice versa, software would freeze probably due to the same reason.
Camera info:
lightning:
x_pixels: 4608.0
y_pixels: 2592.0
Photomatrics IRIS 15:
x_pixels: 5056.0
y_pixels: 2960.0