[{"data":1,"prerenderedAt":1726},["ShallowReactive",2],{"navigation":3,"\u002Fdevices\u002Fhamilton-microlab-vantage":986,"\u002Fdevices\u002Fhamilton-microlab-vantage-surround":1721},[4,68,205,384,580,773,820],{"title":5,"device":6,"path":7,"stem":8,"children":9,"page":51},"Get Started",null,"\u002Fget-started\u002F","01.get-started",[10,14,52,56,60,64],{"title":11,"path":12,"stem":13,"device":6},"Welcome to UniteLabs","\u002Fget-started\u002Fwelcome\u002F","01.get-started\u002F00.welcome",{"title":15,"device":6,"path":16,"stem":17,"children":18,"page":51},"Setup","\u002Fget-started\u002Fsetup\u002F","01.get-started\u002F01.setup",[19,23,27,31,35,39,43,47],{"title":20,"path":21,"stem":22,"device":6},"Get access","\u002Fget-started\u002Fsetup\u002Fget-access\u002F","01.get-started\u002F01.setup\u002F00.get-access",{"title":24,"path":25,"stem":26,"device":6},"GroundControl","\u002Fget-started\u002Fsetup\u002Fgroundcontrol\u002F","01.get-started\u002F01.setup\u002F10.groundcontrol",{"title":28,"path":29,"stem":30,"device":6},"Network requirements","\u002Fget-started\u002Fsetup\u002Fnetwork-requirements\u002F","01.get-started\u002F01.setup\u002F15.network-requirements",{"title":32,"path":33,"stem":34,"device":6},"Connect to Platform","\u002Fget-started\u002Fsetup\u002Fconnect-to-platform\u002F","01.get-started\u002F01.setup\u002F20.connect-to-platform",{"title":36,"path":37,"stem":38,"device":6},"Set up your development machine","\u002Fget-started\u002Fsetup\u002Fdeveloper-machine\u002F","01.get-started\u002F01.setup\u002F30.developer-machine",{"title":40,"path":41,"stem":42,"device":6},"SDK installation","\u002Fget-started\u002Fsetup\u002Fsdk-installation\u002F","01.get-started\u002F01.setup\u002F40.sdk-installation",{"title":44,"path":45,"stem":46,"device":6},"SDK upgrade","\u002Fget-started\u002Fsetup\u002Fsdk-upgrade\u002F","01.get-started\u002F01.setup\u002F45.sdk-upgrade",{"title":48,"path":49,"stem":50,"device":6},"Connect an AI assistant to the docs","\u002Fget-started\u002Fsetup\u002Fai-assistant\u002F","01.get-started\u002F01.setup\u002F50.ai-assistant",false,{"title":53,"path":54,"stem":55,"device":6},"Control a device","\u002Fget-started\u002Fcontrol-a-device\u002F","01.get-started\u002F02.control-a-device",{"title":57,"path":58,"stem":59,"device":6},"Liquid handling as code","\u002Fget-started\u002Fliquid-handling-as-code\u002F","01.get-started\u002F03.liquid-handling-as-code",{"title":61,"path":62,"stem":63,"device":6},"Automate your workflows","\u002Fget-started\u002Fautomate-your-workflows\u002F","01.get-started\u002F04.automate-your-workflows",{"title":65,"path":66,"stem":67,"device":6},"Self-Paced Setup Guide","\u002Fget-started\u002Fself-onboarding\u002F","01.get-started\u002F90.self-onboarding",{"title":69,"device":6,"path":70,"stem":71,"children":72,"page":51},"How-to","\u002Fhow-to\u002F","02.how-to",[73,127,180,197],{"title":74,"device":6,"path":75,"stem":76,"children":77,"page":51},"Connectors and devices","\u002Fhow-to\u002Fintegrate\u002F","02.how-to\u002F02.integrate",[78,111],{"title":79,"device":6,"path":80,"stem":81,"children":82,"page":51},"Connect a device","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device",[83,87,91,95,99,103,107],{"title":84,"path":85,"stem":86,"device":6},"Connector Configuration","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fconnector-configuration\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F10.connector-configuration",{"title":88,"path":89,"stem":90,"device":6},"With an executable","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fwith-an-executable\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F20.with-an-executable",{"title":92,"path":93,"stem":94,"device":6},"From source","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Ffrom-source\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F30.from-source",{"title":96,"path":97,"stem":98,"device":6},"Build your own","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fbuild-yourself\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F40.build-yourself",{"title":100,"path":101,"stem":102,"device":6},"Headless install","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fheadless-install\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F50.headless-install",{"title":104,"path":105,"stem":106,"device":6},"Raspberry Pi","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fraspberry-pi\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F55.raspberry-pi",{"title":108,"path":109,"stem":110,"device":6},"Multi-device Networking","\u002Fhow-to\u002Fintegrate\u002Fconnect-a-device\u002Fmultiple-devices\u002F","02.how-to\u002F02.integrate\u002F20.connect-a-device\u002F60.multiple-devices",{"title":112,"device":6,"path":113,"stem":114,"children":115,"page":51},"Use a device","\u002Fhow-to\u002Fintegrate\u002Fuse-a-device\u002F","02.how-to\u002F02.integrate\u002F30.use-a-device",[116,119,123],{"title":24,"path":117,"stem":118,"device":6},"\u002Fhow-to\u002Fintegrate\u002Fuse-a-device\u002Fgroundcontrol\u002F","02.how-to\u002F02.integrate\u002F30.use-a-device\u002F10.groundcontrol",{"title":120,"path":121,"stem":122,"device":6},"Platform","\u002Fhow-to\u002Fintegrate\u002Fuse-a-device\u002Fplatform\u002F","02.how-to\u002F02.integrate\u002F30.use-a-device\u002F20.platform",{"title":124,"path":125,"stem":126,"device":6},"UniteLabs SDK & REST API","\u002Fhow-to\u002Fintegrate\u002Fuse-a-device\u002Fpython\u002F","02.how-to\u002F02.integrate\u002F30.use-a-device\u002F30.python",{"title":128,"device":6,"path":129,"stem":130,"children":131,"page":51},"Workflows","\u002Fhow-to\u002Fautomate\u002F","02.how-to\u002F07.automate",[132,136,140,144,148,152,156,160,164,168,172,176],{"title":133,"path":134,"stem":135,"device":6},"Workflow template","\u002Fhow-to\u002Fautomate\u002Fworkflow-template\u002F","02.how-to\u002F07.automate\u002F10.workflow-template",{"title":137,"path":138,"stem":139,"device":6},"Deploy a workflow","\u002Fhow-to\u002Fautomate\u002Fdeploy-a-workflow\u002F","02.how-to\u002F07.automate\u002F30.deploy-a-workflow",{"title":141,"path":142,"stem":143,"device":6},"Run a workflow","\u002Fhow-to\u002Fautomate\u002Frun-a-workflow\u002F","02.how-to\u002F07.automate\u002F35.run-a-workflow",{"title":145,"path":146,"stem":147,"device":6},"Workflows REST API","\u002Fhow-to\u002Fautomate\u002Fworkflows-api\u002F","02.how-to\u002F07.automate\u002F38.workflows-api",{"title":149,"path":150,"stem":151,"device":6},"CI\u002FCD for workflows","\u002Fhow-to\u002Fautomate\u002Fcicd-for-workflows\u002F","02.how-to\u002F07.automate\u002F40.cicd-for-workflows",{"title":153,"path":154,"stem":155,"device":6},"HITL basics","\u002Fhow-to\u002Fautomate\u002Fbasic-hitl\u002F","02.how-to\u002F07.automate\u002F50.basic-hitl",{"title":157,"path":158,"stem":159,"device":6},"Slack notifications and operator confirmation","\u002Fhow-to\u002Fautomate\u002Fslack-notifications\u002F","02.how-to\u002F07.automate\u002F52.slack-notifications",{"title":161,"path":162,"stem":163,"device":6},"Typed operator inputs","\u002Fhow-to\u002Fautomate\u002Ftyped-operator-inputs\u002F","02.how-to\u002F07.automate\u002F55.typed-operator-inputs",{"title":165,"path":166,"stem":167,"device":6},"Pause and resume a run","\u002Fhow-to\u002Fautomate\u002Fpause-and-resume\u002F","02.how-to\u002F07.automate\u002F57.pause-and-resume",{"title":169,"path":170,"stem":171,"device":6},"Error recovery","\u002Fhow-to\u002Fautomate\u002Fbasic-error-handling\u002F","02.how-to\u002F07.automate\u002F60.basic-error-handling",{"title":173,"path":174,"stem":175,"device":6},"Advanced error handling","\u002Fhow-to\u002Fautomate\u002Fadvanced-error-handling\u002F","02.how-to\u002F07.automate\u002F70.advanced-error-handling",{"title":177,"path":178,"stem":179,"device":6},"Emit lineage events","\u002Fhow-to\u002Fautomate\u002Femitting-lineage-events\u002F","02.how-to\u002F07.automate\u002F90.emitting-lineage-events",{"title":181,"device":6,"path":182,"stem":183,"children":184,"page":51},"Data","\u002Fhow-to\u002Fobserve\u002F","02.how-to\u002F08.observe",[185,189,193],{"title":186,"path":187,"stem":188,"device":6},"File System Connector","\u002Fhow-to\u002Fobserve\u002Ffilesystem-connector\u002F","02.how-to\u002F08.observe\u002F10.filesystem-connector",{"title":190,"path":191,"stem":192,"device":6},"Building an ETL","\u002Fhow-to\u002Fobserve\u002Fbuilding-an-etl\u002F","02.how-to\u002F08.observe\u002F20.building-an-etl",{"title":194,"path":195,"stem":196,"device":6},"Read lineage events","\u002Fhow-to\u002Fobserve\u002Freading-lineage-events\u002F","02.how-to\u002F08.observe\u002F30.reading-lineage-events",{"title":120,"device":6,"path":198,"stem":199,"children":200,"page":51},"\u002Fhow-to\u002Fplatform\u002F","02.how-to\u002F09.platform",[201],{"title":202,"path":203,"stem":204,"device":6},"UniteLabs Desktop","\u002Fhow-to\u002Fplatform\u002Funitelabs-desktop\u002F","02.how-to\u002F09.platform\u002F10.unitelabs-desktop",{"title":206,"device":6,"path":207,"stem":208,"children":209,"page":51},"Concepts","\u002Fconcepts\u002F","04.concepts",[210,248,272,321,360],{"title":211,"device":6,"path":212,"stem":213,"children":214,"page":51},"Labs as code","\u002Fconcepts\u002Flabs-as-code\u002F","04.concepts\u002F01.labs-as-code",[215,219,223],{"title":216,"path":217,"stem":218,"device":6},"Lab as Code","\u002Fconcepts\u002Flabs-as-code\u002Fwhy-code\u002F","04.concepts\u002F01.labs-as-code\u002F00.why-code",{"title":220,"path":221,"stem":222,"device":6},"How it works","\u002Fconcepts\u002Flabs-as-code\u002Fhow-it-works\u002F","04.concepts\u002F01.labs-as-code\u002F01.how-it-works",{"title":224,"device":6,"path":225,"stem":226,"children":227,"page":51},"Use Cases","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases",[228,232,236,240,244],{"title":229,"path":230,"stem":231,"device":6},"Instrument Control","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002Flow-level-instrument-control\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases\u002F10.low-level-instrument-control",{"title":233,"path":234,"stem":235,"device":6},"Multi-device Control","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002Fmulti-device-control\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases\u002F20.multi-device-control",{"title":237,"path":238,"stem":239,"device":6},"Workflow Orchestration","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002Fworkflow-orchestration\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases\u002F30.workflow-orchestration",{"title":241,"path":242,"stem":243,"device":6},"Custom Apps and LIMS Integration","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002Fcustom-apps-lims\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases\u002F40.custom-apps-lims",{"title":245,"path":246,"stem":247,"device":6},"Scale and Fleet Management","\u002Fconcepts\u002Flabs-as-code\u002Fuse-cases\u002Fscale-and-fleet\u002F","04.concepts\u002F01.labs-as-code\u002F02.use-cases\u002F50.scale-and-fleet",{"title":74,"device":6,"path":249,"stem":250,"children":251,"page":51},"\u002Fconcepts\u002Fintegrate\u002F","04.concepts\u002F02.integrate",[252,256,260,264,268],{"title":253,"path":254,"stem":255,"device":6},"Device","\u002Fconcepts\u002Fintegrate\u002Fdevice\u002F","04.concepts\u002F02.integrate\u002F05.device",{"title":257,"path":258,"stem":259,"device":6},"Connector","\u002Fconcepts\u002Fintegrate\u002Fconnector\u002F","04.concepts\u002F02.integrate\u002F10.connector",{"title":261,"path":262,"stem":263,"device":6},"Module","\u002Fconcepts\u002Fintegrate\u002Fmodule\u002F","04.concepts\u002F02.integrate\u002F20.module",{"title":265,"path":266,"stem":267,"device":6},"Action","\u002Fconcepts\u002Fintegrate\u002Faction\u002F","04.concepts\u002F02.integrate\u002F30.action",{"title":269,"path":270,"stem":271,"device":6},"Subscription","\u002Fconcepts\u002Fintegrate\u002Fsubscription\u002F","04.concepts\u002F02.integrate\u002F40.subscription",{"title":273,"device":6,"path":274,"stem":275,"children":276,"page":51},"Liquid handling and robots","\u002Fconcepts\u002Foperate\u002F","04.concepts\u002F03.operate",[277,281,285,289,293,297,301,305,309,313,317],{"title":278,"path":279,"stem":280,"device":6},"Liquid Handling","\u002Fconcepts\u002Foperate\u002Fliquid-handling\u002F","04.concepts\u002F03.operate\u002F10.liquid-handling",{"title":282,"path":283,"stem":284,"device":6},"Modules","\u002Fconcepts\u002Foperate\u002Fmodules\u002F","04.concepts\u002F03.operate\u002F20.modules",{"title":286,"path":287,"stem":288,"device":6},"Deck","\u002Fconcepts\u002Foperate\u002Fdeck\u002F","04.concepts\u002F03.operate\u002F30.deck",{"title":290,"path":291,"stem":292,"device":6},"Labware","\u002Fconcepts\u002Foperate\u002Flabware\u002F","04.concepts\u002F03.operate\u002F40.labware",{"title":294,"path":295,"stem":296,"device":6},"Liquids","\u002Fconcepts\u002Foperate\u002Fliquids\u002F","04.concepts\u002F03.operate\u002F50.liquids",{"title":298,"path":299,"stem":300,"device":6},"Liquid Classes","\u002Fconcepts\u002Foperate\u002Fliquid-classes\u002F","04.concepts\u002F03.operate\u002F60.liquid-classes",{"title":302,"path":303,"stem":304,"device":6},"Parameter Sets","\u002Fconcepts\u002Foperate\u002Fparameter-sets\u002F","04.concepts\u002F03.operate\u002F65.parameter-sets",{"title":306,"path":307,"stem":308,"device":6},"Tips and Tip Tracking","\u002Fconcepts\u002Foperate\u002Ftips\u002F","04.concepts\u002F03.operate\u002F70.tips",{"title":310,"path":311,"stem":312,"device":6},"Simulation","\u002Fconcepts\u002Foperate\u002Fsimulation\u002F","04.concepts\u002F03.operate\u002F80.simulation",{"title":314,"path":315,"stem":316,"device":6},"Error Handling","\u002Fconcepts\u002Foperate\u002Ferror-handling\u002F","04.concepts\u002F03.operate\u002F90.error-handling",{"title":318,"path":319,"stem":320,"device":6},"Robot Arms","\u002Fconcepts\u002Foperate\u002Frobot-arms\u002F","04.concepts\u002F03.operate\u002F95.robot-arms",{"title":128,"device":6,"path":322,"stem":323,"children":324,"page":51},"\u002Fconcepts\u002Fautomate\u002F","04.concepts\u002F07.automate",[325,329,333,337,341,345,349,353,357],{"title":326,"path":327,"stem":328,"device":6},"Workflow","\u002Fconcepts\u002Fautomate\u002Fworkflow\u002F","04.concepts\u002F07.automate\u002F10.workflow",{"title":330,"path":331,"stem":332,"device":6},"Phase","\u002Fconcepts\u002Fautomate\u002Fphase\u002F","04.concepts\u002F07.automate\u002F20.phase",{"title":334,"path":335,"stem":336,"device":6},"Step","\u002Fconcepts\u002Fautomate\u002Fstep\u002F","04.concepts\u002F07.automate\u002F30.step",{"title":338,"path":339,"stem":340,"device":6},"Runs","\u002Fconcepts\u002Fautomate\u002Fruns\u002F","04.concepts\u002F07.automate\u002F40.runs",{"title":342,"path":343,"stem":344,"device":6},"Input","\u002Fconcepts\u002Fautomate\u002Finput\u002F","04.concepts\u002F07.automate\u002F50.input",{"title":346,"path":347,"stem":348,"device":6},"Artifacts","\u002Fconcepts\u002Fautomate\u002Fartifacts\u002F","04.concepts\u002F07.automate\u002F60.artifacts",{"title":350,"path":351,"stem":352,"device":6},"Logs","\u002Fconcepts\u002Fautomate\u002Flogs\u002F","04.concepts\u002F07.automate\u002F70.logs",{"title":354,"path":355,"stem":356,"device":6},"Human in the Loop","\u002Fconcepts\u002Fautomate\u002Fhuman-in-the-loop\u002F","04.concepts\u002F07.automate\u002F80.human-in-the-loop",{"title":314,"path":358,"stem":359,"device":6},"\u002Fconcepts\u002Fautomate\u002Ferror-handling\u002F","04.concepts\u002F07.automate\u002F90.error-handling",{"title":181,"device":6,"path":361,"stem":362,"children":363,"page":51},"\u002Fconcepts\u002Fobserve\u002F","04.concepts\u002F08.observe",[364,368,372,376,380],{"title":365,"path":366,"stem":367,"device":6},"Overview","\u002Fconcepts\u002Fobserve\u002Foverview\u002F","04.concepts\u002F08.observe\u002F10.overview",{"title":369,"path":370,"stem":371,"device":6},"Object Storage","\u002Fconcepts\u002Fobserve\u002Fstorage\u002F","04.concepts\u002F08.observe\u002F10.storage",{"title":373,"path":374,"stem":375,"device":6},"Secrets","\u002Fconcepts\u002Fobserve\u002Fsecrets\u002F","04.concepts\u002F08.observe\u002F20.secrets",{"title":377,"path":378,"stem":379,"device":6},"Data sources","\u002Fconcepts\u002Fobserve\u002Fdata-sources\u002F","04.concepts\u002F08.observe\u002F30.data-sources",{"title":381,"path":382,"stem":383,"device":6},"Data lineage","\u002Fconcepts\u002Fobserve\u002Fdata-lineage\u002F","04.concepts\u002F08.observe\u002F40.data-lineage",{"title":385,"device":6,"path":386,"stem":387,"children":388,"page":51},"Devices","\u002Fdevices\u002F","05.devices",[389,392,440,453,469,506,530,563],{"title":365,"path":390,"stem":391,"device":6},"\u002Fdevices\u002Foverview\u002F","05.devices\u002F00.overview",{"title":393,"path":394,"page":51,"children":395},"Heater-shakers","\u002Fdevices\u002Fheater-shakers\u002F",[396,417,427],{"title":397,"path":398,"stem":399,"device":400},"QInstruments BioShake","\u002Fdevices\u002Fqinstruments-bioshake\u002F","05.devices\u002F10.qinstruments-bioshake",{"slug":401,"vendor":402,"category":403,"connector":401,"package":404,"models":405,"communication":412,"vendor_software":6,"os":413},"qinstruments-bioshake","QInstruments","Plate Shakers & Temperature Control","unitelabs-qinstruments-bioshake",[406,407,408,409,410,411],"BioShake 3000 \u002F 3000 elm \u002F 3000 elm DWP","BioShake 3000-T \u002F 3000-T elm","BioShake 5000 elm","BioShake D30 \u002F D30 elm \u002F D30-T \u002F D30-T elm","BioShake Q1 \u002F Q1 (1.2 mm) \u002F Q1 (3.0 mm) \u002F Q2","HeatPlate","serial (RS-232 over USB)",[414,415,416],"windows","linux","macos",{"title":418,"path":419,"stem":420,"device":421},"QInstruments ColdPlate","\u002Fdevices\u002Fqinstruments-coldplate\u002F","05.devices\u002F20.qinstruments-coldplate",{"slug":422,"vendor":402,"category":403,"connector":401,"package":404,"models":423,"communication":412,"vendor_software":6,"os":426},"qinstruments-coldplate",[424,425],"ColdPlate","ColdPlate slim",[414,415,416],{"title":428,"path":429,"stem":430,"device":431},"Inheco Thermoshake","\u002Fdevices\u002Finheco-thermoshake\u002F","05.devices\u002F30.inheco-thermoshake",{"slug":432,"vendor":433,"category":403,"connector":434,"models":435},"inheco-thermoshake","Inheco","inheco-tec-controller",[436,437,438,439],"Thermoshake AC","Thermoshake AC LC","Thermoshake Classic","Thermoshake RM",{"title":441,"path":442,"page":51,"children":443},"Incubation","\u002Fdevices\u002Fincubation\u002F",[444],{"title":445,"path":446,"stem":447,"device":448},"Inheco SCILA","\u002Fdevices\u002Finheco-scila\u002F","05.devices\u002F40.inheco-scila",{"slug":449,"vendor":433,"category":441,"connector":449,"models":450},"inheco-scila",[451,452],"SCILA","SCILA MIX 2-gas mixing device",{"title":454,"path":455,"page":51,"children":456},"Thermal cyclers","\u002Fdevices\u002Fthermal-cyclers\u002F",[457],{"title":458,"path":459,"stem":460,"device":461},"Inheco ODTC","\u002Fdevices\u002Finheco-odtc\u002F","05.devices\u002F50.inheco-odtc",{"slug":462,"vendor":433,"category":463,"connector":462,"models":464},"inheco-odtc","Thermal Cycler",[465,466,467,468],"ODTC 96","ODTC 96XL","ODTC 384","ODTC 384XL",{"title":470,"path":471,"page":51,"children":472},"Readers","\u002Fdevices\u002Freaders\u002F",[473,482,491],{"title":474,"path":475,"stem":476,"device":477},"Agilent Biotek Gen5","\u002Fdevices\u002Fbiotek-gen5\u002F","05.devices\u002F60.biotek-gen5",{"slug":478,"vendor":479,"category":480,"connector":481},"biotek-gen5","Agilent","Readers & Imagers","gen5",{"title":483,"path":484,"stem":485,"device":486},"Biotek Synergy H1","\u002Fdevices\u002Fbiotek-synergy-h1\u002F","05.devices\u002F70.biotek-synergy-h1",{"slug":487,"vendor":479,"category":480,"connector":488,"models":489},"biotek-synergy-h1","agilent-synergy-h1",[490],"BioTek Synergy H1",{"title":492,"path":493,"stem":494,"device":495},"Tecan Infinite 200","\u002Fdevices\u002Ftecan-infinite-200\u002F","05.devices\u002F75.tecan-infinite-200",{"slug":496,"vendor":497,"category":480,"connector":496,"package":498,"models":499,"communication":503,"vendor_software":504,"os":505},"tecan-infinite-200","Tecan","unitelabs-tecan-infinite-200",[500,501,502],"Infinite F200","Infinite M200","Infinite M200 Pro","USB","i-control on Windows only, for its USB driver",[414,415,416],{"title":507,"path":508,"page":51,"children":509},"Tilt & turn","\u002Fdevices\u002Ftilt-and-turn\u002F",[510,520],{"title":511,"path":512,"stem":513,"device":514},"QInstruments TiltStation","\u002Fdevices\u002Fqinstruments-tiltstation\u002F","05.devices\u002F80.qinstruments-tiltstation",{"slug":515,"vendor":402,"category":516,"connector":401,"package":404,"models":517,"communication":412,"vendor_software":6,"os":519},"qinstruments-tiltstation","Plate Tilting",[518],"TiltStation",[414,415,416],{"title":521,"path":522,"stem":523,"device":524},"QInstruments TurnStation","\u002Fdevices\u002Fqinstruments-turnstation\u002F","05.devices\u002F90.qinstruments-turnstation",{"slug":525,"vendor":402,"category":526,"connector":401,"package":404,"models":527,"communication":412,"vendor_software":6,"os":529},"qinstruments-turnstation","Plate Rotating",[528],"TurnStation",[414,415,416],{"title":531,"path":532,"page":51,"children":533},"Liquid Handlers","\u002Fdevices\u002Fliquid-handlers\u002F",[534,548],{"title":535,"path":536,"stem":537,"device":538},"Hamilton Microlab STAR","\u002Fdevices\u002Fhamilton-microlab-star\u002F","05.devices\u002F100.hamilton-microlab-star",{"slug":539,"vendor":540,"category":531,"connector":541,"package":542,"models":543,"communication":503,"vendor_software":6,"os":547},"hamilton-microlab-star","Hamilton","microlab-star","unitelabs-microlab-star",[544,545,546],"Microlab STAR","Microlab STARlet","Microlab STARplus",[414,415],{"title":549,"path":550,"stem":551,"device":552},"Hamilton Microlab VANTAGE","\u002Fdevices\u002Fhamilton-microlab-vantage\u002F","05.devices\u002F110.hamilton-microlab-vantage",{"slug":553,"vendor":540,"category":531,"connector":554,"package":555,"models":556,"communication":561,"vendor_software":6,"os":562},"hamilton-microlab-vantage","microlab-vantage","unitelabs-microlab-vantage",[557,558,559,560],"Microlab VANTAGE 1.3","Microlab VANTAGE 2.0","Microlab STAR V 1.3","Microlab STAR V 2.0","Ethernet (TCP)",[414,415,416],{"title":564,"path":565,"page":51,"children":566},"Robots","\u002Fdevices\u002Frobots\u002F",[567],{"title":568,"path":569,"stem":570,"device":571},"Brooks PreciseFlex 400","\u002Fdevices\u002Fbrooks-preciseflex-400\u002F","05.devices\u002F95.brooks-preciseflex-400",{"slug":572,"vendor":573,"category":564,"connector":572,"package":574,"models":575,"communication":561,"vendor_software":6,"os":579},"brooks-preciseflex-400","Brooks Automation","unitelabs-brooks-preciseflex-400",[576,577,578],"PreciseFlex 400, standard reach, 400 \u002F 750 \u002F 1160 mm Z","PreciseFlex 400, extended reach (XR), 400 \u002F 750 \u002F 1160 mm Z","Either on a PreciseFlex linear rail (1.0, 1.5 or 2.0 m)",[414,415,416],{"title":581,"device":6,"path":582,"stem":583,"children":584,"page":51},"Liquid Handling and Robots","\u002Fliquid-handling-and-robots\u002F","06.liquid-handling-and-robots",[585,588,600,624,627,672,701,718,735,757],{"title":365,"path":586,"stem":587,"device":6},"\u002Fliquid-handling-and-robots\u002Foverview\u002F","06.liquid-handling-and-robots\u002F00.overview",{"title":286,"device":6,"path":589,"stem":590,"children":591,"page":51},"\u002Fliquid-handling-and-robots\u002Fdeck\u002F","06.liquid-handling-and-robots\u002F10.deck",[592,596],{"title":593,"path":594,"stem":595,"device":6},"Building a Deck","\u002Fliquid-handling-and-robots\u002Fdeck\u002Fbuilding-a-deck\u002F","06.liquid-handling-and-robots\u002F10.deck\u002F10.building-a-deck",{"title":597,"path":598,"stem":599,"device":6},"Save\u002FLoad a Deck","\u002Fliquid-handling-and-robots\u002Fdeck\u002Fsave-load-deck\u002F","06.liquid-handling-and-robots\u002F10.deck\u002F20.save-load-deck",{"title":601,"device":6,"path":602,"stem":603,"children":604,"page":51},"Pipetting","\u002Fliquid-handling-and-robots\u002Fpipetting\u002F","06.liquid-handling-and-robots\u002F20.pipetting",[605,609,613,617,620],{"title":606,"path":607,"stem":608,"device":6},"Basic Pipetting","\u002Fliquid-handling-and-robots\u002Fpipetting\u002Fbasic-pipetting\u002F","06.liquid-handling-and-robots\u002F20.pipetting\u002F10.basic-pipetting",{"title":610,"path":611,"stem":612,"device":6},"Advanced Pipetting","\u002Fliquid-handling-and-robots\u002Fpipetting\u002Fadvanced-pipetting\u002F","06.liquid-handling-and-robots\u002F20.pipetting\u002F20.advanced-pipetting",{"title":614,"path":615,"stem":616,"device":6},"Tip Handling","\u002Fliquid-handling-and-robots\u002Fpipetting\u002Ftip-handling\u002F","06.liquid-handling-and-robots\u002F20.pipetting\u002F30.tip-handling",{"title":298,"path":618,"stem":619,"device":6},"\u002Fliquid-handling-and-robots\u002Fpipetting\u002Fliquid-classes\u002F","06.liquid-handling-and-robots\u002F20.pipetting\u002F40.liquid-classes",{"title":621,"path":622,"stem":623,"device":6},"Labware Transport","\u002Fliquid-handling-and-robots\u002Fpipetting\u002Flabware-transport\u002F","06.liquid-handling-and-robots\u002F20.pipetting\u002F50.labware-transport",{"title":310,"path":625,"stem":626,"device":6},"\u002Fliquid-handling-and-robots\u002Fsimulation\u002F","06.liquid-handling-and-robots\u002F30.simulation",{"title":628,"device":6,"path":629,"stem":630,"children":631,"page":51},"Hamilton STAR","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star",[632,636,640,644,648,652,656,660,664,668],{"title":633,"path":634,"stem":635,"device":6},"Positioning & Movement","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fpositioning\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F10.positioning",{"title":637,"path":638,"stem":639,"device":6},"Gripper Module","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fcore-gripper\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F20.core-gripper",{"title":641,"path":642,"stem":643,"device":6},"iSWAP Module","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fiswap\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F30.iswap",{"title":645,"path":646,"stem":647,"device":6},"Using TADM","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Ftadm\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F40.tadm",{"title":649,"path":650,"stem":651,"device":6},"Autoload Module","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fautoload\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F50.autoload",{"title":653,"path":654,"stem":655,"device":6},"Waste Block","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fwaste-block\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F60.waste-block",{"title":657,"path":658,"stem":659,"device":6},"Complex Mixing","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fcomplex-mixing\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F66.complex-mixing",{"title":661,"path":662,"stem":663,"device":6},"Teaching Gripper Paddle Positions","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fgripper-positions\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F70.gripper-positions",{"title":665,"path":666,"stem":667,"device":6},"Training a Custom Deck Position With the iSWAP","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fcustom-deck-position\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F75.custom-deck-position",{"title":669,"path":670,"stem":671,"device":6},"Observable Commands","\u002Fliquid-handling-and-robots\u002Fhamilton-star\u002Fobservable-commands\u002F","06.liquid-handling-and-robots\u002F41.hamilton-star\u002F80.observable-commands",{"title":673,"device":6,"path":674,"stem":675,"children":676,"page":51},"Hamilton Vantage","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage",[677,681,685,689,693,697],{"title":678,"path":679,"stem":680,"device":6},"Waste Configuration","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fwaste-configuration\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F05.waste-configuration",{"title":682,"path":683,"stem":684,"device":6},"Covers and Lights","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fcovers-and-lights\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F10.covers-and-lights",{"title":686,"path":687,"stem":688,"device":6},"IDL Module","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fidl\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F20.idl",{"title":690,"path":691,"stem":692,"device":6},"IPG Module","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fipg\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F30.ipg",{"title":694,"path":695,"stem":696,"device":6},"XL Pipettes","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fxl-channels\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F40.xl-channels",{"title":698,"path":699,"stem":700,"device":6},"CO-RE 96 Head","\u002Fliquid-handling-and-robots\u002Fhamilton-vantage\u002Fcore96-head\u002F","06.liquid-handling-and-robots\u002F42.hamilton-vantage\u002F50.core96-head",{"title":702,"device":6,"path":703,"stem":704,"children":705,"page":51},"Agilent Bravo","\u002Fliquid-handling-and-robots\u002Fagilent-bravo\u002F","06.liquid-handling-and-robots\u002F43.agilent-bravo",[706,709,712,715],{"title":614,"path":707,"stem":708,"device":6},"\u002Fliquid-handling-and-robots\u002Fagilent-bravo\u002Ftip-handling\u002F","06.liquid-handling-and-robots\u002F43.agilent-bravo\u002F10.tip-handling",{"title":606,"path":710,"stem":711,"device":6},"\u002Fliquid-handling-and-robots\u002Fagilent-bravo\u002Fbasic-pipetting\u002F","06.liquid-handling-and-robots\u002F43.agilent-bravo\u002F20.basic-pipetting",{"title":298,"path":713,"stem":714,"device":6},"\u002Fliquid-handling-and-robots\u002Fagilent-bravo\u002Fliquid-classes\u002F","06.liquid-handling-and-robots\u002F43.agilent-bravo\u002F25.liquid-classes",{"title":637,"path":716,"stem":717,"device":6},"\u002Fliquid-handling-and-robots\u002Fagilent-bravo\u002Fusing-the-gripper\u002F","06.liquid-handling-and-robots\u002F43.agilent-bravo\u002F30.using-the-gripper",{"title":719,"device":6,"path":720,"stem":721,"children":722,"page":51},"Tecan FluentControl","\u002Fliquid-handling-and-robots\u002Ftecan-fluentcontrol\u002F","06.liquid-handling-and-robots\u002F44.tecan-fluentcontrol",[723,727,731],{"title":724,"path":725,"stem":726,"device":6},"Connect & Run a Method","\u002Fliquid-handling-and-robots\u002Ftecan-fluentcontrol\u002Fconnect-and-run\u002F","06.liquid-handling-and-robots\u002F44.tecan-fluentcontrol\u002F10.connect-and-run",{"title":728,"path":729,"stem":730,"device":6},"Sending XML Commands","\u002Fliquid-handling-and-robots\u002Ftecan-fluentcontrol\u002Fsending-xml-commands\u002F","06.liquid-handling-and-robots\u002F44.tecan-fluentcontrol\u002F20.sending-xml-commands",{"title":732,"path":733,"stem":734,"device":6},"Full Workflow Example","\u002Fliquid-handling-and-robots\u002Ftecan-fluentcontrol\u002Ffull-workflow-example\u002F","06.liquid-handling-and-robots\u002F44.tecan-fluentcontrol\u002F30.full-workflow-example",{"title":736,"device":6,"path":737,"stem":738,"children":739,"page":51},"Tecan Freedom EVO","\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo",[740,744,747,750,754],{"title":741,"path":742,"stem":743,"device":6},"Deck & Carriers","\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002Fdeck-and-carriers\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo\u002F10.deck-and-carriers",{"title":614,"path":745,"stem":746,"device":6},"\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002Ftip-handling\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo\u002F20.tip-handling",{"title":606,"path":748,"stem":749,"device":6},"\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002Fbasic-pipetting\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo\u002F30.basic-pipetting",{"title":751,"path":752,"stem":753,"device":6},"Using the Gripper (RoMa)","\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002Fusing-the-gripper\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo\u002F40.using-the-gripper",{"title":298,"path":755,"stem":756,"device":6},"\u002Fliquid-handling-and-robots\u002Ftecan-freedom-evo\u002Fliquid-classes\u002F","06.liquid-handling-and-robots\u002F45.tecan-freedom-evo\u002F50.liquid-classes",{"title":568,"device":6,"path":758,"stem":759,"children":760,"page":51},"\u002Fliquid-handling-and-robots\u002Fbrooks-preciseflex-400\u002F","06.liquid-handling-and-robots\u002F46.brooks-preciseflex-400",[761,765,769],{"title":762,"path":763,"stem":764,"device":6},"Teach Positions","\u002Fliquid-handling-and-robots\u002Fbrooks-preciseflex-400\u002Fteach-positions\u002F","06.liquid-handling-and-robots\u002F46.brooks-preciseflex-400\u002F10.teach-positions",{"title":766,"path":767,"stem":768,"device":6},"Move a Plate","\u002Fliquid-handling-and-robots\u002Fbrooks-preciseflex-400\u002Fmove-a-plate\u002F","06.liquid-handling-and-robots\u002F46.brooks-preciseflex-400\u002F20.move-a-plate",{"title":770,"path":771,"stem":772,"device":6},"Recover from a Stop","\u002Fliquid-handling-and-robots\u002Fbrooks-preciseflex-400\u002Frecover-from-a-stop\u002F","06.liquid-handling-and-robots\u002F46.brooks-preciseflex-400\u002F30.recover-from-a-stop",{"title":290,"device":6,"path":774,"stem":775,"children":776,"page":51},"\u002Flabware\u002F","07.labware",[777,780,784,788,792,796,800,804,808,816],{"title":365,"path":778,"stem":779,"device":6},"\u002Flabware\u002Foverview\u002F","07.labware\u002F00.overview",{"title":781,"path":782,"stem":783,"device":6},"Supported Labware","\u002Flabware\u002Fsupported-labware\u002F","07.labware\u002F05.supported-labware",{"title":785,"path":786,"stem":787,"device":6},"Standard Labware","\u002Flabware\u002Fstandard-labware\u002F","07.labware\u002F10.standard-labware",{"title":789,"path":790,"stem":791,"device":6},"Plates","\u002Flabware\u002Fplates\u002F","07.labware\u002F20.plates",{"title":793,"path":794,"stem":795,"device":6},"Tips and Tip Racks","\u002Flabware\u002Ftips-and-racks\u002F","07.labware\u002F30.tips-and-racks",{"title":797,"path":798,"stem":799,"device":6},"Tubes and Tube Racks","\u002Flabware\u002Ftubes-and-tube-racks\u002F","07.labware\u002F40.tubes-and-tube-racks",{"title":801,"path":802,"stem":803,"device":6},"Troughs","\u002Flabware\u002Ftroughs\u002F","07.labware\u002F50.troughs",{"title":805,"path":806,"stem":807,"device":6},"Carriers and Adapters","\u002Flabware\u002Fcarriers-and-adapters\u002F","07.labware\u002F60.carriers-and-adapters",{"title":540,"device":6,"path":809,"stem":810,"children":811,"page":51},"\u002Flabware\u002Fhamilton\u002F","07.labware\u002F70.hamilton",[812],{"title":813,"path":814,"stem":815,"device":6},"Hamilton MFX Carriers","\u002Flabware\u002Fhamilton\u002Fmfx-carriers\u002F","07.labware\u002F70.hamilton\u002F10.mfx-carriers",{"title":817,"path":818,"stem":819,"device":6},"Shapes","\u002Flabware\u002Fshapes\u002F","07.labware\u002F80.shapes",{"title":821,"device":6,"path":822,"stem":823,"children":824},"Connector Development (CDK)","\u002Fconnector-development\u002F","20.connector-development",[825,827,847,880,904,960],{"title":365,"path":822,"stem":826,"device":6},"20.connector-development\u002Findex",{"title":828,"path":829,"stem":830,"children":831,"page":51},"Getting Started","\u002Fconnector-development\u002Fgetting-started\u002F","20.connector-development\u002F10.getting-started",[832,835,839,843],{"title":365,"path":833,"stem":834,"device":6},"\u002Fconnector-development\u002Fgetting-started\u002Foverview\u002F","20.connector-development\u002F10.getting-started\u002F10.overview",{"title":836,"path":837,"stem":838,"device":6},"What's new","\u002Fconnector-development\u002Fgetting-started\u002Fwhats-new\u002F","20.connector-development\u002F10.getting-started\u002F20.whats-new",{"title":840,"path":841,"stem":842,"device":6},"Installation","\u002Fconnector-development\u002Fgetting-started\u002Finstallation\u002F","20.connector-development\u002F10.getting-started\u002F30.installation",{"title":844,"path":845,"stem":846,"device":6},"Contributing","\u002Fconnector-development\u002Fgetting-started\u002Fcontributing\u002F","20.connector-development\u002F10.getting-started\u002F40.contributing",{"title":848,"path":849,"stem":850,"children":851,"page":51},"Tutorial","\u002Fconnector-development\u002Ftutorial\u002F","20.connector-development\u002F20.tutorial",[852,856,860,864,868,872,876],{"title":853,"path":854,"stem":855,"device":6},"Walkthrough","\u002Fconnector-development\u002Ftutorial\u002Fwalkthrough\u002F","20.connector-development\u002F20.tutorial\u002F00.walkthrough",{"title":857,"path":858,"stem":859,"device":6},"SiLA Endpoints","\u002Fconnector-development\u002Ftutorial\u002Fsila-endpoints\u002F","20.connector-development\u002F20.tutorial\u002F15.sila-endpoints",{"title":861,"path":862,"stem":863,"device":6},"Data Endpoints","\u002Fconnector-development\u002Ftutorial\u002Fdata-endpoints\u002F","20.connector-development\u002F20.tutorial\u002F20.data-endpoints",{"title":865,"path":866,"stem":867,"device":6},"Controls","\u002Fconnector-development\u002Ftutorial\u002Fcontrols\u002F","20.connector-development\u002F20.tutorial\u002F30.controls",{"title":869,"path":870,"stem":871,"device":6},"SiLA Data Types","\u002Fconnector-development\u002Ftutorial\u002Fdata-types\u002F","20.connector-development\u002F20.tutorial\u002F40.data-types",{"title":873,"path":874,"stem":875,"device":6},"Hardware Communication","\u002Fconnector-development\u002Ftutorial\u002Fhardware-communication\u002F","20.connector-development\u002F20.tutorial\u002F90.hardware-communication",{"title":877,"path":878,"stem":879,"device":6},"Build a SiLA client","\u002Fconnector-development\u002Ftutorial\u002Fbuild-a-sila-client\u002F","20.connector-development\u002F20.tutorial\u002F95.build-a-sila-client",{"title":206,"device":6,"path":881,"stem":882,"children":883,"page":51},"\u002Fconnector-development\u002Fconcepts\u002F","20.connector-development\u002F30.concepts",[884,888,892,896,900],{"title":885,"path":886,"stem":887,"device":6},"SiLA","\u002Fconnector-development\u002Fconcepts\u002Fsila\u002F","20.connector-development\u002F30.concepts\u002F00.sila",{"title":889,"path":890,"stem":891,"device":6},"Designing Features","\u002Fconnector-development\u002Fconcepts\u002Ffeatures\u002F","20.connector-development\u002F30.concepts\u002F10.features",{"title":893,"path":894,"stem":895,"device":6},"Designing Endpoints","\u002Fconnector-development\u002Fconcepts\u002Fsila-endpoints\u002F","20.connector-development\u002F30.concepts\u002F15.sila-endpoints",{"title":897,"path":898,"stem":899,"device":6},"Designing Data Types","\u002Fconnector-development\u002Fconcepts\u002Fdata-types\u002F","20.connector-development\u002F30.concepts\u002F20.data-types",{"title":901,"path":902,"stem":903,"device":6},"Connector Architecture","\u002Fconnector-development\u002Fconcepts\u002Farchitecture\u002F","20.connector-development\u002F30.concepts\u002F30.architecture",{"title":905,"path":906,"stem":907,"children":908,"page":51},"Guides","\u002Fconnector-development\u002Fguides\u002F","20.connector-development\u002F40.guides",[909,913,917,921,925,929,933,937,941,945,949,952,956],{"title":910,"path":911,"stem":912,"device":6},"Project Structure","\u002Fconnector-development\u002Fguides\u002Fproject-structure\u002F","20.connector-development\u002F40.guides\u002F10.project-structure",{"title":914,"path":915,"stem":916,"device":6},"Configuration","\u002Fconnector-development\u002Fguides\u002Fconfiguration\u002F","20.connector-development\u002F40.guides\u002F20.configuration",{"title":918,"path":919,"stem":920,"device":6},"Logging","\u002Fconnector-development\u002Fguides\u002Flogging\u002F","20.connector-development\u002F40.guides\u002F21.logging",{"title":922,"path":923,"stem":924,"device":6},"Deployment","\u002Fconnector-development\u002Fguides\u002Fdeployment\u002F","20.connector-development\u002F40.guides\u002F30.deployment",{"title":926,"path":927,"stem":928,"device":6},"Security","\u002Fconnector-development\u002Fguides\u002Fsecurity\u002F","20.connector-development\u002F40.guides\u002F40.security",{"title":930,"path":931,"stem":932,"device":6},"Subscriptions","\u002Fconnector-development\u002Fguides\u002Fsubscriptions\u002F","20.connector-development\u002F40.guides\u002F45.subscriptions",{"title":934,"path":935,"stem":936,"device":6},"Execution Modes","\u002Fconnector-development\u002Fguides\u002Fexecution-modes\u002F","20.connector-development\u002F40.guides\u002F46.execution-modes",{"title":938,"path":939,"stem":940,"device":6},"Constraints and Units","\u002Fconnector-development\u002Fguides\u002Fconstraints-and-units\u002F","20.connector-development\u002F40.guides\u002F47.constraints-and-units",{"title":942,"path":943,"stem":944,"device":6},"Device Variants","\u002Fconnector-development\u002Fguides\u002Fdevice-variants\u002F","20.connector-development\u002F40.guides\u002F48.device-variants",{"title":946,"path":947,"stem":948,"device":6},"Repeated Modules","\u002Fconnector-development\u002Fguides\u002Frepeated-modules\u002F","20.connector-development\u002F40.guides\u002F49.repeated-modules",{"title":314,"path":950,"stem":951,"device":6},"\u002Fconnector-development\u002Fguides\u002Ferror-handling\u002F","20.connector-development\u002F40.guides\u002F50.error-handling",{"title":953,"path":954,"stem":955,"device":6},"Serial Troubleshooting","\u002Fconnector-development\u002Fguides\u002Fserial-troubleshooting\u002F","20.connector-development\u002F40.guides\u002F70.serial-troubleshooting",{"title":957,"path":958,"stem":959,"device":6},"Testing","\u002Fconnector-development\u002Fguides\u002Ftesting\u002F","20.connector-development\u002F40.guides\u002F80.testing",{"title":961,"device":6,"path":962,"stem":963,"children":964},"References","\u002Fconnector-development\u002Freference\u002F","20.connector-development\u002F50.reference\u002Findex",[965,966,970,974,978,982],{"title":961,"path":962,"stem":963,"device":6},{"title":967,"path":968,"stem":969,"device":6},"Naming Conventions","\u002Fconnector-development\u002Freference\u002Fnaming-conventions\u002F","20.connector-development\u002F50.reference\u002F10.naming-conventions",{"title":971,"path":972,"stem":973,"device":6},"Docstring Format","\u002Fconnector-development\u002Freference\u002Fdocstrings\u002F","20.connector-development\u002F50.reference\u002F20.docstrings",{"title":975,"path":976,"stem":977,"device":6},"Feature Metadata","\u002Fconnector-development\u002Freference\u002Ffeature-metadata\u002F","20.connector-development\u002F50.reference\u002F30.feature-metadata",{"title":979,"path":980,"stem":981,"device":6},"Review Checklist","\u002Fconnector-development\u002Freference\u002Freview-checklist\u002F","20.connector-development\u002F50.reference\u002F90.review-checklist",{"title":983,"path":984,"stem":985,"device":6},"Python Environment and Project Management","\u002Fconnector-development\u002Freference\u002Fpython-environment-management\u002F","20.connector-development\u002F50.reference\u002F99.python-environment-management",{"id":987,"title":549,"body":988,"description":1711,"device":1712,"extension":1715,"links":6,"meta":1716,"navigation":1468,"path":1717,"seo":1718,"stem":551,"type":1719,"__hash__":1720},"docs\u002F05.devices\u002F110.hamilton-microlab-vantage.md",{"type":989,"value":990,"toc":1700},"minimark",[991,1000,1005,1083,1087,1090,1113,1116,1122,1125,1136,1139,1143,1244,1249,1252,1255,1391,1398,1406,1410,1421,1435,1530,1533,1538,1541,1619,1622,1646,1650,1689,1693,1696],[992,993,994,995,999],"p",{},"This page covers connector installation, configuration, and a first test for the Hamilton Microlab VANTAGE line of liquid handlers. The Hamilton manuals cover instrument installation, maintenance, and safety.\nTo operate the instrument, see the ",[996,997,998],"a",{"href":679},"Hamilton VANTAGE guides",".",[1001,1002,1004],"h2",{"id":1003},"what-you-need","What you need",[1006,1007,1008,1021],"table",{},[1009,1010,1011],"thead",{},[1012,1013,1014,1018],"tr",{},[1015,1016,1017],"th",{},"Item",[1015,1019,1020],{},"Detail",[1022,1023,1024,1033,1046,1055,1063,1073],"tbody",{},[1012,1025,1026,1030],{},[1027,1028,1029],"td",{},"Instrument",[1027,1031,1032],{},"A Microlab VANTAGE \u002F STAR V 1.3 or 2.0, powered on",[1012,1034,1035,1038],{},[1027,1036,1037],{},"Network",[1027,1039,1040,1041,1045],{},"An Ethernet connection between the computer and the Pipettor, and the Pipettor's IP address. Configure the computer's Ethernet adapter with a static IP address on the same subnet as the Pipettor. The Pipettor typically uses ",[1042,1043,1044],"code",{},"192.168.1.20",", but network configuration may vary.",[1012,1047,1048,1050],{},[1027,1049,257],{},[1027,1051,1052,1054],{},[1042,1053,555],{}," connector",[1012,1056,1057,1060],{},[1027,1058,1059],{},"Vendor software",[1027,1061,1062],{},"None needed. The connector communicates with the instrument directly over Ethernet.",[1012,1064,1065,1068],{},[1027,1066,1067],{},"Machine",[1027,1069,1070,1071],{},"Windows, Linux, or macOS running ",[996,1072,24],{"href":25},[1012,1074,1075,1078],{},[1027,1076,1077],{},"Access",[1027,1079,1080,1081],{},"A tenant and the SDK installed. See ",[996,1082,15],{"href":21},[1001,1084,1086],{"id":1085},"models","Models",[992,1088,1089],{},"The Microlab VANTAGE comes in 1.3 m and 2.0 m widths. A VANTAGE instrument can consist of up to three modules:",[1091,1092,1093,1101,1107],"ul",{},[1094,1095,1096,1100],"li",{},[1097,1098,1099],"strong",{},"Pipettor:"," the liquid handler itself, with deck and pipetting tools mounted on one or multiple arms.",[1094,1102,1103,1106],{},[1097,1104,1105],{},"Logistic Cabinet:"," the storage space below the deck. It holds active components such as Entry\u002FExit modules, and space for storage or integration.",[1094,1108,1109,1112],{},[1097,1110,1111],{},"Track Gripper:"," a separate robotic arm at the back of the instrument.",[992,1114,1115],{},"The Microlab STAR V is a VANTAGE system consisting only of a benchtop Pipettor, without the Logistic Cabinet and the Track Gripper.",[992,1117,1118,1119,1121],{},"The ",[1042,1120,555],{}," connector supports the Pipettor module. The Logistic Cabinet and the Track Gripper aren't supported.",[992,1123,1124],{},"Each module has its own IP address. An internal router connects the modules, so only one Ethernet cable leaves the instrument. Use the Pipettor's address in the connector configuration.",[992,1126,1127,1128,1130,1131,1135],{},"VANTAGE Pipettors can differ in their hardware configuration, including the presence and number of pipetting channels, pipetting heads, and transport tools. The ",[1042,1129,555],{}," connector supports all models and reads their configuration from the instrument firmware. It exposes only the modules present on the physical device through the SiLA 2 interface. See ",[996,1132,1134],{"href":1133},"#supported-modules","Supported modules"," for details.",[992,1137,1138],{},"For detailed model and configuration specifications, consult the manufacturer's documentation.",[1001,1140,1142],{"id":1141},"install-and-configure-the-connector","Install and configure the connector",[1144,1145,1146,1163,1241],"ol",{},[1094,1147,1148,1149,1152,1153,1155,1156,1158,1159,1162],{},"In GroundControl, add a device, search for ",[1042,1150,1151],{},"Vantage",", and select the model: ",[1097,1154,557],{}," or ",[1097,1157,558],{}," (",[996,1160,1161],{"href":85},"how to add a connector","). Microlab STAR V instruments use the VANTAGE entries.",[1094,1164,1165,1166],{},"Fill in the device-specific configuration:",[1006,1167,1168,1178],{},[1009,1169,1170],{},[1012,1171,1172,1175],{},[1015,1173,1174],{},"Field",[1015,1176,1177],{},"Value",[1022,1179,1180,1196,1210,1224],{},[1012,1181,1182,1187],{},[1027,1183,1184],{},[1042,1185,1186],{},"host",[1027,1188,1189,1190,1192,1193],{},"The IP address or hostname of the Pipettor. Typically ",[1042,1191,1044],{},". The connector default is ",[1042,1194,1195],{},"192.168.1.1",[1012,1197,1198,1203],{},[1027,1199,1200],{},[1042,1201,1202],{},"port",[1027,1204,1205,1206,1209],{},"The TCP port of the instrument. The default is ",[1042,1207,1208],{},"24652",", which is typical for VANTAGE instruments",[1012,1211,1212,1217],{},[1027,1213,1214],{},[1042,1215,1216],{},"command_timeout",[1027,1218,1219,1220,1223],{},"Seconds to wait for the XL module initialization to finish. The default is ",[1042,1221,1222],{},"60",". All other commands use a fixed timeout of 5 minutes, which this setting doesn't change",[1012,1225,1226,1231],{},[1027,1227,1228],{},[1042,1229,1230],{},"has_core96",[1027,1232,1233,1234,1237,1238],{},"Optional override. The CO-RE 96 head is detected automatically at startup. Set to ",[1042,1235,1236],{},"true"," to register the Core 96 Service when detection fails. The default is ",[1042,1239,1240],{},"false",[1094,1242,1243],{},"Start the connector. It opens a connection to the instrument and reads which modules are installed. GroundControl then lists the services for those modules.",[992,1245,1246,1247,999],{},"To run the connector on a machine without GroundControl, see ",[996,1248,100],{"href":101},[1001,1250,1134],{"id":1251},"supported-modules",[992,1253,1254],{},"The UniteLabs VANTAGE connector supports the following modules. It detects which modules are present on the device and registers a service for each one.",[1006,1256,1257,1272],{},[1009,1258,1259],{},[1012,1260,1261,1263,1266,1269],{},[1015,1262,261],{},[1015,1264,1265],{},"Connector service",[1015,1267,1268],{},"Registered when",[1015,1270,1271],{},"Since connector version",[1022,1273,1274,1290,1305,1321,1336,1351,1367],{},[1012,1275,1276,1279,1282,1285],{},[1027,1277,1278],{},"Instrument core",[1027,1280,1281],{},"Device Service, Gateway Service, ARM Service",[1027,1283,1284],{},"Always",[1027,1286,1287],{},[1042,1288,1289],{},"0.1.0",[1012,1291,1292,1295,1298,1301],{},[1027,1293,1294],{},"1000 µL channels",[1027,1296,1297],{},"PIP Service",[1027,1299,1300],{},"An arm has pipetting channels",[1027,1302,1303],{},[1042,1304,1289],{},[1012,1306,1307,1310,1313,1316],{},[1027,1308,1309],{},"5 mL channels (XL)",[1027,1311,1312],{},"XL Service",[1027,1314,1315],{},"An arm has XL channels",[1027,1317,1318],{},[1042,1319,1320],{},"0.3.0",[1012,1322,1323,1326,1329,1332],{},[1027,1324,1325],{},"Internal Plate Gripper (IPG)",[1027,1327,1328],{},"IPG Service",[1027,1330,1331],{},"An arm has an internal plate gripper",[1027,1333,1334],{},[1042,1335,1289],{},[1012,1337,1338,1341,1344,1347],{},[1027,1339,1340],{},"ID loader (IDL)",[1027,1342,1343],{},"IDL Service",[1027,1345,1346],{},"The instrument has an ID loader",[1027,1348,1349],{},[1042,1350,1289],{},[1012,1352,1353,1356,1359,1362],{},[1027,1354,1355],{},"Quad CO-RE Gripper (QCG)",[1027,1357,1358],{},"Core Gripper Service",[1027,1360,1361],{},"An arm has pipetting channels. The gripper needs at least 4 adjacent 1000 µL channels",[1027,1363,1364],{},[1042,1365,1366],{},"0.7.0",[1012,1368,1369,1372,1375,1387],{},[1027,1370,1371],{},"CO-RE 96 Multi-Probe Head",[1027,1373,1374],{},"Core 96 Service",[1027,1376,1377,1378,1381,1382,1384,1385],{},"The arm reports a CO-RE 96 head (",[1042,1379,1380],{},"H0","), or ",[1042,1383,1230],{}," is ",[1042,1386,1236],{},[1027,1388,1389],{},[1042,1390,1366],{},[992,1392,1393,1394,1397],{},"Before connector version ",[1042,1395,1396],{},"0.5.0",", the connector registered all services regardless of the installed modules.",[1399,1400,1403],"callout",{"color":1401,"icon":1402},"error","i-heroicons-shield-exclamation",[992,1404,1405],{},"The Microlab VANTAGE is a complex instrument, and direct commands can cause hardware collisions. Always use the Liquid Handling SDK for operations that move the instrument.",[1001,1407,1409],{"id":1408},"first-successful-test","First successful test",[992,1411,1412,1413,1416,1417,1420],{},"The connector is a SiLA server and accepts direct calls. ",[996,1414,1415],{"href":33},"Connect the SDK to the Platform",", then run this code in a notebook or an ",[1042,1418,1419],{},"async"," script. It reads the firmware version and doesn't move the instrument.",[992,1422,1423,1424,1427,1428,1430,1431,1434],{},"Replace ",[1042,1425,1426],{},"Hamilton Microlab Vantage"," with the service name shown in GroundControl. ",[1042,1429,1426],{}," is the default service name of this connector. After a rename, the lookup returns ",[1042,1432,1433],{},"None"," and the next line fails.",[1436,1437,1442],"pre",{"className":1438,"code":1439,"language":1440,"meta":1441,"style":1441},"language-python shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-default","from unitelabs.sdk import AsyncApiClient\n\nclient = AsyncApiClient()\nvantage = await client.get_service_by_name(name=\"Hamilton Microlab Vantage\")\n\nprint(await vantage.gateway_service.get_firmware_version())\n","python","",[1042,1443,1444,1463,1470,1482,1509,1514],{"__ignoreMap":1441},[1445,1446,1449,1453,1457,1460],"span",{"class":1447,"line":1448},"line",1,[1445,1450,1452],{"class":1451},"sxkbv","from",[1445,1454,1456],{"class":1455},"sc-9e"," unitelabs.sdk ",[1445,1458,1459],{"class":1451},"import",[1445,1461,1462],{"class":1455}," AsyncApiClient\n",[1445,1464,1466],{"class":1447,"line":1465},2,[1445,1467,1469],{"emptyLinePlaceholder":1468},true,"\n",[1445,1471,1473,1476,1479],{"class":1447,"line":1472},3,[1445,1474,1475],{"class":1455},"client ",[1445,1477,1478],{"class":1451},"=",[1445,1480,1481],{"class":1455}," AsyncApiClient()\n",[1445,1483,1485,1488,1490,1493,1496,1500,1502,1506],{"class":1447,"line":1484},4,[1445,1486,1487],{"class":1455},"vantage ",[1445,1489,1478],{"class":1451},[1445,1491,1492],{"class":1451}," await",[1445,1494,1495],{"class":1455}," client.get_service_by_name(",[1445,1497,1499],{"class":1498},"sNqAu","name",[1445,1501,1478],{"class":1451},[1445,1503,1505],{"class":1504},"sCx38","\"Hamilton Microlab Vantage\"",[1445,1507,1508],{"class":1455},")\n",[1445,1510,1512],{"class":1447,"line":1511},5,[1445,1513,1469],{"emptyLinePlaceholder":1468},[1445,1515,1517,1521,1524,1527],{"class":1447,"line":1516},6,[1445,1518,1520],{"class":1519},"sOiAX","print",[1445,1522,1523],{"class":1455},"(",[1445,1525,1526],{"class":1451},"await",[1445,1528,1529],{"class":1455}," vantage.gateway_service.get_firmware_version())\n",[992,1531,1532],{},"Expected output: the firmware version string of the instrument.",[1534,1535,1537],"h3",{"id":1536},"run-the-same-test-with-the-liquid-handling-sdk","Run the same test with the Liquid Handling SDK",[992,1539,1540],{},"Direct connector calls are enough to check a connection. For everything else, use the Liquid Handling SDK. It models the deck, the channels, and the labware, and validates parameters before anything moves. This code reads the firmware version and the instrument configuration through it. As in the previous example, use the service name shown in GroundControl.",[1436,1542,1544],{"className":1438,"code":1543,"language":1440,"meta":1441,"style":1441},"from unitelabs.liquid_handling.hamilton import Vantage\n\nvantage = Vantage(name=\"Hamilton Microlab Vantage\")\n\nprint(await vantage.get_firmware_version())\n\nconfiguration = await vantage.get_configuration()\nprint(configuration)\n",[1042,1545,1546,1558,1562,1579,1583,1594,1598,1611],{"__ignoreMap":1441},[1445,1547,1548,1550,1553,1555],{"class":1447,"line":1448},[1445,1549,1452],{"class":1451},[1445,1551,1552],{"class":1455}," unitelabs.liquid_handling.hamilton ",[1445,1554,1459],{"class":1451},[1445,1556,1557],{"class":1455}," Vantage\n",[1445,1559,1560],{"class":1447,"line":1465},[1445,1561,1469],{"emptyLinePlaceholder":1468},[1445,1563,1564,1566,1568,1571,1573,1575,1577],{"class":1447,"line":1472},[1445,1565,1487],{"class":1455},[1445,1567,1478],{"class":1451},[1445,1569,1570],{"class":1455}," Vantage(",[1445,1572,1499],{"class":1498},[1445,1574,1478],{"class":1451},[1445,1576,1505],{"class":1504},[1445,1578,1508],{"class":1455},[1445,1580,1581],{"class":1447,"line":1484},[1445,1582,1469],{"emptyLinePlaceholder":1468},[1445,1584,1585,1587,1589,1591],{"class":1447,"line":1511},[1445,1586,1520],{"class":1519},[1445,1588,1523],{"class":1455},[1445,1590,1526],{"class":1451},[1445,1592,1593],{"class":1455}," vantage.get_firmware_version())\n",[1445,1595,1596],{"class":1447,"line":1516},[1445,1597,1469],{"emptyLinePlaceholder":1468},[1445,1599,1601,1604,1606,1608],{"class":1447,"line":1600},7,[1445,1602,1603],{"class":1455},"configuration ",[1445,1605,1478],{"class":1451},[1445,1607,1492],{"class":1451},[1445,1609,1610],{"class":1455}," vantage.get_configuration()\n",[1445,1612,1614,1616],{"class":1447,"line":1613},8,[1445,1615,1520],{"class":1519},[1445,1617,1618],{"class":1455},"(configuration)\n",[992,1620,1621],{},"Expected output: the firmware version string of the instrument, followed by the instrument configuration the SDK reads from the firmware.",[1399,1623,1626,1629],{"color":1624,"icon":1625},"info","i-heroicons-information-circle",[992,1627,1628],{},"Next steps with the Liquid Handling SDK:",[1091,1630,1631,1636,1641],{},[1094,1632,1633],{},[996,1634,1635],{"href":594},"Building a deck",[1094,1637,1638],{},[996,1639,1640],{"href":679},"Waste configuration",[1094,1642,1643],{},[996,1644,1645],{"href":607},"Basic pipetting",[1001,1647,1649],{"id":1648},"known-issues","Known issues",[1091,1651,1652,1668,1679],{},[1094,1653,1654,1657,1658,1660,1661,1663,1664,1667],{},[1097,1655,1656],{},"Connector stops at startup."," If the connection can't be opened at all, check ",[1042,1659,1186],{},", ",[1042,1662,1202],{},", and the network connection to the instrument. If the connection opens but the firmware version query fails, for example with a timeout, the connector stops with ",[1042,1665,1666],{},"Device did not respond to firmware version query"," followed by the reason.",[1094,1669,1670,1673,1674,1676,1677,999],{},[1097,1671,1672],{},"A service is missing."," At startup, the connector queries the instrument for its arm components and system modules. If a query fails, the connector doesn't stop and doesn't report an error. It writes a debug message to the log, and the services that depend on that query don't appear. A failed arm query removes the PIP, Core Gripper, IPG, XL, and Core 96 Services. A failed system modules query removes the IDL Service. To fix this error, restart the connector and check the network connection to the instrument. If the Core 96 Service is still missing, set ",[1042,1675,1230],{}," to ",[1042,1678,1236],{},[1094,1680,1681,1684,1685,1688],{},[1097,1682,1683],{},"Firmware timeout of 5 minutes."," The Hamilton VANTAGE has a strict limit of 5 minutes (300 seconds) per command, and a command that runs longer is ended by the instrument. The connector can't change this limit, and a longer connector timeout doesn't extend it. Split long running actions, such as ",[996,1686,1687],{"href":658},"complex mixing",", into several commands.",[1001,1690,1692],{"id":1691},"vendor-documentation","Vendor documentation",[992,1694,1695],{},"The Hamilton manuals shipped with the instrument cover operating limits, deck layout, maintenance, and safety.",[1697,1698,1699],"style",{},"html pre.shiki code .sxkbv, html code.shiki .sxkbv{--shiki-light:#A0111F;--shiki-default:#A0111F;--shiki-dark:#FF7B72}html pre.shiki code .sc-9e, html code.shiki .sc-9e{--shiki-light:#0E1116;--shiki-default:#0E1116;--shiki-dark:#E6EDF3}html pre.shiki code .sNqAu, html code.shiki .sNqAu{--shiki-light:#702C00;--shiki-default:#702C00;--shiki-dark:#FFA657}html pre.shiki code .sCx38, html code.shiki .sCx38{--shiki-light:#032563;--shiki-default:#032563;--shiki-dark:#A5D6FF}html pre.shiki code .sOiAX, html code.shiki .sOiAX{--shiki-light:#023B95;--shiki-default:#023B95;--shiki-dark:#79C0FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":1441,"searchDepth":1448,"depth":1465,"links":1701},[1702,1703,1704,1705,1706,1709,1710],{"id":1003,"depth":1465,"text":1004},{"id":1085,"depth":1465,"text":1086},{"id":1141,"depth":1465,"text":1142},{"id":1251,"depth":1465,"text":1134},{"id":1408,"depth":1465,"text":1409,"children":1707},[1708],{"id":1536,"depth":1472,"text":1537},{"id":1648,"depth":1465,"text":1649},{"id":1691,"depth":1465,"text":1692},"Get a Hamilton Microlab VANTAGE connected through GroundControl and confirm the connection from Python without moving the instrument.",{"slug":553,"vendor":540,"category":531,"connector":554,"package":555,"models":1713,"communication":561,"vendor_software":6,"os":1714},[557,558,559,560],[414,415,416],"md",{},"\u002Fdevices\u002Fhamilton-microlab-vantage",{"title":549,"description":1711},"reference","iGap3aGFqx_deNdJQwR6mQbi2Bx8FsdLhtZ_drzLuSQ",[1722,1724],{"title":535,"description":1723,"path":536},"Get a Hamilton Microlab STAR connected through GroundControl and confirm the connection from Python without moving the instrument.",{"title":568,"description":1725,"path":569},"Get a Brooks PreciseFlex 400 robot arm connected through GroundControl, with the connector installing its own controller software, and confirm the connection from Python.",1793107851355]