From 5f868c7b9d52c5742d0c71e30602ee9c9fb5aaa4 Mon Sep 17 00:00:00 2001 From: CaseyBatten Date: Mon, 16 Sep 2024 16:00:13 -0400 Subject: [PATCH] fix(api, shared-data): Disable tip presence on single tip pickup with 96ch and update press distance (#16248) Covers RABR-617 Disables the tip presence sensor when the 96ch pipette is in single tip pickup configuration, change the press distance values down to 10.5mm --- .../protocol_engine/execution/tip_handler.py | 9 ++++++ .../general/ninety_six_channel/p1000/3_4.json | 32 +++++++++---------- .../general/ninety_six_channel/p1000/3_5.json | 32 +++++++++---------- .../general/ninety_six_channel/p1000/3_6.json | 32 +++++++++---------- 4 files changed, 57 insertions(+), 48 deletions(-) diff --git a/api/src/opentrons/protocol_engine/execution/tip_handler.py b/api/src/opentrons/protocol_engine/execution/tip_handler.py index 7acfae1e3ef..937e4abf9d8 100644 --- a/api/src/opentrons/protocol_engine/execution/tip_handler.py +++ b/api/src/opentrons/protocol_engine/execution/tip_handler.py @@ -20,6 +20,8 @@ ProtocolEngineError, ) +from opentrons.hardware_control.nozzle_manager import NozzleConfigurationType + PRIMARY_NOZZLE_TO_ENDING_NOZZLE_MAP = { "A1": {"COLUMN": "H1", "ROW": "A12"}, @@ -300,6 +302,13 @@ async def verify_tip_presence( This function will raise an exception if the specified tip presence status isn't matched. """ + if ( + self._state_view.pipettes.get_nozzle_layout_type(pipette_id) + == NozzleConfigurationType.SINGLE + and self._state_view.pipettes.get_channels(pipette_id) == 96 + ): + # Tip presence sensing is not supported for single tip pick up on the 96ch Flex Pipette + return try: ot3api = ensure_ot3_hardware(hardware_api=self._hardware_api) hw_mount = self._state_view.pipettes.get_mount(pipette_id).to_hw_mount() diff --git a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json index 8245214c853..a47bbfc76da 100644 --- a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json +++ b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json @@ -119,7 +119,7 @@ "SingleA1": { "default": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -144,7 +144,7 @@ }, "t1000": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -161,7 +161,7 @@ }, "t200": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -178,7 +178,7 @@ }, "t50": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -197,7 +197,7 @@ "SingleH1": { "default": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -222,7 +222,7 @@ }, "t1000": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -239,7 +239,7 @@ }, "t200": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -256,7 +256,7 @@ }, "t50": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -275,7 +275,7 @@ "SingleA12": { "default": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -300,7 +300,7 @@ }, "t1000": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -317,7 +317,7 @@ }, "t200": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -334,7 +334,7 @@ }, "t50": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -353,7 +353,7 @@ "SingleH12": { "default": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -378,7 +378,7 @@ }, "t1000": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -395,7 +395,7 @@ }, "t200": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { @@ -412,7 +412,7 @@ }, "t50": { "speed": 10.0, - "distance": 13.0, + "distance": 10.5, "current": 0.2, "tipOverlaps": { "v0": { diff --git a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json index 9747bafc1d7..9c6df88b575 100644 --- a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json +++ b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json @@ -147,7 +147,7 @@ "SingleA1": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -172,7 +172,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -189,7 +189,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -206,7 +206,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -225,7 +225,7 @@ "SingleH1": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -250,7 +250,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -267,7 +267,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -284,7 +284,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -303,7 +303,7 @@ "SingleA12": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -328,7 +328,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -345,7 +345,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -362,7 +362,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -381,7 +381,7 @@ "SingleH12": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -406,7 +406,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -423,7 +423,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -440,7 +440,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { diff --git a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json index 42a96a5d73b..7bcfb04e4f0 100644 --- a/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json +++ b/shared-data/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json @@ -147,7 +147,7 @@ "SingleA1": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -172,7 +172,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -189,7 +189,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -206,7 +206,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -225,7 +225,7 @@ "SingleH1": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -250,7 +250,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -267,7 +267,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -284,7 +284,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -303,7 +303,7 @@ "SingleA12": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -328,7 +328,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -345,7 +345,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -362,7 +362,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -381,7 +381,7 @@ "SingleH12": { "default": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -406,7 +406,7 @@ }, "t1000": { "speed": 10.0, - "distance": 12, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -423,7 +423,7 @@ }, "t200": { "speed": 10.0, - "distance": 11, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": { @@ -440,7 +440,7 @@ }, "t50": { "speed": 10.0, - "distance": 10.85, + "distance": 10.5, "current": 0.4, "tipOverlaps": { "v0": {