-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TroughCarrier Integration #168
TroughCarrier Integration #168
Conversation
pylabrobot/resources/trough.py
Outdated
@@ -25,3 +42,29 @@ def __init__( | |||
category=category, | |||
model=model | |||
) | |||
self.material_z_thickness = material_z_thickness | |||
self.true_dz = true_dz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is true_dz
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The distance between the bottom of a plate/trough and the lower side of the well_material/trough_well_material.
I didn't want to name it dz
yet because we haven't fixed dz
in Plate
yet.
But this information is needed if someone wanted to use this trough anywhere that is not a TroughCarrierSite
with a pedestal. It is the same situation as with PlateCarrierSite
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dz
in plate is just a parameter that will determine the .location.z of wells.
I think since you're building this from scratch now, we might as well do it right from the start, I don't see a reason to sync up with plate. I hope true
is something we should not have to use, because that implies there is a false
somewhere. Probably that's true right now, but not something we should bake into the library like that.
Perhaps through_base_to_container_base
or something could work?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dz
in plate is just a parameter that will determine the .location.z of wells.
As we discussed in PLR Carrier z-Height Issue this is an error, resulting from the incorrect VENUS-to-PLR transfer of ThicknessOfContainerBase
to dz
, which in VENUS is actually the distance between bottom/base of plate_skirt to outside_material_of_well_base).
I am confident that VENUS is not using plate_skirt_base_to_outside_bottom_of_well_base
because it is too long, and instead simply called it dz
in direct analogy to dx
and dy
.
I hope
true
is something we should not have to use, because that implies there is afalse
somewhere.
That is correct. The current well.dz
is false
as we know it is actually well.thickness_of_container_base
/ well.well_z_thickness
.
But I see your point about immediately starting with the correct attribute names for troughs because we are starting from scratch with their definition and don't have to carefully adapt them like we currently have to do with Plate
because Plate
is used by every user.
So we can just rename this Trough.true_dz
to Trough.dz
and maybe make a comment to not confuse it with Plate.dz
because Plate.dz
has not been fixed yet?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So dz
is actually only a parameter of create_equally_spaced_2d
. As with dx
and dy
, it is not an attribute of ItemizedResource (or Plate). In that method call, the name is self-explanatory.
I think for the attribute here, it should really be named something descriptive like through_base_to_container_base
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you mentioned though, for wells, we should be taking into account the well bottom material thickness. I see that as roughly analogous to
through_base_to_container_base
.
That is incorrect here: I've quickly made some rough drawings to visualise what the trough actually looks like:
I highlighted the Trough.through_base_to_container_base
with the actual measurement I took for it, 1.2 mm.
Since the "TroughCarrierSite".pedestal_z_height = 1.5 mm, the trough will therefore sit with its container.base directly on top of the "TroughCarrierSite".pedestal, while the "Trough.skirt" is hanging in the air leaving a 0.3 mm gap below it.
This is exactly like a plate with just one well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is actually not different from what I thought 😅 What exactly is wrong here? Do you want to update this PR? I can revert so you can update, then I can remerge.
I realize my original phasing was not clear. This is not analogous in the physical geometry of these resources. I was just saying these are properties of "single-class" Resources and cannot be modeled as relations between resources. The well-dz is modeled as the relation between resources (namely in Well.location).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because a Trough has no child (or parent), we have to define the through_base_to_container_base as a separate attribute. The alternative would be a "trough-parent and trough-child"-like structure, where the trough-child (the actual Container) is raised wrt trough-parent.
Yes, this is becoming confusing. Because a container is currently essentially a "paperbox", i.e. an object with no material_thickness associated with itself, i.e. all walls are believed to be 0mm wide, if I understand this correctly.
This is fine for wells because they sit inside the bigger plate - with the notable exception of their z-height, which is part of the big problem with Plate
that we are trying to fix atm.
But in the case of troughs this does not really work as you can see above, because not only do we need to account for the material_thickness (at least in z) but here we also have to account for the "trough.child" / "container inside the trough" to be located at an offset to the left-front-bottom / origin of the trough.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you want to update this PR? I can revert so you can update, then I can remerge.
I realize my original phasing was not clear. This is not analogous in the physical geometry of these resources.
No, I think we can leave this definition for now because I updated Trough
to include
material_z_thickness=1.5 &
through_base_to_container_base = 1.2,
-> With this information people can aspirate/dispense with offsets = [Coordiante(x, y, through_base_to_container_base + material_z_thickness]
which will then correctly target the bottom of this trough.
If we find this is cumbersome we can figure out a neater way in the future.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think in lh.aspirate or even STAR.aspirate & co we can incorporate this. Specifying offsets for every operation is not neat, that is something we can easily do automatically.
commit 59f8de7318ad100667fb84804119c7c2ac0145ee Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Oct 7 17:50:07 2024 -0700 fix channel 1-n volume tracking (#273) commit cef404b3dbd951f312b9a20191456b7f272ffb5f Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Oct 1 16:30:19 2024 -0700 [STAR] really skip these on setup if True commit 9edf04a8e01c381ee5c3b020542bbea7e7709806 Author: Phi Nguyen <56458094+Ph1so@users.noreply.github.com> Date: Mon Sep 30 21:48:45 2024 -0400 Add VSpin (spin spin) Wrapper (#243) Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit a14c253155aa8bde2926e7cf43cc07ab258d87d5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Sep 29 15:19:15 2024 -0700 tests for lid rotation with iswap commit 90775c9d9399543b5165a99c03736dd3a03f344d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Sep 29 14:48:16 2024 -0700 add Rotation.__repr__ commit b67193aee145eb068c5ddd44f339b39578ddffe5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Sep 29 14:48:10 2024 -0700 add a setter to Plate.lid commit f265f9fc8e02c48c438770d99cb6e61c1bdf8369 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Sep 29 14:16:19 2024 -0700 forgot these links commit ec2eedc602348557ac148282114045406a5b9192 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Sep 28 18:07:22 2024 -0700 no special treatment for lid on ResourceStack (#267) commit a6d870b8b5dae5c020b1e83b121c11f75b2bfd22 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Sep 28 16:49:36 2024 -0700 Fix iswap rotation issue (#269) commit 0f00e4527642977d0bfc856bdb99c79c5c0ebe01 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 19:31:50 2024 -0700 also fix iswap pickup for rotated resources for vantage (#268) commit 1711edc006e9e34efc1429d1df34b821252b4203 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 17:29:09 2024 -0700 new logo & new forum commit 39ebdf5fdb183b19ea8bad06675e7a58f4768d6f Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 17:08:47 2024 -0700 rename file bc it was too long on Windows commit 92be7424db5de5db0cc4467a1aec8f2d11f0ebc1 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 16:50:11 2024 -0700 link to discuss.pylabrobot.org (#266) commit 0353a674b49dc2f4110e095303b402a55aa67cff Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 16:28:44 2024 -0700 Revert "hamilton liquid classes make kwargs (#248)" (#264) This reverts commit fbb08be3a93719f842cdd480f6499c5a2d716860. commit 6542154ce489d787d6683779fcbe16e525d827fa Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 16:01:57 2024 -0700 [star] [vantage] flags for skipping setting up modules (#263) commit fbb08be3a93719f842cdd480f6499c5a2d716860 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 27 11:12:27 2024 -0700 hamilton liquid classes make kwargs (#248) commit 6d05d453bdef1a826b14ac27bb5843e17ce6a9d5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Sep 26 13:29:54 2024 -0700 [liquidhandler] no blow out error without volume tracking or when blow out volume is 0 (#262) commit 905753c729e805d592430713447981b4ba68516d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Sep 26 13:09:19 2024 -0700 [STAR] homogenization -> mix (#261) commit 8f15ee0973f6d544b710ca741931ca4fa4e5e258 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 25 09:15:16 2024 -0700 Less verbose commit 01a10f852d573456d4505effe87e134205f6f508 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Sep 24 08:21:31 2024 -0700 add T-Therapeutics to “used by” commit 244f36e6211b5c4e5a95dd1e08dad31198eec55b Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Sep 23 19:28:51 2024 -0700 cytation5 in new docs commit a2ca897f03039596482c0942bd41a52824079657 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Sep 23 19:25:53 2024 -0700 new docs theme (#249) commit 6d48b34de78f0b727a200030427d9c3e176a2834 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Sep 23 19:08:43 2024 -0700 top->bottom in docs commit 9d48831c6bc4324ca35a3baf9259c4bfbf11581d Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Sun Sep 22 20:10:19 2024 -0700 [Labware] Add several plates (#254) commit f6f4693e65ccaacf1f861777ee89e6f67fef4540 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Sep 22 11:15:57 2024 -0700 pylibftdi optional for cytation commit d748daaef74f0c2d52a2f495723383b33ad3488e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 20 20:43:18 2024 -0700 add tip spot generators (#256) commit d9d687bf9bcca63022b6b1228128106d99d736a9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 20 14:39:10 2024 -0700 use correct bit for autoload_installed commit 085855465e46879ecde0fb41c73a0367e8a0347c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 20 11:32:05 2024 -0700 add material_z_thickness to falcon_tube_50mL commit b7e28685d03220f67cbac5a95e41b4a38d6441b3 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Sep 20 10:00:31 2024 -0700 support pylint 3.3.0 commit 9513089ca7b1784c9fc0f44f6526e39f109f18a4 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Fri Sep 20 17:39:36 2024 +0100 Resource Update: PLT_CAR_L5AC_A00 pedestal_size_z (#255) commit 68d102761a5362f2e9cc8312b3283940042694aa Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Sep 18 15:06:10 2024 -0700 [rotations] add ResourceHolderMixin to fix placement in a number of resources (#239) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit dc97d25939813aabea4f7890ae663aaa3b081ba0 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 18 13:01:39 2024 -0700 freeze the ops classes and remove doc strings commit 515c8a0f3eb657ec7f6376d3e023095214da327a Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 18 10:57:26 2024 -0700 Coordinate.zero static instead of class method commit e5bb2492c4f3488fdedcf93492e9d404b24170f5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 18 10:56:04 2024 -0700 [star] don't log empty responses commit 6cf28431f379134d4a4e8c8d22a23fbfde19219c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Sep 16 18:43:18 2024 -0700 [STAR] replace None values in list with default commit 0a821d5b1f9253b09550e8c30dc50c66f39db928 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Sep 14 13:16:57 2024 -0700 add fluorescence to cytation5 (#244) commit 5826c7328f64bad7ad9da995f6f6f0a46612efb0 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 11 16:19:48 2024 -0700 more chatterboxes (#242) commit 0f6146a2bc550a4826cbae373bc3758fcdee453b Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Sep 11 15:09:47 2024 -0700 add Cytation5 (#238) Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> commit 2145f38f77e0629e338befea355f40bbb22b1ad0 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Sep 10 17:44:35 2024 -0700 deprecation warning for 3.8 commit 8c2d1e5c4123dae7dbee35be9cac7b9d46eafb45 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Sep 10 17:28:09 2024 -0700 remove single arg check (#240) commit 277de6915a1abd8414ffb6b6108e8c6f6e191009 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Sep 10 15:10:27 2024 -0700 remove old code commit 858b1e0baae9e8aeaaa418f40ce490e200ef6808 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Mon Sep 9 15:47:59 2024 -0700 [Labware] Add pedestal_size_z to PLT_CAR_L5FLEX_MD_A00 (#237) commit 087701a3c28b149ad57f001d2e8919a5833c8c7e Author: 1dkone1 <119891122+1dkone1@users.noreply.github.com> Date: Sat Sep 7 19:39:39 2024 -0400 fixed read_timeout for vantage (#236) commit a2c827fb990e9e543dc714f7b0a48c2d7a329a79 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Sep 5 15:01:20 2024 -0700 clearly differentiate between local and absolute size (#235) commit 6eccd81f627d6d3074a7c9e469f66251d35100f1 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Sep 5 13:48:41 2024 -0700 update changelog for #233 commit 52577a2613d897ac106f2105e0629dfa1216cb8c Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Thu Sep 5 13:43:40 2024 -0700 [liquid_handling] use correct rotation matrix for anchor (#233) commit 175bdab7a2dc0d0083b36bcd9216c2d126e5708c Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Thu Sep 5 10:13:40 2024 -0700 [rotations] fix angles computed by grip directions (#234) commit c6fc6917ad29433bf41204598d973c1ec169037a Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Sep 5 09:16:28 2024 -0700 remove `items` from ItemizedResource (#231) * remove `items` from ItemizedResource * changelog * linting commit d1b8cd7e9c648ecfcaeb7afc7b8753e969c4eda6 Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Sep 4 11:35:15 2024 -0700 [liquid_handling] add in more valid grip combinations (#232) commit 58481cad9060b28ddaa37fd1a8a79e4c6b38b675 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Tue Sep 3 08:53:11 2024 -0700 [Fix] Fix carrier PLT_CAR_L5AC_A00 pedestal_size_z (#230) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> commit 56958fe516563d35e274aee07a9769863728d3db Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 30 23:57:25 2024 +0200 fix {aspirate,dispense}96 type check commit 19d1a95b879f739aaaef4589d946fbb340673e93 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 30 01:35:29 2024 +0200 cl for #229 commit 68e884805b390d824ae6ce03e6873c756e0caa7f Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Thu Aug 29 16:31:24 2024 -0700 [Labware] Add support for 3.20 mm ultra wide bore tips (#229) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> commit 8460459f58445b79dd7349976c004a0889c57697 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu Aug 29 22:23:26 2024 +0100 Create NestedTipRack Class (#228) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 079b7b8a60c506abf6d22bf9cb87645fc1b58d67 Author: Marielle Russo <67157875+maraxen@users.noreply.github.com> Date: Sun Aug 25 15:24:42 2024 -0400 Added z and z nesting heights to Costar flat bottom 360 µL plates (#226) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit a4896c9f13c17fbb148b3346d5f0defce0fb9237 Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Sat Aug 24 08:51:11 2024 -0700 [STAR] add liquid_surfaces_no_lld parameter to aspiration (#227) Co-authored-by: fderop <florian.van.de.rop@gmail.com> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit fd675edefdaf72f245e70deb9170c54fe4383be3 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 22 14:20:15 2024 +0200 allow STAR firmware planning (#224) * allow_firmware_planning * update CHANGELOG commit 08371abd28be0e38458aa1c2ff27a43a27978e9c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Aug 21 10:09:01 2024 +0200 update changelog & rm print commit 4a07f6a32a9a33d0370eb9c29015567c98aea002 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Aug 21 10:03:08 2024 +0200 basic query commit 9bd67a9febbb7ba88c748f705e9d51f4c2adb07c Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Tue Aug 20 23:01:03 2024 +0100 Integrate Hamilton NTR (50 ul) (#223) commit ed10ddbce0840d84ec2ca05260d39e978c1376f7 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Aug 19 16:35:23 2024 +0100 Make Plate Site-adaptive (Fix PLR plate location 3) (#205) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 7de7d400d2f0981df08158fd584c44258e67871d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Aug 17 16:57:54 2024 +0200 update CHANGELOG commit c24361b454f2b0456d74628352d95389232b4aa5 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Sat Aug 17 07:55:30 2024 -0700 [Tilter] Add support for multiple tips per well (#218) * Fix server tests (#209) * fix lh server? * fix * test * fix list * fix lint * typing --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> commit 16a30beac466bea3ac5ec678207912d259223a3f Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Sat Aug 17 07:50:58 2024 -0700 [serializer] handle closure (#220) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 4b9500f99d853426857e708e1e384dfb1122ca59 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Sat Aug 17 07:47:43 2024 -0700 [Labware] Add support for 1.20 mm wide bore tips (#222) Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> commit a0c0959d687215784c57084c7837684a8dd73fa5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Aug 17 15:19:42 2024 +0200 ignore *.swo commit 9b31b238fef187511c66fc9ffc3a338d3857d6a2 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 16 10:06:43 2024 +0200 fix lint commit 6ea363dd9b7123a1b63b02e1e7ee26f005cb4f37 Author: Robert-Keyser-Calico <51971252+Robert-Keyser-Calico@users.noreply.github.com> Date: Fri Aug 16 01:01:11 2024 -0700 - added setup method that calls LiquidHandlerBackend and USBBackend setups (#219) commit 48cb06a376035f43aa99a4b3140e76ef7efb95db Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Aug 14 15:17:03 2024 -0700 [HamiltonHeatShaker] add temperature controls (#217) commit e5036d5f7fe8d889a967fe35ad8d874af0a4fe6b Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Tue Aug 13 02:30:15 2024 -0700 [Resource] Add slim 300 uL tips (#216) * add slim 300 * add docstring * Update tip_creators.py --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 92496419e60af3ce3f168ad24eb2934791999fbc Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Aug 12 17:41:41 2024 +0200 it was actually #215 commit badede5db93ae300ff3c41ff92402b6eaf8804e5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Aug 12 17:40:43 2024 +0200 Revert "update changelog for #205" This reverts commit 0ad15420f49d16492813b40f182d700916256449. commit bbef443067209f1d4df020c46446b9efc210fb64 Merge: 0ad15420 67a1d3f7 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Aug 12 17:16:36 2024 +0200 Merge branch 'main' of https://github.com/pylabrobot/pylabrobot commit 0ad15420f49d16492813b40f182d700916256449 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Aug 12 17:16:24 2024 +0200 update changelog for #205 commit 67a1d3f74d7d636034bb57582442ea1f5e5aed4b Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Aug 12 16:12:02 2024 +0100 Make PlateAdapter z-offset Manually Adjustable + 1st Semi- & Non-skirted Plates (#212) * update Thermo Fisher Scientific Inc README * test README formatting * remove overflow information from README * add Thermo_AB_96_wellplate_300ul_Vb_EnduraPlate base definition for testing * adjust material_z_thickness to empirical testing * adding plate_hole_size_z & plate_z_offset * testing proper hole_size_z and plate_z_offset * add Eppendorf non-skirted plate * testing Eppendorf 96-well plate & rough volume/height functions * fix naming of Thermo_TS_96_wellplate_1200ul_Rb * fix linting & add guesstimates for alpaqua magnet & Hamilton PlateAdapter * fix Thermo Fisher Scientific Inc explainer in plates.py * update naming convention in README * updating height<>volume functions to polynomial fits * fix linting * Update plates.py * Update plates.py --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 9f1fcf5e6fe67cb383a1084ccbd76ff13a30f959 Merge: b37b7729 27a06b58 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 9 22:53:37 2024 +0200 Merge branch 'main' of https://github.com/pylabrobot/pylabrobot commit b37b77298c8bbd82810307cdbbb1ca7d2b747cb6 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 9 22:53:30 2024 +0200 update visualizer tutorial commit 27a06b58ecf1704e8b97540ef92c395298eed2d9 Author: Joe Laforet Jr. <76799675+joelaforet@users.noreply.github.com> Date: Fri Aug 9 16:53:16 2024 -0400 Protocol Visualizer Overhaul: Making GIFs (#162) * Implemented TubeRack and Tube methods and added to visualizer * added reservoirs to opentrons * Added new reservoir class for OpenTrons Reservoirs * bugs with reservoirs and visualizer. Maybe also in how children are assigned too * added code for OpenTrons reservoirs and got them on visualizer * made lint/test/typecheck happy * Normalize all the line endings * no need for new reservoir class * made test/lint/typecheck happy * screwing around with writing movies from visualizer. Broken atm * Added gif renderer to visualizer * added white background to gifs * made frames save every 0.5s, rather than on update calls * added slider for save rate, download as zip, display gif in browser * removed temp folder, garbage cleanup * first version of gif visualizer done * removed unecessary file * fixed lint, typecheck, and tests * re-structured the layout of the visualizer * working visualizer with tweaks * some format * background big enough, don’t move on drag * minor UI changes * made reservoir super plate on visualizer * refactor UI handling a bit --------- Co-authored-by: Joe Laforet <joelaforet@JLaforetLaptop> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit bdc445048c501c08cb63877882e616cbb3d5871b Author: ray <47133192+ben-ray@users.noreply.github.com> Date: Fri Aug 9 12:44:15 2024 -0700 add 32 tube carrier for 1.5ml eppendorf tubes (#204) * add 32 tube carrier for 1.5ml eppendorf tubes * add eppendorf tube def * clean * lint * fine-tune tuberack def * lint --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 60db08f9b7218b2e227249406386e4bf916441b9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 9 21:34:54 2024 +0200 Serialize functions (#215) * marshal functions * serialize functions * typecheck * remove old code commit cc180b107b4b3d43a1cc71f006a79b8fa0207597 Author: ray <47133192+ben-ray@users.noreply.github.com> Date: Fri Aug 9 11:20:48 2024 -0700 ray/make_chatterbox_pretty (#208) * ray/make_chatterbox_pretty * remove extra print * remove hamilton in favor of lh * unbreak * just don’t have extras with kwargs * formatting * add tip pick/drop * format pick_up & drop * update changelog --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 08a36664fdbac871336d5b2ada2952678af0ce2b Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Aug 9 19:24:05 2024 +0200 fix import serial in ham tilt module commit 4c385cd834e43c6bf65492d450a68ecc3a583e15 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Aug 5 12:41:29 2024 +0100 Integrate Opentrons 96-well Aluminium Adapter (#211) * add Opentrons 96-well aluminium plate adapter * Adjust surrogate dz value for Opentrons 96-well aluminium adapter * clarify symmetry & resulting orientation-agnosticity * add Opentrons README * update CHANGELOG commit 9952fa1b6fde6d506560e83c3ec79f467467fe11 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 1 18:49:15 2024 +0200 Fix server tests (#209) * fix lh server? * fix commit 59fdcb78656db320f9ba48fbc37259b80193a4bb Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 1 18:12:13 2024 +0200 remove PLT_CAR_L4_SHAKER commit 20c61c29c6b164212c3cc0bc0a60eb8d166f854f Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 1 18:09:47 2024 +0200 delete hamilton_parse commit 1a99c490dff66d744226b72a1d661dfe2291ab3e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 1 18:06:19 2024 +0200 remove load_from_lay_file commit 793d20d675c71d40e89e8d0c15d20b59fa5aa748 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Aug 1 13:36:44 2024 +0200 ugh commit 90d89357ed78df23e0f32de6f5fcd78499c04179 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Thu Aug 1 03:56:28 2024 -0700 [Feature] Rewrite tilt module (#187) * add self.ser * add initial pos to initialisation * rewrite_tilt_module * rewrote tilter * add pedestal * edit init * remove underscore * HamiltonTiltModule is a Tilter again * solve issues * remove comment * fix float * add f * add additional_z * remove additional_z * fix type * docs and mark `experimental` * fix type once more --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 638bb88661f073d67b05c9ecefd8cf9d0aed943d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jul 31 12:44:26 2024 +0200 only if bav is not none commit 1f7274def3723e677d32a9b9bcfe054d82664f9c Author: ray <47133192+ben-ray@users.noreply.github.com> Date: Wed Jul 31 03:42:41 2024 -0700 enable dispense blowout on STAR backend (#207) * enable dispense blowout on STAR backend * add back at end --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 51e0015c137929afd2723a3ca7a2ef85add61ae8 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jul 27 18:04:47 2024 +0200 type check in LH commit 92983dec8be0a7c86a2bc24386d2c606435fedd9 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Thu Jul 25 06:54:08 2024 -0700 [lawbare] add basic height functions and example (#200) * [feature] add basic height functions and example * 2 spaces, not private, no redundant doc * move some to volume_functions * consolidate * deprecation warnings * fix * fix celltreat * lint * tiny format * plr plate naming standard & changelog & ct readme --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit d239b54cd9a6a4d9cdbcffb09b1681fe1042ba51 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jul 20 00:51:48 2024 +0200 ordered_items in ItemizedResource (#201) * use ordered_items instead of items in ItemizedResource * fix TipRack.set_tip_state and ordering * support reverse ranges, grid instead of diagonal (as before) * ordered_items in TubeRack * smh * bring back num_items_{x,y} when allowed * ot loading * tecan loading * flatten when ot loading * smh * type checking & linting * doc * update changelog commit d6feeb1998851f9e7f5f9d89b8893643d387994c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jul 20 00:42:26 2024 +0200 update mypy commit bcbe101b1e7939b08a2a38cd9441f2ae9351aa7a Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jul 18 20:09:55 2024 +0200 handle int/float in STAR params commit 60ff5caf7f9b30e0c0321618dc349afbf6367af0 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu Jul 18 16:29:38 2024 +0100 Fix Aspirate & Dispense Arguments (#199) * making minimum_traverse_height_at_beginning_of_a_command & min_z_endpos take mm * make style consistent with rest --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 7e2ff4b1cc285c4ab715db864e564001469dac5e Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Thu Jul 18 02:36:52 2024 -0700 Add pedestal_size_z to PLT_CAR_L5MD{_A00} (#198) * add pedestal * Update CHANGELOG.md * Update CHANGELOG.md --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 282ebfa7bd0ab86ee58950dc53fad286948e034a Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jul 17 13:52:34 2024 +0200 fix `Cos_96_DWP_2mL_Vb` in table commit 1fa8773a09265e690b5dd17599d1c31e18206984 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jul 17 13:50:55 2024 +0200 use Cor_96_wellplate_360ul_Fb in tutorials commit 5ad5f897800d47ebfddaf7394c8699cfa27af032 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 16 23:22:05 2024 +0200 make units in STAR method parameters consistent (#191) * initial commit * STAR * move mid-level core methods * forgot some & typing * move core_check_resource_exists_at_location_center * fix * core_check_resource_exists_at_location_center * update changelog * vantage * forgot these commit b07dd061d9959fd880bd9267898b32d5e3e36cf8 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 16 19:33:08 2024 +0200 make libusb_package an optional dep commit 8a497892e3bb23311a6c36ba3b79e956677735c5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 16 10:08:15 2024 +0200 support exotic number types commit 912975518e0bed0115c05b327ce017b05b6f7f86 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Jul 15 11:32:20 2024 +0100 Integrate material_z_thickness (Container) & skirt_base_to_well_base (Plate) (fix PLR Plate location 2) (#183) * material_z_thickness (Container) & skirt_base_to_well_base (Plate) integrations * update CHANGELOG * make material_z_thickness optional, delete skirt_base_to_well_base * add material_z_thickness to Cor_96_wellplate_360ul_Fb * update changelog * change this back --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 0b939e6768cfed263f8cae6a91fe93a1494fb884 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jul 15 12:26:57 2024 +0200 update sphinx commit 0a945ab50b069fc6c90679ae6f0c0c9f4e0c369d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jul 15 11:55:34 2024 +0200 type checking commit e9e30cedaedf20cc5d5215b738c104b3294354ef Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Jul 15 10:39:17 2024 +0100 Fix Plate Stacking in ResourceStack (#192) * troubleshooting lid assignment in ResourceStack * testing ResourceStack part 2 * fixing ResourceStack.get_size_z() * testing (a) empty stack on stack site, (b) empty stack on MFX DWP module, (c) & (d) same but with plates * fix linting * tiny rewrite * support get_size_z when direction != “z” * fix typing & tests * refactor & add tests --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 70e0f03f3045a3837b6ce61e64d10c644a7fd89c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Jul 14 20:48:49 2024 +0200 full xyz rotations (#195) * full xyz rotations * fix * update changelog * conventional axis names, not planes * style commit 21ffbb06f90a2451a15b194ae8e097d0a44fd375 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jul 13 22:08:59 2024 +0200 ugh commit 6e2616bc0c10c8aa63384f0be0f6e609a9cb8e2d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jul 13 22:04:14 2024 +0200 warning for big resources (#194) commit a1b63e97cad92456e1409ef62c6293eb67701a71 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jul 12 18:31:30 2024 +0200 don’t run ci twice on PRs from plr repo commit c4cd1c3ca050a5e98c98e10ace019d29a0fd3c63 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jul 8 17:05:06 2024 +0200 add PLT_CAR_L4_SHAKER -> MFX_CAR_L5_base to changelog commit bf61aa1365957df0c02566918bc748da84568b2d Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Jul 8 15:34:24 2024 +0100 Add Shaker Carrier (a MFX Carrier) Information (#188) commit 1aadf1f635b69c40fee4898abff38f20b1b64060 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 2 13:47:20 2024 +0200 use list with multi channel single-resource op commit bc52106f88df933af0f8774b43e0a64ac8581e90 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 2 00:25:39 2024 +0200 deprecate hamilton_parse commit 9f142940071f048acae0234c3ad47325385a9bb3 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue Jul 2 00:16:22 2024 +0200 offset no longer optional commit 262479f19d14daeb7044c9c130078cc908344c5e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jul 1 23:40:01 2024 +0200 deprecate single values in LH (#185) * deprecate single values in LH * forgot the headers * remove unused improt * fix tests * remove dumb function commit 8e9d8d846358d15902b0e441ea6c201c18e52f7b Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 28 17:48:16 2024 +0200 Raise error undefined resources (#172) * raise exception for undefined resources * add this image * accidentally added this * Cos_96_EZWash-> Cos_96_wellplate_360ul_Fb * don’t use Cos_96_EZWash in tests * (Cos->Cor)_96_wellplate_360ul_Fb * smh commit f19506d470fc070b121307827eb5d7e5f76b6aab Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 28 15:57:16 2024 +0200 fix OT resource loading and defining commit de037346f98ad3a834a175e40db72d01c24bc926 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 28 11:28:36 2024 +0200 fix rectangle drawing in visualizer commit e01702efedbe7586ee7fc1c2a144ac7b5f56297e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 28 00:22:13 2024 +0200 Create CHANGELOG.md commit 31614ed748edfec05daef7b1b88d8cc5d536161e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 28 00:06:59 2024 +0200 update doc commit 6beeacb246351ee3e8a0ad2bfec96f8dd432bb3f Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 21:08:12 2024 +0200 smh commit 0b30920be4234f09b3b1855b5e398794562e91d6 Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Thu Jun 27 12:05:01 2024 -0700 [resources] add hamilton tilt module resource (#181) * [resources] add hamilton tilt module resource * move to plr.tilting module, add name param, Tilter --------- Co-authored-by: JJ <jj@retro.bio> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 1ada672cbbccfc6cc2decdb0786b601d4bd58ff9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 20:50:31 2024 +0200 fix commit 61dade196d3d93415aef364cdad5df2b8faa5ee3 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 20:48:37 2024 +0200 add tilt module (#165) * add tilt module * add async (#175) Co-authored-by: jj <jj@retro.bio> * add pylabrobot.tilting module / modernize * add tiny doc --------- Co-authored-by: jkh <1220444+jkhales@users.noreply.github.com> Co-authored-by: jj <jj@retro.bio> commit 1d851c494919cc4564a1a592aa88bd0ba0b15d4e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 12:45:00 2024 +0200 Correct plate dimensions (#180) * Correct plate dimensions * more * fix commit cf972b40e0cada95e811e78e5bb57da51d83e49d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 11:12:42 2024 +0200 minor formatting commit f54a81d29c5180530565a1637a5e1554b4875277 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 11:11:33 2024 +0200 Add meaesure nesting_z_height to docs commit 2fd8e52101495a90794dab308d54f3bb722bb0cd Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 10:54:50 2024 +0200 update measure picture commit 60cc8eddc359f7cb7457e40e520561dc8cac2a86 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 27 00:30:45 2024 +0200 move volume <->height functions to Container commit bcc381b535d0efd598a375f221dea86d5cb2e0c1 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jun 26 19:55:38 2024 +0200 expose STAR.dispense liquid_surface_no_lld param commit 0c3587498821e517b52777073eb744262d0f4221 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Tue Jun 25 13:10:05 2024 +0100 TubeCarrier Integration (#174) * Create Tube_CAR_24_A00 * correcting README PNGs * Define 14ml Falcon tube and add tested TubeCarrier dimensions commit 30377677903bc6a60313651cabe5d182091428c7 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 24 21:23:25 2024 +0200 fix lh.summary longest name bug commit b7b39361666baf56165f8b1632810c0fe2aa4b96 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 24 16:16:38 2024 +0200 remove “currently defined” (#169) commit 6ad9e53e22d5f405fdf6f608aa38646eda5aa1e9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 24 13:08:44 2024 +0200 fix docs building commit 25a7ff37a64bec7c5663243f7ca0b87421edf893 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 24 12:04:47 2024 +0200 update commit 3dd3965987da277f27790ee4c68e3abebe091ef4 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Jun 24 10:58:19 2024 +0100 TroughCarrier Integration (#168) * polynomial volume compute fit * update trough docstring * fix linting * well -> trough * include 0 in polyfit * Update ml_star README * Update trough_carriers.py * rename true_dz to through_base_to_container_base --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit dd832cc31122acf5063075e13919f25daa42b0d2 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Fri Jun 21 20:38:17 2024 +0100 Fix Lid Placement (#161) * update Cos_6_wellplate_16800ul_Fb, add nesting_z_heigth * integrate lid_nesting_z_height updates to liquid_handler.py * updating unit tests * fix linting * update STAR_tests.py * declare lid_nesting_z_height to Cos_96_EZWash for unit testing * use Lid in Plate instead of duplicating attributes * make hamilton resources with Lid * use lid param in tests * update tecan resources * format * tiny fix * update other plates * ugh --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit e899965b61d20a5343d44c162eb4095623f5f0ce Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Jun 19 12:19:24 2024 -0700 [STAR] fix get_core typo (#167) commit 1c13e361fb004527a492536338e96c64932194ad Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Jun 19 11:06:26 2024 -0700 [resources] add accidentally deleted ShakerCarrier back in (#166) Co-authored-by: jj <jj@retro.bio> commit e77efc490644f8d1221bdfb3f823d8e7dcd63700 Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Wed Jun 19 10:44:26 2024 -0700 [STAR] allow core hotel to be configured (#163) * [STAR] allow core hotel to be configured * change to coordinate * fix formatting * fix typo --------- Co-authored-by: jj <jj@retro.bio> commit e63b80f61ad7e19ab43e329529a02631a8357c9d Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Mon Jun 17 11:46:26 2024 +0100 Make PlateAdapter accessible on PlateCarrierSite (#160) * updating carrier.py * fix plate_adapter.py Coordinate import commit cfc0a3df8570765771dd3ea3dd96fb92fa3f72aa Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jun 15 16:56:34 2024 +0200 move to plate carriers page commit 0a5857b9561f9773e0fa96145f156ad3362972b6 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 14 12:09:25 2024 +0200 links commit a59d204793d0ddb549fd31c871f0190dc33efbe3 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 14 12:02:13 2024 +0200 test mixing with volume tracker commit 1f9860e7b94da00c11a5f0cccf0538498c336264 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Fri Jun 14 02:12:07 2024 -0700 [feature] remove lld_search_height override and replace by argument values (#159) * [feature] remove lld_search_height override and replace by argument values * [fix] removed testing print statement * Update STAR.py * also dispense --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit e6450ca976c4880497cf9a372e17ef342603473d Author: joelaforet <76799675+joelaforet@users.noreply.github.com> Date: Fri Jun 14 04:51:24 2024 -0400 Cross Contamination Tracker (#138) * Implemented TubeRack and Tube methods and added to visualizer * starting to implement cross contamination tracking * fiddled with first iteration of CC tracking * tested out turning on/off CC tracking * fixed bug where liquids were being added as characters instead of strings to the liquid history on add calls * fixed bug with updating using a list of (liquid,vols) * fixed line endings * reset back to PLR main branch * FINALLY made lint and tests happy, except for 1 test :( * fixed everything and verified functionality * Moved aspirate cross contamination check to volume_tracker * Made lint/tests/typecheck happy * rolled back to cross contamination check being in liquid_handler instead of volume_tracker, PRE-LINT CHECK * made typecheck/lint/tests happy * tiny format * clarified logic issues * tiny format * fix * made lint/tests/typecheck happy * forgot await keyword, fixed broken test * changed dispense code to correctly update the liquid history, was previously making reference error * v tiny format * bring back changes from plr:main --------- Co-authored-by: Joe Laforet <joelaforet@JLaforetLaptop> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 1d9f10ad0d2c0b4fa17bf9df63edeaf82d5f9525 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu Jun 13 22:37:40 2024 +0100 Implement pedestal for CarrierSite & MFXModule (fix PLR Plate location 1) (#143) * expose CarrierSite.pedestal_size_z * update carrier naming guide * Update README.md * Update README.md * expose pedestal_size_z to MFXModule class * fix linting * fixing type checking * fixing None type handling * adding little TODO for plate quadrants * PlateCarrierSite * resolve update conflicts * add guide for missing pedestal_size_z * exclude plate_carrier_site from HamiltonDeck.summary --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 691143fc014ca1d2d2058741000705369d5b6a16 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu Jun 13 19:31:41 2024 +0200 remove superfluous doc string things commit e4baf715e701e2125764aaf4167faa568327b7e4 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu Jun 13 14:16:55 2024 +0100 Adaptive lh.summary() (#158) * modifying lh.summary to be name len-adaptive * fixing linting * complete_resource_column as generator * fixing unit test * enable parsing of deck children that are not Carrier * fix unit tests * use tree instead of string for longest name * refactor HamiltonDeck.summary * fix lint and type * fix long name issue * handle MFXModule, and be recursive again * remove unused improt * enable recursive search through entire deck tree * update unit test * Revert "enable recursive search through entire deck tree" This reverts commit e81c93123af493938be48e8bc9ec394bc9887ab5. * Revert "update unit test" This reverts commit 6bb323233a68f12799a9b78076c823a57939edb2. * fix excluded_categories child bug * style --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 98042cc0b67094c115be986f367db27830a4bf17 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 10 23:54:43 2024 +0200 doc config commit ad2bb4d0a3fc69ecb90aae369518209aa9c60106 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 10 23:50:39 2024 +0200 rename ini_file.py to ini_config.py commit 3b3615b4c30548612c7e8723d95cc849bb54aeb1 Author: jt05610 <59382877+jt05610@users.noreply.github.com> Date: Mon Jun 10 13:48:25 2024 -0600 Add config file (#155) * create .editorconfig file to synchronize formatting for development * add pytest-asyncio to development dependencies * feature: create module-level config file. Adds the config module which facilitates managing configuration for pylabrobot. Default config for development is in pylabrobot.ini which mimics the config that was already found in the module. Configs are searched for in the current directory and all parent directory. If none are found, a new one is created in the current working directory. Currently, it supports .ini files, but wrote to easily support json, yaml, etc. I set the default log level to INFO for end users. * feature: put pylabrobot.ini in the project directory when pylabrobot is installed. The default is located at defaults/pylabrobot.ini Note: I set the default log level to INFO for end users. * Revert "feature: put pylabrobot.ini in the project directory when pylabrobot is installed. The default is located at defaults/pylabrobot.ini" This reverts commit 3a0f17811fc6b5c5783dab8e7363dec602ddc79b. * feature: create pylabrobot.ini at the module level by finding the .git directory. If this cannot be found, pylabrobot.ini gets created in the current directory. * fix: no more pytest-asyncio and support python 3.8 & 3.9 typing * fix: support python 3.8 & 3.9 typing * fix: support python 3.8 & 3.9 typing * fix: support python 3.8 & 3.9 typing * fix: support python 3.8 & 3.9 typing * fix: support python 3.8 & 3.9 typing * Revert "fix: support python 3.8 & 3.9 typing" This reverts commit 22bab216164f7dbe94ee18ed904ad5ed9f3b5b9a. * fix: linting and typing errors * fix: linting and typing errors * make LOG_TO_STRING initialize from LOG_FROM_STRING use Path as type for log_dir in Config.Logging instead of Union[str, Path] * Rename MultiFileReader Create JsonReader and JsonWriter for config Add json filetype to default reader * remove unnecessary cfg_dict = cfg.as_dict from IniWriter * add config with json request to server * lint * remove unnecessary raise NotImplementedError * Turn FileReader/FileWriter into FileLoader/FileSaver for clarity. Consolidate Config ABCs into service.__init__. Create HTTPLoader. * remove unneeded http file and fix typing of service.__init__ * fix config tests * clean & fix typing * all test logs into <project root>/test_logs * switch Reader/Writer and Loader/Saver * add function for getting project root --------- Co-authored-by: jtaylor <jonrtaylor12@gmail.com> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 5fac5f5573a912c161f21dd85c053a0d4cfa97eb Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun Jun 9 02:10:08 2024 +0200 fix clario star checksum commit 775a99b6e8e1c9fec525937b24dba121744b8354 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri Jun 7 00:22:00 2024 +0200 fix doc making commit a60a7afb71e1e527c62618068d2cf49166477a54 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu Jun 6 19:51:39 2024 +0100 Cos_96_DWP_2mL_Vb Integration + Naming Standard Suggestion (#156) * test new Porvair_6_reservoir_47ml_Vb definition * update Porvair README * renaming Cos_96_DWP_2mL_Vb & Cos_6_MWP_16800ul_Fb * update Corning-Costar README * Update README.md * rename ThermoScientific_96_DWP_1200ul_Rd * update Thermo README * updating new nomenclature * Add PLR resources README and plate naming standard recommendation * add examples to resources README * fix resources README headers * fix type in resources README * add little resource subclass explainer to README * fine adjustment of volume and height calculations for new Cos_96_DWP_2mL_Vb * minor edits --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit e74e169093d882933ff9cae4ccb517bb1db4a8f1 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Wed Jun 5 20:17:10 2024 +0100 Creating PlateAdapter (#152) * Initiating plate_adapter module * new Alpaqua magnum FLX definition as PlateAdapter * Second PlateAdapter example, Hamilton_96_adapter_188182 * Unravelling correct resource to resource assignment with logic * fixing linting * make site_pedestal_z non-optional * investigtae assign_child_resource Signature * fixing linting * implement Well-grid to hole-grid compatibility check * implement Rick's _compute_child_location idea * working on linting fix * minor format * add WIP comment * move TypeError to assign_child_resource * lift protection from compute_plate_location to enable access in LiquidHandler * remove grids' spacing limitations * tiny format * remove _child_resource_location * fix type and lint * remove adapter hole spacing constraint * tiny format --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit bbc68aa9b8e30044841a06ef65b5bc394b66913c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jun 5 07:06:26 2024 +0200 remove LiquidHandler.unassign_resource commit 083841c6287288edf2573d0e534376edc9c2e090 Merge: d9baaf1c 70344495 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed Jun 5 06:48:19 2024 +0200 Merge pull request #154 from jt05610/fix-asyncio-threading fix: close event loop that starts in thread commit 703444959b975b093b2bf9e141421d2cca379ef4 Author: jtaylor <jonrtaylor12@gmail.com> Date: Tue Jun 4 16:53:46 2024 -0600 fix: close event loop that starts in thread commit d9baaf1c6abfdbe434f7ae5e4ae6477ad1de7634 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Mon Jun 3 12:21:58 2024 +0200 add fans doc, rename module for compatibility commit 12c4a525ef3ac439fb010ba71b1e31ce47410fe2 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jun 1 06:13:30 2024 -0400 simplify {aspirate,dispense}96 container commit 71bdcff94afc13f40ca7647cf83e021798bd5672 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat Jun 1 05:40:42 2024 -0400 raise BlowOutVolumeError (#153) * raise BlowOutVolumeError * set back to None * fix commit 4756af76b1533da9b944cf079b80a14cd78f0762 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri May 31 23:40:31 2024 -0400 create carrier sites with klass commit d16d995b01ab6b6eda51b323271bdea5a11b953a Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri May 31 23:20:33 2024 -0400 create_equally_spaced_{x,y,2d} commit ef0546b45524153a39a145a105d62da256bef271 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Fri May 31 19:33:25 2024 -0400 fix hlc blow out air in STAR.dispense commit ce99845a9bc4c6301bdda8fa654cfc6f3d16b1d5 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Thu May 30 16:12:11 2024 -0400 (that only works on 3.12) commit 938fe3ec5be52ed2cf3a854673fcf3cce8c0208c Author: Marielle Russo <67157875+maraxen@users.noreply.github.com> Date: Thu May 30 16:06:28 2024 -0400 Allow 96 head to perform liquid handling operations (Aspirate and Dispense) on arbitrary containers. (#150) * Added support for using 96 head to aspirate and dispense on with Trough * tiny format * Update liquid handling backend methods to use `AspirationContainer` and `DispenseContainer` The code changes modify the `aspirate96` and `dispense96` methods in the `EVO`, `LiquidHandlerBackend`, `OpentronsBackend`, and `ChatterBoxBackend` classes to use the `AspirationContainer` and `DispenseContainer` classes instead of `AspirationTrough` and `DispenseTrough`. This change aligns the method signatures with the updated class names in the `standard.py` module. * linting * fix * fix tests * Trigger Build --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit e8fe49ccef33015894bb6a2bc7c6bad267466c89 Author: joelaforet <76799675+joelaforet@users.noreply.github.com> Date: Thu May 30 15:06:06 2024 -0400 OT2 'reservoirs' (#149) * Implemented TubeRack and Tube methods and added to visualizer * added reservoirs to opentrons * Added new reservoir class for OpenTrons Reservoirs * bugs with reservoirs and visualizer. Maybe also in how children are assigned too * added code for OpenTrons reservoirs and got them on visualizer * made lint/test/typecheck happy * Normalize all the line endings * no need for new reservoir class * made test/lint/typecheck happy * minor formatting --------- Co-authored-by: Joe Laforet <joelaforet@JLaforetLaptop> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 567110d8304c6558a6deb0daedb76c3aab080383 Author: Florian De Rop <55103921+fderop@users.noreply.github.com> Date: Tue May 28 18:06:50 2024 -0700 [STAR] Remove unused argument from docstring (#148) commit d3568d3a935b340b584d95f967e8a5aa1d69b19e Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue May 28 08:45:30 2024 -0400 get_anchor (#147) * get_anchor * type commit 288e1d72848dbb7a1625d7c5979f07b7de61dcc9 Author: Phi Nguyen <56458094+Ph1so@users.noreply.github.com> Date: Mon May 27 14:28:06 2024 -0400 added size to plate reader in README (#146) commit c1ca2b55ebd1f3c37cb09c91154529d0d54dba49 Author: ramirjos <77865956+ramirjos@users.noreply.github.com> Date: Sun May 26 21:28:42 2024 -0400 add the only fan (#144) commit 3640150319d5667dcc558bfd0961ade6c0e0a2c9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat May 25 23:02:43 2024 -0400 fix commit 61e1275b71eee9b0e0df5a2717bca1a4d55df112 Merge: 996a32c9 f84b5611 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat May 25 23:00:25 2024 -0400 Merge branch 'main' of https://github.com/pylabrobot/pylabrobot commit 996a32c9a94fd24f393453ca818994010d5563b8 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat May 25 23:00:16 2024 -0400 update tecan well height definition commit f84b561165cacb0c9b827a23de126c460f7a4453 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Sat May 25 18:34:09 2024 +0100 Well compute_height_from_volume method integration (LLF part 2) (#139) * Well compute_height_from_volume integration * add tolerance explanation * fix linting commit 14f1ce5240b1bd3d3df95112942236fcb6bf7670 Author: Marielle Russo <67157875+maraxen@users.noreply.github.com> Date: Sat May 25 13:29:54 2024 -0400 Add serialization and deserialization methods to Pump, PumpArray, and PumpCalibration (#140) * feat: Add serialization and deserialization methods to Pump, PumpArray, and PumpCalibration to allow for calibrations to be serialized and deserialized separately and within instances of pumps. The commit adds serialization and deserialization methods to the `Pump`, `PumpArray`, and 'PumpCalibration' classes. These methods allow instances of the classes to be converted to and from a dictionary representation, making it easier to store and retrieve their state. This feature improves the flexibility and usability of the classes. * minor formatting --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 8eca518580dc9b5f12a272411190097201129ab1 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Thu May 23 18:23:56 2024 +0100 Calculate height from volume in container (LLF part 1) (#136) * implementing height functions (3 / 5) * fixing type checking * fixing int 0 * fixing linting * two more height functions * enhancing_height_of_volume_in_spherical_cap added docstring and ValueError in case liquid_volume given exceeds volume of spherical cap (useful when used as a standalone function, redundancy in height_functions) --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit adeeff75941e14cede7db46d15bffd4f19155d89 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed May 22 03:27:10 2024 -0400 fix type commit ac3e45ff495aaa2f1b02cd56bc5628f784c88378 Author: ramirjos <77865956+ramirjos@users.noreply.github.com> Date: Wed May 22 02:53:01 2024 -0400 fix z offset for 96 tip pickup (#137) commit 5bad3ae812f21d9b33893dcb34f05c1b6ee88c95 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Tue May 21 19:09:43 2024 +0100 Thermo scientific 96 1200ul rd integration (#135) * ThermoScientific_96_1200ul_Rd integration * adding docstring with useful information in the field * fixing linting commit 8fe9b0b770333b4fa0e1600b73df75e73ec2cd9b Author: joelaforet <76799675+joelaforet@users.noreply.github.com> Date: Fri May 17 15:22:15 2024 -0400 Visualizer showing volume updates for add_liquid() and remove_liquid() calls. (#134) * Added functions to TubeRack and Tube and added them to the visualizer * fixed bug in remove_liquid() and add_liquid() not updating on the visualizer * linting --------- Co-authored-by: Joe Laforet <joelaforet@JLaforetLaptop> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit dc9a40fae19bdb17c78a0b73d474cd16c7e78e67 Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Thu May 16 15:35:59 2024 -0700 [STAR] fix core gripper location (#133) Co-authored-by: jj <jj@retro.bio> commit f382dd2a909fd650598f4a0f36a4b61f67e1e150 Author: joelaforet <76799675+joelaforet@users.noreply.github.com> Date: Thu May 16 16:52:55 2024 -0400 Added functions to TubeRack and Tube and added them to the visualizer (#132) * Added functions to TubeRack and Tube and added them to the visualizer * minor formatting --------- Co-authored-by: Joe Laforet <joelaforet@JLaforetLaptop> Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 1919727e2d142ec81d2a1a8adc02acf9a7b1f96b Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Wed May 15 18:12:51 2024 +0100 ShakerCarrier integration (#130) * PLT_CAR_L4_SHAKER definition * Make PLT_CAR_L4_SHAKER a MFXCarrier * Polish PLT_CAR_L4_SHAKER commit f8b539eb4eee7a9e44683a913755ba695e65d26e Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Wed May 15 00:04:09 2024 +0100 Alpaqua MAGNUM FLX integration (#129) * Alpaqua MAGNUM FLX definition verification * correcting unnecessary wildcard import * correcting missing Coordinate import * only allow V and U bottom plates * fix type / only take plates … --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit b144f11c90a18c5493db1755f6bc8e9edb100229 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue May 14 16:29:37 2024 -0400 fix linting errors commit 7d316afd4cce7c4cbc1f59f1333b7c280eb9f6de Author: Charlotte Christensen <161732433+charlotte-ris-MIT@users.noreply.github.com> Date: Sun May 12 18:36:52 2024 -0400 fix greiner 384 plate (#128) commit 9e664e1fb4c28e370214225dc7e10eb6436fc564 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sun May 12 13:28:13 2024 -0400 fix some STAR error messages commit 2c7d05d335d81d1aeb71f0ba8f7f9409794cec97 Author: Nicolás A. Méndez <naikymen@users.noreply.github.com> Date: Sat May 11 23:12:46 2024 -0300 Add "__repr__" and "print_grid" to itemized_resource to display item occupacy (#127) * Add "__repr__" to itemized_resource, displaying a grid of occupied/free spots Example output: ``` 12x8 TipRack 1 2 3 4 5 6 7 8 9 10 11 12 A: - - - - - - - - - - - - B: - - - - - - - - - - - - C: - - - - - - - - - - - - D: - - - - - - - - - - - - E: - - - - - - - - - - - - F: - - - - - - - - - - - - G: - - - - - - - - - - - - H: - - - - - - - - - - - - ``` * Add LETTERS * linter errors * fix type checking * fix type checking again pylabrobot/resources/itemized_resource.py:390: error: Incompatible types in assignment (expression has type "str", variable has type "list[list[str]]") [assignment] pylabrobot/resources/itemized_resource.py:393: error: Unsupported operand types for + ("str" and "list[list[str]]") [operator] * replace __repr__ with print_grid makes more sense, and is required because there is no way for itemizedresource way to know how to check for or represent the items from classes inheriting from it (see comments in code) * add footer * _occupied_func: replace Resource hint with T "T is a placeholder for the resource that is "itemized" by ItemizedResource. It is TipSpot for TipRack, Well for Plate, and Tube (soon TubeSpot) for TubeRacks" * Add _occupied_func method to TipRack This overrides _occupied_func in ItemizedResource, making print_grid informative about tips in tipspots * linter fixes * fix typo commit 0b08a1a8719b729c160b25eb3db6ee69396b22fb Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat May 11 09:15:25 2024 -0700 fix STAR.request_{y,z}_pos_channel_n commit 52d8b5b5c61a524075b94464f2aa187e5deb8acd Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Sat May 11 09:04:15 2024 -0700 fix LTF pickup on STAR commit 8f5f77f790a4819c0b8e539dbd932992284527ec Author: Ben <47133192+ben-ray@users.noreply.github.com> Date: Wed May 8 18:55:54 2024 -0700 update docstrings for swap_speed in STAR.py (#126) commit 254d424e90ccf4fbcf6ba2209ce87d3b23f5bb8d Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed May 8 12:45:46 2024 -0400 fix tiny dispense on Vantage with 10uL tips commit c655ceb5b6d5a4fbece10b54420ec0562728a82c Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Tue May 7 18:09:22 2024 -0400 fix LH.dispense volume tracker issue commit a292d3022ec3528fdd2b9453ee30e95f861b6fad Author: jkh <1220444+jkhales@users.noreply.github.com> Date: Mon May 6 10:07:49 2024 -0700 [STAR] allow variable number of pipettes to be initialized (#124) Co-authored-by: jj <jj@retro.bio> commit ddeff94bfe2dc6249d27642c243237ec472c3ff8 Author: Camillo Moschner <122165124+BioCam@users.noreply.github.com> Date: Sat May 4 05:55:12 2024 +0100 Corning-Costar 6-well flat-bottom plate integration (#122) * Cos_6_Fb base definition * Cos_6_Fb PLR integration * polishing definition * generate README for Corning-Costar labware * minor formatting --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 42326e7b351c3ce3203552f93a335ce5d8601de1 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed May 1 13:13:51 2024 -0400 fix type commit 6405ee12052db38c53e3bb69b2ecdd6029c2f189 Author: Marielle Russo <67157875+maraxen@users.noreply.github.com> Date: Wed May 1 13:04:19 2024 -0400 allowing serialization and deserialization of Machines and their backends (#120) * implemented calibrations, PumpArrays, and the backend for Agrow Dose Pumps * implemented calibrations, PumpArrays, and the backend for Agrow Dose Pumps * implemented unit tests for calibrations, pumps, and pump arrays, debugged and cleaned code * debugged agrowtek pump functionality and validated expected operation * remove unnecessary print statement * Make formatting consistent * make formatting consistent * check single value when using calibration with single pump * more formatting * resolved pull request issues and cleaned up code * added agrowpumps requirements to setup * formatting & fix tests * modified Calibration so class methods take calibration_mode as well, raise an error if it is not 'revolutions' or 'duration' and added tests to validate it's implementation. Also changed the csv processing to allow for single and two-column csv inputs, and added test csvs to validate it's performance * changed agrowdosepump to use AsyncModbusClient appropriately, ensured that pumps ran as expected, and also brought agrowdosepump_tests into agreement * Fix logger error in keep alive thread and disable pylint warning * fix some typing errors & formatting * remove single column csv support * Refactor PumpArray class initialization and add new parameters in pumparray.py to bring it in line with the Pump class * Refactor PumpArray class initialization and associated tests and add new parameters in pumparray.py to bring it in line with the Pump class * Refactor PumpArray class initialization and add new parameters in pumparray.py to bring it in line with the Pump class * Fix calibration_mode attribute access in PumpArray class * Add serialize method to AgrowPumpArray and Masterflex classes * Fix calibration_mode attribute access in PumpArray class * Add serialize and deserialize method to Machine and MachineBackend, with processing to handle backend instantiating, and edited all associated MachineBackend subclasses * Update inheco.py * Add get_resource_class_from_string function to Machine and MachineBackend. Also added rotation variable to machine_tests * Update Machine and MachineBackend to use find_subclass function for backend subclass lookup, as get_class_from_string imported from resources produces typing related issues * Update serialization and deserialization methods in LiquidHandlerBackend and STAR classes to reflect that custom methods are no longer needed * Update serialization and deserialization methods in LiquidHandlerBackend and STAR classes to reflect changes in find_subclass function introduced in utils and removal of custom methods. Also added handling for USBBackend. * Update typing imports in backend.py, STAR_tests.py, machine.py, and resource.py * Refactor typing imports in liquid_handler.py and update serialization and deserialization methods in LiquidHandlerBackend and STAR classes * Update machine.py * Machine.__init__ not abstract * Update agrowdosepump.py --------- Co-authored-by: Rick Wierenga <rick_wierenga@icloud.com> commit 69dd270d68f06aa4c7947e0efacba7f2573ab5ba Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed May 1 12:49:50 2024 -0400 fix type commit 8362937bad16ec9b1685b91a3426c3efa207eaaf Author: Lenni Justen <65619456+lennijusten@users.noreply.github.com> Date: Wed May 1 11:12:11 2024 -0400 fix typo (#121) commit 9ac280a44392cb4727778ed20289f429ea2f92d9 Author: Rick Wierenga <rick_wierenga@icloud.com> Date: Wed May 1 00:18:30 2024 -0400 fix vantage.{pick_up,drop}96 offset.z commit d31f66ed80788376f677809ea8c87be249f696db Author: Lenni Justen <65619456+lennijusten@users.noreply.github.com> Date: Tue Apr 30 16:42:18 2024 -0400 Change tc to t for temperature controller in temperature.ipynb (#119) commit 19afa9a3669dd0dac8df4622122b7896f3970659 Author: Lenni Justen <65619456+lennijusten@users.noreply.github.com> Date: Tue Apr 30 13:33:37 2024 -0400 fix ot module loading (#118) commit 9f2011035bbf5813ec38b77a3839f541b130e8c5 Author: Phi Nguyen <56458094+Ph1so@users.noreply.github.com> Date: Tue Apr 30 13:26:17 2024 -0400 fixed pick_up_tips tracker error for liquid handling (#117) * fixed core 96 setup bumping problem * kgug * remove comment * Revert "kgug" This reverts commit 930407d201ac880d11b53a70f5ee28ec14d1ad67. * adding first centrifuge files * fix iswap move resources on rotation * added more confiration settings * test push with "notes" * fixed pick_up_tips tracker error * Delete pylabrobot/centrifuge directory * deleted drop_tips mistake …
Hi everyone,
In this little PR I am adding...
TroughCarrier
, specificallyTrough_CAR_4R200_A00
(Hamilton cat. no.: 185436)Hamilton_1_trough_200ml_Vb
(Hamilton cat. no.: 56695-02), which fits into the aboveTroughCarrier
Next Steps
The functions achieve the following prediction accuracies:
People might want to generate something more precise.
Trough
s were previously just aContainer
. However this does not account for thetrue_dz
andmaterial_z_thickness
of the through, i.e. the machine thinks the bottom of the trough is further down in z than it actually is, and when sent to the "bottom" will crash into the trough material itself.Interestingly, this
Trough_CAR_4R200_A00
actually has small oval-shaped pedestals that mean that the "trough_well"(?) directly sits on the pedestal, i.e. the inside of the trough is only off by thematerial_z_thickness=1.5
mm.I temporarily added these 1.5 mm to the
CarrierSites
of theTroughCarrier
to compensate for this problem.This is not the cleanest solution.
However, there only appear to be 2 troughs for this specific carrier and it seemed better to push this definition out into the open-source community than try to solve this niche problem instantly.
Happy automation 🦾