-
Notifications
You must be signed in to change notification settings - Fork 176
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): new_pipette.rst revisions for Flex #13218
Conversation
Mid-day save
End of day commit
Midmorning save, just in case.
Culling tables and organizing pipette types. Lunch commit.
End of day save
Mid day save.
End of day save.
Early morning save up.
Moar saving.
More before lunch.
mid afternoon save
End of day revisions and save.
Top 'o the morning save.
Updated flow rates. May open draft PR.
Added comment about table alignment.
Small tweak. final final final. Open pr.
Codecov Report
@@ Coverage Diff @@
## edge #13218 +/- ##
=======================================
Coverage 72.32% 72.32%
=======================================
Files 2399 2399
Lines 66338 66338
Branches 7383 7383
=======================================
Hits 47978 47978
Misses 16594 16594
Partials 1766 1766
Flags with carried forward coverage won't be shown. Click here to find out more. |
Fix/condense flow rate tables.
Change flow rate section title. Add some comments.
Change header for GEN2 - GEN1 pipette comparisons
Table formatting fix because of comment on preceeding line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whew, this page is in fact a lot! It's definitely organized better than before. I did leave several comments on improving structure further. Another pass through and this should be good.
api/docs/v2/new_pipette.rst
Outdated
|
||
.. code-block:: python | ||
:substitutions: | ||
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded by ``load_instrument()`` are attached properly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this language, "you must inform the robot about the pipettes you want to use in your protocol", repeats the opening sentence too closely. the rest of the info in this ¶ is good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removing that paragraph and incorporating into 2nd paragraph of 1st section.
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. As noted above, the:py:meth:
~.ProtocolContext.load_instrument
method provides this capability. It also requires the :ref:pipette's API load name <new-pipette-models>
, its left or right mount position, and (optionally) a list of associated tip racks. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded byload_instrument()
are attached properly.
Lunch time special. Saving. More tk.
Moved tip racks up in the TOC. Added subsections for multi-channel pipettes and well plates. Pushing from local and will now address on-line repo comments.
A decent draft push. This is ready for the regular PR process, I think. Will push and convert.
Turning this into a regular PR and re-requesting review. |
Duplicated similar text that should have appeared in a Note. Removing the similar text.
And revising some tables and table headers.
Simplify examples. Consolidate each rate type into 1 sample block.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great, only a few things that didn't land in their final spot or needed a little cleanup. 🔜
api/docs/v2/new_pipette.rst
Outdated
You load pipettes in a protocol using the :py:meth:`~.ProtocolContext.load_instrument` method. This method requires the :ref:`pipette's API load name <new-pipette-models>`, its left or right mount position, and (optionally) a list of associated tip racks. | ||
|
||
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded by ``load_instrument()`` are attached properly. | ||
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. As noted above, the:py:meth:`~.ProtocolContext.load_instrument` method provides this capability. It also requires the :ref:`pipette's API load name <new-pipette-models>`, its left or right mount position, and (optionally) a list of associated tip racks. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded by ``load_instrument()`` are attached properly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. As noted above, the:py:meth:`~.ProtocolContext.load_instrument` method provides this capability. It also requires the :ref:`pipette's API load name <new-pipette-models>`, its left or right mount position, and (optionally) a list of associated tip racks. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded by ``load_instrument()`` are attached properly. | |
Similar to working with labware and modules, you must inform the robot about the pipettes you want to use in your protocol. As noted above, the :py:meth:`~.ProtocolContext.load_instrument` method provides this capability. It also requires the :ref:`pipette's API load name <new-pipette-models>`, its left or right mount position, and (optionally) a list of associated tip racks. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App and the robot won't let you start the protocol run until all pipettes loaded by ``load_instrument()`` are attached properly. |
syntax fix
api/docs/v2/new_pipette.rst
Outdated
|
||
.. versionadded:: 2.0 | ||
|
||
When you load a pipette in this way, you are declaring that you want the specified pipette to be attached to the robot. Even if you don't use the pipette anywhere else in your protocol, the Opentrons App or the touchscreen on Flex will not let your protocol proceed until all pipettes loaded with ``load_instrument`` are attached. | ||
|
||
If you're writing a protocol that uses the Flex Gripper, you might think that this would be the place in your protocol to declare that. However, the gripper doesn't require ``load_instrument``! Whether your gripper requires a protocol is determined by the presence of :py:meth:`.ProtocolContext.move_labware` commands. See :ref:`moving-labware` for more details. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should go up in the Flex section
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yikes. Yes it should. Fixing locally and will push.
api/docs/v2/new_pipette.rst
Outdated
.. _new-multichannel-pipettes: | ||
|
||
Multi-Channel Pipettes | ||
====================== | ||
Multi-Channel Pipettes and Well Plates |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check the cross-references to make sure this won't add the text "and Well Plates" to links elsewhere.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's go back to the original, "Multi-Channel Pipettes." I didn't really like the extra I added on -- too long.
api/docs/v2/new_pipette.rst
Outdated
|
||
.. code-block:: python | ||
|
||
def run(protocol: protocol_api.ProtocolContext): | ||
# Load a tiprack for 1000uL tips | ||
tiprack1 = protocol.load_labware( | ||
load_name='opentrons_flex_96_tiprack_1000ul', | ||
location='D1') | ||
# Load a wellplate | ||
location='D1') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fix indents here, Python will consider this a syntax error
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2x yikes. Fixing locally. Will push revisions.
api/docs/v2/new_pipette.rst
Outdated
+-------------------------+-------------+-----------------+-----------------+-----------------+ | ||
| Pipette Model | Volume (µL) | Aspirate (µL/s) | Dispense (µL/s) | Blow-out (µL/s) | | ||
+=========================+=============+=================+=================+=================+ | ||
| Flex 1-Channel Pipette | 1-50 | 8 | 4 | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wiiiiiide boi. let's list it twice: 8, 8, 4 and 160, 160, 80
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is a wide load. We'll have to repeat the 160 and 80 three times because these have the flow rates for the 5-1000 uL pipettes:
- Flex 1-channel
- Flex 8-channel
- Flex 96-channel
With the revision, the only metrics that get the row spans are the volumes for the pipettes. Will fix and push.
Fix spacing
Changes from Ed's recent review. Once more unto the breech, friends!
Used wrong name for pipette position argument.
Fixing code alignment.
Revision to section intro.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
GTG. Massive improvement and lots of new info for Flex on this page. 🦾
This one was a monster! Thanks, @ecormany! |
Overview
Suggested text and code example revisions to the Pipette API docs (new_pipette.rst file) to include Flex text and code examples.
Sandbox link: http:https://sandbox.docs.opentrons.com/pipette-docs-revisions/v2/
Test Plan
Changelog
Changes include:
Review requests
Please 2x check the code samples.
Also, perhaps @SyntaxColoring could take a look at the section titled "Loading a Flex 96-Channel Pipette." The example puts the 96 channel in the left slot(
mount='left'
). It's a simpleload_instrument
example, but maybe there's more to add or a better example to give users. Any input would be appreciated.Risk assessment
Low. Documentation changes only. Any removed OT-2 GEN1 pipette info has been saved separately in case we need to restore it.