opentrons: bug: When targeting a location somewhere above the top of a well, pipette first moves to exact top of the well, then moves vertically up
Overview
Working with a non-standard pipette tip length. I can calibrate to the new length just fine. However, if I also want to use standard pipettes in the same python protocol it is not currently possible. If I calibrate with a standard tip I can set the height via the location definition. However, when aspirating it first moves to the set calibration height before moving to the specified height above the well. This would smash the non-standard pipette tip into the deck.
Implementation details
I would propose that the robot calculates where to move and aspirate from it’s current position instead of the calibration point if given a specific location or that if a move_to() call is used prior to an aspirate() that the robot determines it’s path based on it’s current position instead of from the calibration position.
Design
Ideally, I would like to calibrate and use a standard pipette tip along side a custom tip length. So calibrating with a standard tip length but specifying a custom aspirate height without smashing the custom tip would be helpful for some procedures. Ideally some custom setter to tell the robot when the tip is attached would be an added benefit. I’m currently just telling the OT-2 to pick up a tip from an empty location and then pausing to add the custom pipette.
Acceptance criteria
Pipetting from a set location above the well does not dip to calibration point before aspirating. Or other suitable workaround.
About this issue
- Original URL
- State: open
- Created 4 years ago
- Comments: 18 (6 by maintainers)
To make it easier for us to understand and keep track of this issue, I’ve hidden the comments in this thread that seem to be talking about other things.
I don’t mean to imply that those things are unimportant or not worthy of discussion—just that they’re separate. If you’re still seeing those problems on the latest robot software version (currently v4.2.1), please reach out to Opentrons Support or create a new GitHub issue—we want to fix them!
Hi @Dardin-dale ! Quick question, are you using a custom tiprack definition for your custom tip? The ultimate source of the tip length in the geometry system comes from these two values:
https://github.com/Opentrons/opentrons/blob/03c305175477259b3b492e99d12d0034e2c348f9/shared-data/labware/definitions/2/opentrons_96_tiprack_1000ul/1.json#L1006-L1007
Off the top of my head, I’m not sure how the tip length gets set when you have two different tiprack definitions for the pipette, but I am thinking that if you do
p1000.pick_up_tip(tall_tiprack['A1'])before doing the aspirate command with the custom tip, this might work around the issue you are seeing.You can find more info on creating labware definitions here.