HPInc / HP-Digital-Microfluidics

HP Digital Microfluidics Software Platform and Libraries
MIT License
3 stars 1 forks source link

Simplify adding exerciser parameters #68

Open EvanKirshenbaum opened 8 months ago

EvanKirshenbaum commented 8 months ago

Currently, each exerciser implements add_device_specific_common_args, which adds the arguments that are needed to configure the hardware (as well as any other arguments that are task-independent). For example, WombatExerciser and OpenDropExerciser add commands to set the USB port and the OpenDrop firmware version. PCRDriver adds (among other things), arguments to configure an Opentrons robot. As I'm adding BilbyExerciser, I need parameters to find the DLL and CSV files. But with PCRDriver, I'll need these as well as Opentrons params.

What I'm thinking is that I should regularize this and (1) have the arguments added by the device models themselves (e.g., joey.Board, bilby.Board, opentrons.OT2, DummyPipettor) and possibly have some way to say, in the exerciser, "These are mutually exclusive options for creating the board, pipettor, etc. Add the arguments for each (mutually exclusive, possibly with a prefix) and choose the one to make based on what's provided.

Migrated from internal repository. Originally created by @EvanKirshenbaum on Mar 05, 2022 at 5:33 PM PST.
EvanKirshenbaum commented 8 months ago

This is (at least) very close to being subsumed by #123.

Migrated from internal repository. Originally created by @EvanKirshenbaum on Jun 10, 2022 at 4:01 PM PDT.