Julian Stirling
714435f2d4
Fix unit tests for stage_measrue as an OFMThing
2026-05-14 16:49:29 +01:00
Chish36
5c128c1467
Removed settings, fixed saving issue and refactored
2026-05-14 15:58:26 +01:00
Chish36
03dc0a065f
Save useful ROM data to data directory
2026-05-14 14:24:48 +01:00
jaknapper
cbfbd84fa9
Changes from review
2026-05-14 10:52:33 +01:00
jaknapper
5be8b0ecab
Update tests, including picamera
2026-05-13 18:07:29 +01:00
jaknapper
1ea308a42d
Move analysis and saving out of async
2026-05-13 17:54:36 +01:00
Joe Knapper
3bbea44eaf
Move saving data out of async, save as json
2026-05-13 17:54:29 +01:00
jaknapper
ab25705edc
Move framerate to basecamera, using data_dir
2026-05-13 17:54:29 +01:00
jaknapper
800aea21dc
Move to async monitoring
2026-05-13 17:54:29 +01:00
jaknapper
44300eafd6
Measure framerate in non-blocking way
2026-05-13 17:54:29 +01:00
Joe Knapper
7450a0e47c
Merge branch 'fom-af' into 'v3'
...
Record fom as other sharpness metric
Closes #615
See merge request openflexure/openflexure-microscope-server!578
2026-05-13 16:53:28 +00:00
Joe Knapper
07caa1f05f
Looser typing of stage positions in autofocus
2026-05-13 17:14:42 +01:00
Joe Knapper
b1791833e2
Clean up data_to_array to not use get attr
2026-05-13 17:14:42 +01:00
jaknapper
563bfcf7be
Update move_and_measure, add unit tests
2026-05-13 17:14:42 +01:00
jaknapper
e93d9777a2
Type checking help for libcamera requests
2026-05-13 17:14:37 +01:00
jaknapper
0e1d9cca18
Improvements to properties and docstrings
2026-05-13 17:14:37 +01:00
Joe Knapper
1f5adbb1a5
Ruff
2026-05-13 17:14:37 +01:00
jaknapper
bea7447f26
Clean up from suggestions
2026-05-13 17:14:37 +01:00
Joe Knapper
cab960fe2c
Apply suggestions from code review of branch fom-af
...
Co-authored-by: Julian Stirling <julian@julianstirling.co.uk>
2026-05-13 17:14:36 +01:00
jaknapper
664bb00c12
Allow users to specify method for autofocus
2026-05-13 17:14:36 +01:00
jaknapper
881970ce34
Record fom as other sharpness metric
2026-05-13 17:14:36 +01:00
Richard Bowman
7163823bf7
Remove the leading underscore from ThingServer._api_prefix.
2026-05-13 15:50:29 +01:00
Richard Bowman
a47a569868
Update usage of hold_global_lock
...
The argument to `ThingServerInterface.hold_global_lock` was changed, so that `True` is now the default behaviour.
This commit updates that in the one place where it's used.
2026-05-13 12:58:50 +01:00
Richard Bowman
b6f4c9972e
Exempt stitching and downloading scans from the global lock.
2026-05-13 12:58:50 +01:00
Richard Bowman
608f4ec0d5
Enable global locking.
...
This commit:
* switches to the LabThings branch
* enables locking when config files are loaded
* Updates jogging so jog moves aren't subject to the lock, but the jog loop is.
2026-05-13 12:58:50 +01:00
Richard Bowman
b00f90aada
Remove settings from SmartStackMixin
...
As properties now take validation settings from the final class, we no
longer need to redefine settings here, so I've removed them.
2026-05-13 11:34:22 +01:00
Richard Bowman
622fa17634
Enable validation for all Things and pick correct branch
...
This commit updates the branch to use Thing._class_settings instead of FEATURE_FLAGS for a safer way to implement new features.
2026-05-13 11:34:21 +01:00
Richard Bowman
05f92b9b33
Specify the feature branch of LabThings and enable the feature flag.
...
I've put the feature flag in `openflexure_microscope_server.things.__init__` so that we only need it once, rather than next to every Thing definition.
I decided it was better here than, for example, in the server or cli modules because this way we still get the feature flags even if the Things are served from a different LabThings server.
2026-05-13 11:33:47 +01:00
Joe Knapper
04b7d0d4fa
Merge branch 'v3-default-factory-for-dictionaries' into 'v3'
...
Use a default_factory for dict default values
Closes #750 and #751
See merge request openflexure/openflexure-microscope-server!561
2026-05-13 08:03:52 +00:00
Joe Knapper
31210be9ac
Merge branch 'objective-sim' into 'v3'
...
Scale blur in simulator based on objective
Closes #745
See merge request openflexure/openflexure-microscope-server!567
2026-05-13 08:02:44 +00:00
Richard Bowman
cb9270c9e8
Use a default_factory for dict default values
...
`backlash_steps` and `axis_inverted` were `lt.setting`s with default values that were dictionaries. This means they had mutable default values, which caused crosstalk in the test suite.
This commit swaps them to default factory functions. This should isolate instances from each other and stop the offending behaviour.
2026-05-13 08:26:52 +01:00
jaknapper
ec83556da7
Convert server prefix to str for Mock tests
2026-05-12 15:42:50 +01:00
jaknapper
645a6dd136
Update endpoints for logs
2026-05-12 14:23:33 +01:00
Julian Stirling
92619e2131
Merge branch 'calibration_thing' into 'v3'
...
Calibrate settling times after moves
See merge request openflexure/openflexure-microscope-server!207
2026-05-11 12:32:30 +00:00
jaknapper
c171e5bdde
Remove hold from sharpness monitor
2026-05-11 12:49:20 +01:00
jaknapper
ffa023dfa9
Correct data types in sharpness monitors
2026-05-11 11:04:55 +00:00
jaknapper
500e08555c
Measure settling time action and hold in sharpness monitor
2026-05-11 11:04:55 +00:00
Julian Stirling
b6efb73cba
Fix data directory save location and mount path
2026-05-11 11:07:38 +01:00
Joe Knapper
906b8be82c
Merge branch 'start-gallery-thing' into 'v3'
...
Start implementing GalleryThing
See merge request openflexure/openflexure-microscope-server!576
2026-05-07 09:51:47 +00:00
Julian Stirling
c7bb3e3c11
Improve some attribute/method names
2026-05-07 09:48:49 +01:00
Julian Stirling
aeb337f9d1
Merge branch 'choose_int_downsample' into 'v3'
...
Choose a correlation resize factor rounded to an int
See merge request openflexure/openflexure-microscope-server!541
2026-05-07 08:14:41 +00:00
Julian Stirling
a16d47ed61
ScanList gets scans from GalleryThing, no ongoing scans shown.
2026-05-06 16:01:09 +01:00
Julian Stirling
4583151345
Add runtime checkable protocol for checking gallery compatibility.
2026-05-06 14:42:44 +01:00
Julian Stirling
93d7d75b0d
Create basic gallery class that finds Things that want to show data
2026-05-06 10:05:34 +01:00
Julian Stirling
cc681a666c
Change shutdown command depending on OS versions
2026-04-30 14:48:35 +01:00
Julian Stirling
5b14f8d820
Add method for checking OS version.
2026-04-30 14:14:24 +01:00
Richard Bowman
9334e99551
Fix typing of JPEGSharpnessMonitor attributes
...
appends should be done on the underlying `_`-prefixed attributes, not on the `Sequence` typed properties.
2026-04-28 14:58:55 +01:00
Richard Bowman
d2aebf8b10
Make properties of JPEGSharpnessMonitor read-only
...
For thread-safety reasons we should not modify the lists used by
`JPEGSharpnessMonitor`. This commit marks them as read-only properties
and types them as `Sequence` so `mypy` should flag if they get modified.
2026-04-28 14:50:04 +01:00
Joe Knapper
924676ff5d
Merge branch 'stack-trends' into 'v3'
...
Stack trends
Closes #752
See merge request openflexure/openflexure-microscope-server!564
2026-04-16 12:20:01 +00:00
Joe Knapper
4da8172a16
Updates from review, mark tests as allowed to fail
2026-04-16 11:49:04 +01:00