UniteLabs
Concepts

SiLA

How UniteLabs uses the SiLA 2 standard for instrument interoperability.

SiLA (Standardization in Laboratory Automation) is an standardized communication protocol designed specifically for laboratory instruments. UniteLabs uses SiLA 2 — the current version — as the foundation for how connectors expose instrument capabilities to the platform.

What SiLA 2 is

SiLA 2 defines a standard way for lab software to describe and call instrument functions. It uses gRPC (a high-performance remote procedure call framework) with Protocol Buffers as the serialization format. What this means in practice:

  • Every instrument capability is described in a typed, machine-readable schema — no ambiguity about what parameters a command expects or what type a property returns
  • Communication is binary and efficient, well-suited for real-time lab automation
  • The protocol is open and vendor-neutral, with a growing ecosystem of compatible instruments and software

Why it matters to you

Because UniteLabs connectors are built using SiLA 2, every connector follows the same structural model — Features containing Commands and Properties: regardless of the underlying instrument. Once you know how to work with one connector, you know how to work with all of them.

It also means that SiLA 2-compliant instruments from third-party vendors can be connected to UniteLabs with minimal effort. If an instrument vendor ships a SiLA 2 server, it can be discovered and used via GroundControl directly.

Cloud-connectivity was introduced with SiLA 2 1.1. To connect a local SiLA 2 server to the UniteLabs platform, cloud connectivity is required. If a SiLA 2 server doesn't support this version yet, UniteLabs provides the 'Edge Gateway' connector, which can relay the connection to the platform and make it SILA 2 1.1. compatible!

What you don't need to worry about

You don't need to know anything about gRPC, Protocol Buffers, or SiLA feature definition files to use UniteLabs connectors. GroundControl, the UniteLabs SDK, and the REST API all handle the protocol layer for you.

If you are building a connector with the CDK, the framework generates all the protocol-level boilerplate from your Python code automatically — you write plain Python methods and decorators, not XML or Protobuf schemas. See the CDK documentation for details.

SiLA 2 and network ports

A connector's SiLA 2 gRPC server uses a local hostname and port, typically within the 50000-60000 range, on the edge machine and broadcasts its capability via mDNS for auto-discovery. These settings are only used for local communication, e.g. by GroundControl — these do not need to be exposed to the internet or opened in external firewalls.

To establish a connection to the platform, a server-initiated communication is used that requires the client endpoint, the platform API url, and the port it is served on. The default port is 443. See Network requirements for the full picture, especially if you're working in a corporate network and need to use encrypted communication with certificates.