Skip to content
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

bug: partial tip invalid motion planning error for nozzle A1 -> well 0 of plate in row A #16888

Open
strangemonad opened this issue Nov 19, 2024 · 0 comments
Labels

Comments

@strangemonad
Copy link
Contributor

Overview

when configured for single channel A1 of 8-channel pipette, can't target the back row of wells.

Steps to reproduce

Here's an example that picks up a single tip with A1 and tries to walk back through the wells of a plate in deck row A

the code won't run directly as is because it uses some of our internal utility wrapper classes but should capture the spirit of the bug.

tip_rack = self.ctx.load_labware(
    config=LabwareConfig(
        name="50_1",
        load_name="opentrons_flex_96_filtertiprack_200ul",
        namespace="opentrons",
        version=1,
        load_location=DeckLocation.B3,
    )
)

plate = self.ctx.load_labware(
    config=LabwareConfig(
        name="plate",
        load_name="nunc_96_wellplate_2000ul_instance",
        namespace="instance",
        version=1,
        load_location=DeckLocation.A2,
    )
)

pipette = self.ctx.get_instrument(config=self.config.pipette_1_config)
pipette.tip_racks = [
    tip_rack
]

pipette.context.configure_nozzle_layout(
    style=protocol_api.SINGLE,
    start="A1",
)

pipette.pick_up_tip(tip_rack.wells()[-1])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[7])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[6])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[5])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[4])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[3])
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[2])

# Fails when trying to run this step.
pipette.aspirate(Amount(amount=10, unit=UnitOfMeasure.U_L), plate.wells()[1])

Current behavior

Fails to address back-most row of wells even though this row is accessible (e.g. when running in standard 8-channel layout)

Expected behavior

can access all wells of labware in row A with tip A1.

Operating system

None

System and robot setup or anything else?

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant