OD calibration cannot be saved

I am trying to save the OD calibration. However, I am keep getting this error log: ValueError: could not convert string to float: ‘auto’

Traceback (most recent call last):
  File "/usr/local/bin/pio", line 8, in <module>
    sys.exit(pio())
             ^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1666, in invoke
    rv = super().invoke(ctx)
         ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context(), *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pioreactor/actions/od_calibration.py", line 729, in click_od_calibration
    od_calibration(json_file)
  File "/usr/local/lib/python3.11/dist-packages/pioreactor/actions/od_calibration.py", line 541, in od_calibration
    data_blob = save_results(
                ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pioreactor/actions/od_calibration.py", line 470, in save_results
    ir_led_intensity=float(config["od_config"]["ir_led_intensity"]),
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: could not convert string to float: 'auto'

I did not update for the most recent version so current version is 24.3.10.

Anyone had similar issue?

Ah yea, you can’t use “ir_led_intensity=auto” with OD calibrations (we should have a better error message for this). You’ll need to change ir_led_intensity back to numeric value (a good default is 50) in the config.ini, and try again

auto was introduced recently, and it offers a simple way to pick a value for ir_led_intensity. You won’t loose much by manually choosing a value (like 50).

1 Like