labgrid
In development, testing and bootstrapping of embedded systems, reproducible setups, automation and efficient distributed development workflows are fundamental to quality and speed.
With labgrid, Pengutronix has developed an open-source solution that meets exactly these requirements: a Python library for controlling embedded hardware, developed and maintained continuously together with an active community.
What is labgrid?
Python library
Abstraction of the devices and interfaces needed for interacting with embedded systems. From switchable power supply and Linux shell access to camera control or sensor data monitoring.
Remote control layer
Boards connected to different host machines (exporters) can be managed centrally (coordinator) and controlled from remote development or test machines (clients) via the command line or scripting.
Pytest integration
labgrid is not a new test framework itself, but complements (as a plugin) the established Python test framework pytest and thus allows hardware-related tests to be written and run with the means of modern software testing.
The central idea behind labgrid is a uniform abstraction layer for hardware control: it enables automated software installations, test procedures and development workflows without getting lost in device-specific details.
Remote architecture
An exporter provides the hardware connected to it as a resource, the coordinator manages access to it centrally, and clients access the resources grouped in this way via the command line or scripting.
What does Pengutronix offer around labgrid?
Pengutronix lab infrastructure
Pengutronix integrates customer hardware into its own distributed remote lab infrastructure.
This is how we ensure collaborative and efficient development, debugging and testing.
Test integration
As part of our maintenance concept, we offer to set up a labgrid-based test suite for the customer board. It can be integrated into our CI to ensure operating system functionality.
At the same time, it can be used by customers and extended for application-level tests.
Support & Development
From support for new hardware to the implementation of new protocols or features.
Professional support for all questions around using labgrid.
Matching hardware from Linux Automation
Our spin-off Linux Automation GmbH develops hardware tailored directly to labgrid. This makes it possible to set up a remote lab without having to develop the control hardware yourself.
Supporting labgrid
Sponsoring packages
labgrid is and remains fully open source. New features often emerge from customer projects or from the community. Ongoing maintenance and upkeep, on the other hand, is harder to fund. With a sponsoring package you support exactly this work.