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

docs(api): additional partial tip pickup layouts in 2.20 #15778

Merged
merged 16 commits into from
Aug 16, 2024

Conversation

ecormany
Copy link
Contributor

@ecormany ecormany commented Jul 24, 2024

Overview

Document the new ROW, SINGLE, and PARTIAL_COLUMN configurations for partial tip pickup.

Test Plan

  • Sandbox
  • Code snippets passed simulation.

Changelog

  • Added three new sections to the Partial Tip Pickup page, one for each layout.
  • Added new layouts to Versioning page.
  • Various consistency edits throughout the docs.

Review requests

  • Double check code (eye test and simulate).
  • Keep an eye out for any other inconsistencies / dependencies between Partial Tip Pickup and other pages.
  • Confirm that the explanations make sense and there are no pitfalls for API users.

Risk assessment

v low

@ecormany ecormany force-pushed the docs-more-partial-pickup branch from ce8949a to 7dbb338 Compare August 6, 2024 13:33
@ecormany ecormany added docs papi-v2 Python API V2 labels Aug 6, 2024
@ecormany ecormany changed the base branch from edge to chore_release-8.0.0 August 6, 2024 13:33
@ecormany ecormany marked this pull request as ready for review August 6, 2024 22:56
@ecormany ecormany requested a review from a team as a code owner August 6, 2024 22:56
@ecormany ecormany requested review from CaseyBatten and jwwojak August 6, 2024 22:56
Copy link
Contributor

@jwwojak jwwojak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM though I did have some suggestions for consideration. What a feature!

@@ -21,7 +21,7 @@ Multi-Channel Movement

All :ref:`building block <v2-atomic-commands>` and :ref:`complex commands <v2-complex-commands>` work with single- and multi-channel pipettes.

To keep the protocol API consistent when using single- and multi-channel pipettes, commands treat the back left channel of a multi-channel pipette as its *primary channel*. Location arguments of pipetting commands use the primary channel. The :py:meth:`.InstrumentContext.configure_nozzle_layout` method can change the pipette's primary channel, using its ``start`` parameter. See :ref:`partial-tip-pickup` for more information.
To keep the protocol API consistent when using single- and multi-channel pipettes, location arguments of pipetting commands use the pipette's *primary channel*. For multi-channel pipettes picking up tips with all of their channels, the back-left channel is considered primary. When using fewer channels, the ``start`` parameter of the :py:meth:`.InstrumentContext.configure_nozzle_layout` method can change the pipette's primary channel. See :ref:`partial-tip-pickup` for more information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest striking "considered" from this sentence:

"For multi-channel pipettes picking up tips with all of their channels, the back-left channel is considered primary."

Or even write it as, "...the back-left channel is the primary channel."

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Being subtle here. The choice of primary nozzle in ALL configuration is implicit and can be overridden, although I'm pretty sure this is a bad idea:

    8ch_pipette.configure_nozzle_layout(
        style=ALL,
        start="H1",
    )

api/docs/v2/pipettes/partial_tip_pickup.rst Outdated Show resolved Hide resolved
api/docs/v2/pipettes/partial_tip_pickup.rst Show resolved Hide resolved
Comment on lines +137 to +139
Consider the placement of your tip rack when choosing the ``start`` value for row pickup. The pipette cannot pick up from back to front (``start="H1"``) on tip racks in row A of the deck, nor can it pick up from front to back (``start="A1"``) on tip racks in row D of the deck. This is because the pipette can't move far enough backward or forward, respectively, to align over those tips.

Use a different ``start`` value, or load the tip rack in row B or C.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably not possible in a note:: in rst. This seems like an ideal case for bullets to emphasize the thing to avoid/not to do:

The pipette cannot pick up from:

  • Back to front (start="H1") on tip racks in row A of the deck.
  • Front to back (start="A1") on tip racks in row D of the deck.
    ...

Also, recommend putting emphasis on cannot in the note text.

api/docs/v2/pipettes/partial_tip_pickup.rst Outdated Show resolved Hide resolved
api/docs/v2/pipettes/partial_tip_pickup.rst Show resolved Hide resolved
api/docs/v2/pipettes/partial_tip_pickup.rst Outdated Show resolved Hide resolved
api/docs/v2/pipettes/partial_tip_pickup.rst Show resolved Hide resolved
api/docs/v2/pipettes/partial_tip_pickup.rst Show resolved Hide resolved
api/src/opentrons/protocol_api/instrument_context.py Outdated Show resolved Hide resolved
@ecormany ecormany requested a review from y3rsh August 12, 2024 18:29
@ecormany
Copy link
Contributor Author

OK, merging this monster. If anything is amiss, I can do a follow-up.

@ecormany ecormany merged commit 1a42392 into chore_release-8.0.0 Aug 16, 2024
21 checks passed
@ecormany ecormany deleted the docs-more-partial-pickup branch August 16, 2024 02:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs papi-v2 Python API V2
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants