Skip to content

Conversation

@rickwierenga
Copy link
Member

Add a parameter probe_liquid_height to STARBackend.aspirate and STARBackend.dispense. If the liquid height is not set using the PLR universal liquid_height parameter (of LH.aspirate and LH.dispense), we will probe the liquid height using cLLD (specifically, the function clld_probe_z_height_using_channel @BioCam introduced in #69). This is implemented in the new STARBackend.probe_liquid_heights function.

This will be useful when we do the automated surface_following_distance computation, so we don't rely on users to know the exact liquid height. While the STAR can have the surface_following_distance parameter work with cLLD natively, the firmware requires us to specify the value for surface_following_distance at a time when the exact liquid height may not be known. Since we do need to know the current liquid_height to compute the accurate surface_following_distance (it is not linear in most wells), we need probing to determine it using probing before computing surface_following_distance. This PR adds probing, a future PR will add automated surface_following_distance.

@rickwierenga
Copy link
Member Author

in the future i hope this functionality can even replace LLD or at least unify with it in the API.

to be complete we would need to implement firmware command ZE "Search for liquid surface (in two sections) via pressure LLD and possibly also via capacitive LLD"

@rickwierenga rickwierenga merged commit 034029d into main Oct 15, 2025
9 checks passed
@rickwierenga rickwierenga deleted the automatic_surface_following branch October 15, 2025 04:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants