From 3467fe7759501f2a68b405623e32fc51894b62ba Mon Sep 17 00:00:00 2001 From: Joel Collins Date: Thu, 8 Aug 2019 10:14:57 +0100 Subject: [PATCH] Added extra type checking when applying pi camera config --- openflexure_microscope/api/v1/blueprints/base.py | 3 ++- openflexure_microscope/camera/pi.py | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/openflexure_microscope/api/v1/blueprints/base.py b/openflexure_microscope/api/v1/blueprints/base.py index 924d7631..3ef923ca 100644 --- a/openflexure_microscope/api/v1/blueprints/base.py +++ b/openflexure_microscope/api/v1/blueprints/base.py @@ -205,7 +205,8 @@ class ConfigAPI(MicroscopeView): """ payload = JsonPayload(request) - logging.debug("Updating settings from POST request.") + logging.debug("Updating settings from POST request:") + logging.debug(payload.json) self.microscope.apply_config(payload.json) self.microscope.save_config() diff --git a/openflexure_microscope/camera/pi.py b/openflexure_microscope/camera/pi.py index ee4d53ee..cf2d70c6 100644 --- a/openflexure_microscope/camera/pi.py +++ b/openflexure_microscope/camera/pi.py @@ -173,15 +173,15 @@ class PiCameraStreamer(BaseCamera): # Apply gains and let them settle if 'analog_gain' in settings_dict: logging.debug("Applying analog_gain: {}".format(settings_dict['analog_gain'])) - set_analog_gain(self.camera, settings_dict['analog_gain']) + set_analog_gain(self.camera, float(settings_dict['analog_gain'])) if 'digital_gain' in settings_dict: logging.debug("Applying digital_gain: {}".format(settings_dict['digital_gain'])) - set_digital_gain(self.camera, settings_dict['digital_gain']) + set_digital_gain(self.camera, float(settings_dict['digital_gain'])) # Apply shutter speed if 'shutter_speed' in settings_dict: logging.debug("Applying shutter_speed: {}".format(settings_dict['shutter_speed'])) - self.camera.shutter_speed = settings_dict['shutter_speed'] + self.camera.shutter_speed = int(settings_dict['shutter_speed']) time.sleep(0.2) # Let gains settle