Skip to content

Per-channel waste positions: assign at setup, use in discard_tips#924

Open
cmoscy wants to merge 4 commits intoPyLabRobot:v1b1from
cmoscy:star-waste-positions
Open

Per-channel waste positions: assign at setup, use in discard_tips#924
cmoscy wants to merge 4 commits intoPyLabRobot:v1b1from
cmoscy:star-waste-positions

Conversation

@cmoscy
Copy link
Copy Markdown
Contributor

@cmoscy cmoscy commented Mar 6, 2026

  • Decks expose addressable waste via get_waste_positions(); STARlet deck provides multiple waste positions for use with discard/drop tips.

  • At liquid handler setup, waste positions are assigned once per hardware channel using backend.num_channels and deck.get_waste_positions() (via get_waste_positions_for_n_channels). This mapping is stored on the liquid handler.

  • discard_tips uses that mapping: each channel in use_channels goes to its assigned waste position, independent of how many channels are in the op (no longer derived from len(use_channels)).

  • Single-trash decks (e.g. Opentrons, EVO) unchanged: one trash repeated per channel, same offset behavior as before. Backends unchanged; only the front-end mapping and when it is computed changed.

  • Tests added for setup population, tested on Starlet hardware

cmoscy added 4 commits March 5, 2026 23:31
- Decks now require get_waste_positions method
- STARlet deck exposes addressed waste positions (by n_channels) for discard_tips
…ste position regardless of channels in discard op
@rickwierenga
Copy link
Copy Markdown
Member

I'm actually thinking about targeting beta 2 for this PR, since it's changing the model which could be unexpectedly breaking for users. I hope to release beta 1 to the current version this week, and then merge this PR into main after.

@cmoscy
Copy link
Copy Markdown
Contributor Author

cmoscy commented Mar 9, 2026

All good! If there's anything you'd like me to refine/change in the meantime just let me know.

@rickwierenga rickwierenga changed the base branch from main to v1b1 March 30, 2026 05:51
@rickwierenga rickwierenga force-pushed the v1b1 branch 5 times, most recently from 475dbab to 588abbb Compare April 2, 2026 21:12
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