Can a stdlib static linter catch the lab-protocol faults the Opentrons simulator accepts?
research/osrobot-lint
Can a stdlib static linter catch the lab-protocol faults the Opentrons simulator accepts? It flags 362 of the 522 seeded faults to the simulator's 270, adding reused tips, tips left on, sub-minimum volumes and carry-over; stylised, partly circular.
What it found
A stdlib linter for Opentrons Python API scripts follows tip state, used tip wells, declared well volumes and the liquid in the tip without running the script. On the 522 seeded faults of osrobot-lab it flags 362, against 270 raised by the real simulator and 366 flagged by the twin, adding reused tips, tips left on, sub-minimum volumes and carry-over; it cannot see the travel-height collisions. Agreement with the twin is partly circular (same author, same fault set), and every limit is an assumed value. Stylised.
A figure from its own output
Paper, code and results
More in Open-source purpose-built robots
- Does the MuJoCo feeding-arm result change when the lips have the ISO/TS 15066 face stiffness and the safe force comes from the standard?At the ISO/TS 15066 face stiffness (75 N/mm) the blocked-arm impact peak only doubles (7.56 N against 3.68 N at 0.10 m/s), and every camera-arm trial stays under the 65 N and 130 N face limits (worst peak 53 N), where the assumed 2 N limit had flagged most; contact damping is unsourced and swept (MuJoCo, simulation only)
- How much force can a feeding-arm tip apply to a lip before the tissue bottoms out on bone?With tissue as a 5 to 20 mm layer bonded to bone at 4 to 45 kPa, the force that indents it 30 % is 0.05 to 9 N, 1.3 to 1000 times below the simulated 12.6 to 53 N trial forces, so the arm needs a newton-scale force cap, not 65 N (published bottom-effect corrections, no FE run)
- Is the feeding-arm tip's contact pressure computable at a measured face modulus?Published in-vivo face and lip moduli are 4 to 45 kPa, below the 0.05 to 5 MPa that osrobot-mjpress swept; at them a 4 mm tip at 53 N would sink 48 to 241 mm in a Hertz model, so the model is out of range and tip radius or depth, not 65 N, is the design question (closed-form, simulation forces)
- Does the feeding arm's tip pressure, not its force, break the ISO/TS 15066 face limits?A 4 mm feeding-arm tip that meets the 65 N face force limit still needs 0.5 to 2.7 cm² of contact to meet a 110 to 20 N/cm² pressure limit at its worst trial (53 N); the answer flips on an unsourced face modulus (MuJoCo, simulation only)
- What happens when a feeding arm meets a soft lip instead of a spring, and does a force cap help?Replacing the 75,000 N/m spring with a bonded tissue layer (4 to 45 kPa, 5 or 15 mm) cuts simulated peaks to 1 to 3 N in most cells but still breaks the 30 % depth limit in about half the trials; a 0.2 to 0.5 N cap fixes steady pushes, slowing to 0.02 m/s fixes a 10 kPa, 15 mm lip, and nothing fixes a thin 4 kPa one by speed alone (MuJoCo dynamics, closed-form tissue force)
- How fast can a purpose-built robot fill a 96-well plate, and does the robot or the number of channels matter more?How fast can a purpose-built robot fill a 96-well plate, and does the robot or the number of channels matter more? Eight channels cut the time by 86 to 88 % (9.5 s against 69.7 s for a gantry at 10 µL) while gantry against arm moves it 4 to 14 %, since about 76 % is fixed pipetting actions (stylised; every speed, price and accuracy figure assumed).
All 44 Open-source purpose-built robots projects →
Other research topics
Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1
Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.