Skip to content

v1 STAR pipettes: old master is sent limited PIP parameters - #1471

Draft
BioCam wants to merge 1 commit into
PyLabRobot:mainfrom
BioCam:star-older-master-pip-parameters
Draft

BioCam wants to merge 1 commit into
PyLabRobot:mainfrom
BioCam:star-older-master-pip-parameters

Conversation

@BioCam

@BioCam BioCam commented Oct 6, 2026

Copy link
Copy Markdown
Collaborator

On main the channel commands always carry ti, td, po, the TADM fields and the second-section aspiration fields. A master built before the 2011-05-12 revision of its command set does not know them and answers er01/31 "Unknown parameter": C0 DI fails whenever setup has to initialize the channels, and C0 AS on every aspirate (#1050, master 8.0S 2011-03-02). The master's version number does not follow its releases - that 8.0S is from 2011, a 7.6S from 2021 - so its build date is what decides.

  • DeviceConfiguration.takes_extended_pip_parameters: true from EXTENDED_PIP_PARAMETERS_SINCE on, and when no build date was read
  • left out for an older master: ti in C0 DI and C0 TR, td in C0 TP, po, gi gj gk, lk ik and se sz in C0 AS, po and gi gj gk in C0 DS - the set Add Legacy Starlet Support #1002 leaves out on the legacy backend, which is what Hamilton STAR firmware error: C0DI / C0AS “Unknown parameter” with older firmware #1050 was resolved with
  • a master built later is sent exactly what it was before
  • on an older master the tip ejection, the pickup method, TADM and the pull-out distance are the firmware's own, since it has no parameter for them
  • this v1 version has not been run on a master that old yet
# master built before 2011-05-12
await star.driver.pipettes.initialize()   # C0DIxp…tt04        (was …tt04ti0 -> er01/31)

Tests: pipettes_tests - a master one day older than the threshold is sent DI, TP and TR without ti / td, and AS / DS without the parameters above.

🤖 Generated with Claude Code

…eters

A master built before the 2011-05-12 revision of its command set answers
"Unknown parameter" to the channel commands as this driver sends them.
DeviceConfiguration says from the master's build date whether it takes
the extended parameters, and the commands leave them out when it does
not: `ti` in C0 DI and C0 TR, `td` in C0 TP, `po`, `gi gj gk`, `lk ik`
and `se sz` in C0 AS, `po` and `gi gj gk` in C0 DS. A master built
later, or one with no build date, is sent exactly what it was before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@BioCam BioCam changed the title STAR pipettes: a master older than them is sent no extended PIP parameters STAR pipettes: a master older than them is sent limited PIP parameters Oct 6, 2026
@BioCam BioCam changed the title STAR pipettes: a master older than them is sent limited PIP parameters v1 STAR pipettes: old master is sent limited PIP parameters Oct 6, 2026
@har1eyk

har1eyk commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Hey, @BioCam , did you see this PR, #1002?

Do you think it may inform your PR here?

@BioCam

BioCam commented Oct 6, 2026

Copy link
Copy Markdown
Collaborator Author

Hey, @BioCam , did you see this PR, #1002?

Do you think it may inform your PR here?

Absolutely, this is actually meant to be the v1 port of your PR!
I've asked @mason from your review to validate this v1 port on their oldie STAR ;)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants