Skip to content

Conversation

@xbtu2
Copy link
Contributor

@xbtu2 xbtu2 commented Dec 21, 2025

tecan spark WIP. luminescence coming up soon. i had a hard time to get io.usb to work with this, so i'm directly using libusb for now

@hazlamshamin
Copy link
Contributor

CRAZY COOOOL! this is VERY complete

@BioCam BioCam requested a review from Copilot December 21, 2025 07:33
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds support for the Tecan Spark plate reader by implementing a comprehensive async backend with USB communication, packet parsing, and data processing capabilities. The implementation includes controls for various instrument subsystems and processors for absorbance and fluorescence measurements.

Key Changes

  • New async USB reader with packet parsing for Tecan Spark devices
  • Absorbance and fluorescence data processors with real-world test coverage
  • Comprehensive control modules for plate transport, optics, sensors, measurements, and system configuration
  • Utility function for calculating non-overlapping well rectangles

Reviewed changes

Copilot reviewed 23 out of 24 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
pylabrobot/plate_reading/utils.py Adds helper to find non-overlapping rectangles covering plate wells
pylabrobot/plate_reading/tecan/spark20m/spark_reader_async.py Implements async USB communication layer for Spark devices
pylabrobot/plate_reading/tecan/spark20m/spark_packet_parser.py Parses binary measurement data packets from the device
pylabrobot/plate_reading/tecan/spark20m/spark_processor.py Processes raw measurement data into absorbance/fluorescence values
pylabrobot/plate_reading/tecan/spark20m/spark_backend.py Main backend integrating all components for plate reading operations
pylabrobot/plate_reading/tecan/spark20m/controls/*.py Control modules for device subsystems (optics, sensors, movement, etc.)
pylabrobot/plate_reading/tecan/spark20m/*_tests.py Unit tests for reader, processor, and backend components

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

xbtu2 and others added 2 commits December 21, 2025 11:24
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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