Skip to content

Commit

Permalink
fix(app): do not require probe presence on 96 (#13986)
Browse files Browse the repository at this point in the history
The 96 channel pipette is not capable of continuously checking for the
presence of a tip (or indeed a calibration probe). It needs to run a
special routing, exposed through ot3api.get_tip_presence_status() or
ot3api.verify_tip_presence(), to check for a tip. This happens
automatically in most of the places we use tips - aka inside other
protocol engine commands - but it does not happen automatically and all
the time.

This is usually fine, but when we're doing calibration we do it through
a protocol engine maintenance run where the way we interact with the
robot is dispatching PE commands - and we don't ever dispatch a PE
command that implicitly causes a tip check. That means that the 96 can't
be relied on to get the presence of a tip.

The long term fix for this is to add a checkTipPresence command to the
engine, at least as a maintenance command; in the short term, we can
disable the presence check for 96 channel pipettes to unblock testing.

Closes RQA-1892
  • Loading branch information
sfoster1 authored Nov 15, 2023
1 parent 1b3d680 commit 53dbd31
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
3 changes: 2 additions & 1 deletion app/src/organisms/LabwarePositionCheck/AttachProbe.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ export const AttachProbe = (props: AttachProbeProps): JSX.Element | null => {
(instrument): instrument is PipetteData =>
instrument.ok && instrument.mount === pipetteMount
)
const is96Channel = attachedPipette?.data.channels === 96

React.useEffect(() => {
// move into correct position for probe attach on mount
Expand All @@ -103,7 +104,7 @@ export const AttachProbe = (props: AttachProbeProps): JSX.Element | null => {
setIsPending(true)
refetch()
.then(() => {
if (attachedPipette?.state?.tipDetected) {
if (is96Channel || attachedPipette?.state?.tipDetected) {
chainRunCommands(
[
{ commandType: 'home', params: { axes: [pipetteZMotorAxis] } },
Expand Down
2 changes: 1 addition & 1 deletion app/src/organisms/PipetteWizardFlows/AttachProbe.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ export const AttachProbe = (props: AttachProbeProps): JSX.Element | null => {
setIsPending(true)
refetch()
.then(() => {
if (attachedPipette?.state?.tipDetected) {
if (is96Channel || attachedPipette?.state?.tipDetected) {
chainRunCommands?.(
[
{
Expand Down

0 comments on commit 53dbd31

Please sign in to comment.