diff --git a/api/tests/opentrons/protocol_engine/state/test_labware_view.py b/api/tests/opentrons/protocol_engine/state/test_labware_view.py index d5b94adfbf5..7c4f5905540 100644 --- a/api/tests/opentrons/protocol_engine/state/test_labware_view.py +++ b/api/tests/opentrons/protocol_engine/state/test_labware_view.py @@ -1349,7 +1349,7 @@ def test_get_deck_gripper_offsets(ot3_standard_deck_def: DeckDefinitionV4) -> No assert subject.get_deck_default_gripper_offsets() == LabwareMovementOffsetData( pickUpOffset=LabwareOffsetVector(x=0, y=0, z=0), - dropOffset=LabwareOffsetVector(x=0, y=0, z=-0.25), + dropOffset=LabwareOffsetVector(x=0, y=0, z=-0.75), ) diff --git a/api/tests/opentrons/protocol_engine/state/test_module_view.py b/api/tests/opentrons/protocol_engine/state/test_module_view.py index 5b83cda94f0..d225b64ee61 100644 --- a/api/tests/opentrons/protocol_engine/state/test_module_view.py +++ b/api/tests/opentrons/protocol_engine/state/test_module_view.py @@ -1756,14 +1756,14 @@ def test_is_edge_move_unsafe( lazy_fixture("thermocycler_v2_def"), LabwareMovementOffsetData( pickUpOffset=LabwareOffsetVector(x=0, y=0, z=4.6), - dropOffset=LabwareOffsetVector(x=0, y=0, z=4.6), + dropOffset=LabwareOffsetVector(x=0, y=0, z=5.6), ), ), ( lazy_fixture("heater_shaker_v1_def"), LabwareMovementOffsetData( pickUpOffset=LabwareOffsetVector(x=0, y=0, z=0), - dropOffset=LabwareOffsetVector(x=0, y=0, z=0.5), + dropOffset=LabwareOffsetVector(x=0, y=0, z=1.0), ), ), ( diff --git a/app/src/organisms/LabwarePositionCheck/PrepareSpace.tsx b/app/src/organisms/LabwarePositionCheck/PrepareSpace.tsx index 6fdf7b5b79b..7c469acdfcf 100644 --- a/app/src/organisms/LabwarePositionCheck/PrepareSpace.tsx +++ b/app/src/organisms/LabwarePositionCheck/PrepareSpace.tsx @@ -112,7 +112,9 @@ export const PrepareSpace = (props: PrepareSpaceProps): JSX.Element | null => { labwareLocation: location, definition: labwareDef, }, - ]} + ].filter( + () => !('moduleModel' in location && location.moduleModel != null) + )} deckConfig={deckConfig} /> diff --git a/components/src/hardware-sim/BaseDeck/BaseDeck.tsx b/components/src/hardware-sim/BaseDeck/BaseDeck.tsx index 30a2d8d37ac..5e0be0fcc66 100644 --- a/components/src/hardware-sim/BaseDeck/BaseDeck.tsx +++ b/components/src/hardware-sim/BaseDeck/BaseDeck.tsx @@ -121,7 +121,14 @@ export function BaseDeck(props: BaseDeckProps): JSX.Element { ) : ( <> {showSlotLabels ? ( - + 0 || + wasteChuteStagingAreaFixtures.length > 0 + } + /> ) : null} {singleSlotFixtures.map(fixture => ( { + const widthSmallRem = 10.5 + const widthLargeRem = 15.25 + return robotType === FLEX_ROBOT_TYPE ? ( <> + {show4thColumn ? ( + + + + ) : null} diff --git a/components/src/hardware-sim/DeckConfigurator/index.tsx b/components/src/hardware-sim/DeckConfigurator/index.tsx index e468cb6d376..b7c4940837e 100644 --- a/components/src/hardware-sim/DeckConfigurator/index.tsx +++ b/components/src/hardware-sim/DeckConfigurator/index.tsx @@ -125,7 +125,11 @@ export function DeckConfigurator(props: DeckConfiguratorProps): JSX.Element { fixtureLocation={cutoutId} /> ))} - + 0} + /> {children} ) diff --git a/hardware-testing/hardware_testing/opentrons_api/helpers_ot3.py b/hardware-testing/hardware_testing/opentrons_api/helpers_ot3.py index 6652a174a73..cd442e3e170 100644 --- a/hardware-testing/hardware_testing/opentrons_api/helpers_ot3.py +++ b/hardware-testing/hardware_testing/opentrons_api/helpers_ot3.py @@ -4,10 +4,10 @@ from datetime import datetime from enum import Enum from math import pi -from subprocess import run +from subprocess import run, Popen from time import time from typing import Callable, Coroutine, Dict, List, Optional, Tuple, Union - +import atexit from opentrons_hardware.drivers.can_bus import DriverSettings, build, CanMessenger from opentrons_hardware.drivers.can_bus import settings as can_bus_settings from opentrons_hardware.firmware_bindings.constants import SensorId @@ -77,6 +77,15 @@ def stop_server_ot3() -> None: """Stop opentrons-robot-server on the OT3.""" print('Stopping "opentrons-robot-server"...') run(["systemctl", "stop", "opentrons-robot-server"]) + atexit.register(restart_server_ot3) + + +def restart_server_ot3() -> None: + """Start opentrons-robot-server on the OT3.""" + print('Starting "opentrons-robot-server"...') + Popen( + ["systemctl", "restart", "opentrons-robot-server", "&"], + ) def start_server_ot3() -> None: diff --git a/shared-data/deck/definitions/3/ot3_standard.json b/shared-data/deck/definitions/3/ot3_standard.json index 775ba50960f..bead3586dba 100644 --- a/shared-data/deck/definitions/3/ot3_standard.json +++ b/shared-data/deck/definitions/3/ot3_standard.json @@ -982,7 +982,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": -0.25 + "z": -0.75 } } } diff --git a/shared-data/deck/definitions/4/ot3_standard.json b/shared-data/deck/definitions/4/ot3_standard.json index a01ee27aa92..5d5441a8fcf 100644 --- a/shared-data/deck/definitions/4/ot3_standard.json +++ b/shared-data/deck/definitions/4/ot3_standard.json @@ -590,7 +590,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": -0.25 + "z": -0.75 } } } diff --git a/shared-data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json b/shared-data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json index f0704d43cca..dec71b2b4e1 100644 --- a/shared-data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json +++ b/shared-data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json @@ -55,7 +55,7 @@ "z": 10.7 } }, - "gripForce": 15, + "gripForce": 9, "gripHeightFromLabwareBottom": 10, "ordering": [ ["A1", "B1", "C1", "D1", "E1", "F1", "G1", "H1"], diff --git a/shared-data/labware/definitions/2/opentrons_96_pcr_adapter/1.json b/shared-data/labware/definitions/2/opentrons_96_pcr_adapter/1.json index 9447d404d0c..459922d3f22 100644 --- a/shared-data/labware/definitions/2/opentrons_96_pcr_adapter/1.json +++ b/shared-data/labware/definitions/2/opentrons_96_pcr_adapter/1.json @@ -1014,5 +1014,19 @@ "x": 8.5, "y": 5.5, "z": 0 + }, + "gripperOffsets": { + "default": { + "pickUpOffset": { + "x": 0, + "y": 0, + "z": 0 + }, + "dropOffset": { + "x": 0, + "y": 0, + "z": 1.0 + } + } } } diff --git a/shared-data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json b/shared-data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json index 01db61ae047..2eadb732440 100644 --- a/shared-data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json +++ b/shared-data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json @@ -1014,5 +1014,19 @@ "x": 0, "y": 0, "z": 0 + }, + "gripperOffsets": { + "default": { + "pickUpOffset": { + "x": 0, + "y": 0, + "z": 0 + }, + "dropOffset": { + "x": 0, + "y": 0, + "z": 1.0 + } + } } } diff --git a/shared-data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json b/shared-data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json index fb6420bac45..4e8314698aa 100644 --- a/shared-data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json +++ b/shared-data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json @@ -55,7 +55,7 @@ "z": 10.7 } }, - "gripForce": 15, + "gripForce": 9, "gripHeightFromLabwareBottom": 10, "ordering": [ ["A1", "B1", "C1", "D1", "E1", "F1", "G1", "H1"], diff --git a/shared-data/module/definitions/3/heaterShakerModuleV1.json b/shared-data/module/definitions/3/heaterShakerModuleV1.json index 63d6dd31998..30164bd8607 100644 --- a/shared-data/module/definitions/3/heaterShakerModuleV1.json +++ b/shared-data/module/definitions/3/heaterShakerModuleV1.json @@ -43,7 +43,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": 0.5 + "z": 1.0 } } }, diff --git a/shared-data/module/definitions/3/magneticBlockV1.json b/shared-data/module/definitions/3/magneticBlockV1.json index 2dea6a9d2ca..a1fd0a39248 100644 --- a/shared-data/module/definitions/3/magneticBlockV1.json +++ b/shared-data/module/definitions/3/magneticBlockV1.json @@ -38,7 +38,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": 0.5 + "z": 1.0 } } }, diff --git a/shared-data/module/definitions/3/temperatureModuleV2.json b/shared-data/module/definitions/3/temperatureModuleV2.json index cc16e0b1ec4..7e67659eba7 100644 --- a/shared-data/module/definitions/3/temperatureModuleV2.json +++ b/shared-data/module/definitions/3/temperatureModuleV2.json @@ -41,7 +41,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": 0.5 + "z": 1.0 } } }, diff --git a/shared-data/module/definitions/3/thermocyclerModuleV2.json b/shared-data/module/definitions/3/thermocyclerModuleV2.json index 9c7965eb49a..531890def74 100644 --- a/shared-data/module/definitions/3/thermocyclerModuleV2.json +++ b/shared-data/module/definitions/3/thermocyclerModuleV2.json @@ -44,7 +44,7 @@ "dropOffset": { "x": 0, "y": 0, - "z": 4.6 + "z": 5.6 } } },