A Python platform for controlling an Opentrons liquid handler + a robotic arm to run automated in-vitro wet-lab experiments: pipetting, vortexing, incubation, temperature control, magnetic separation, rocking, tube tightening/inverting, and centrifugation.
Given a protocol as input, the system:
- generates a materials list, consumables list, and risk assessment
- drives the Opentrons + robotic arm to execute the protocol end to end
src/core— orchestration/schedulingsrc/equipment— device drivers (Opentrons, robotic arm, relay board for mag separator/rocker)src/safety— risk assessmentsrc/inventory— consumables/materials trackingsrc/diagnostics,src/audit— run diagnostics and audit trailsrc/nlp— protocol parsingsrc/notify— run notificationssrc/ui— user interfacesrc/data,src/calibration— data handling and instrument calibrationprotocols/— example protocols (DNA extraction, plasmid miniprep 96-well, sandwich ELISA 384-well, VHH expression + Ni purification 96-well)config/hardware_config.yaml— hardware setup (Opentrons IP/port, robotic arm, relay backend); defaults tosimulation_mode: truedocs/BOM.md— recommended hardware bill of materialsdocs/hardware_guide.md— hardware setup guide
./setup.sh # creates venv, installs requirements
python main.py # runSensitive values (IPs, credentials) go in a local .env (not committed);
config/hardware_config.yaml holds non-sensitive hardware layout and
defaults to simulation mode until real hardware is configured.