Linux Automation Test Automation Controller: Ein all-in-one labgrid Exporter
Unsere Tochter Linux Automation GmbH stellt mit dem LXA TAC (Linux Automation Test Automation Controller) einen all-in-one labgrid exporter vor. Das LXA TAC bietet die üblichen Schnittstellen, um ein oder mehrere Embedded Geräte (DUTs, Devices under Test) mit labgrid interaktiv oder automatisiert steuern zu können.
Geräte mit Embedded Linux sind in dafür konzipiert mit der realen Welt zu interagieren. Daher muss in der Entwicklung von diesen Geräten auch mit physischen Geräten und deren Schnittstellen gearbeitet werden. Der LXA TAC ist ein all-in-one Gerät, dass es erlaubt die für die Embedded-Entwicklung notwendigen Schnittstellen fernzusteuern. Das LXA TAC ist dabei für den Einsatz mit labgrid konzipiert. labgrid erlaubt es Geräte mit Embedded Linux interaktiv oder voll automatisch fernzusteuern.
Funktionen des LXA TAC
Das LXA TAC dient als Schnittstelle zwischen der IT-Infrastruktur auf der einen Seite, sowie der realen Welt des DUT auf der anderen Seite:
Das LXA TAC wird über Ethernet gesteuert und versorgt. Außer Ethernet ist somit nur noch eine Spannungsversorgung für das DUT notwendig. Dies macht das LXA TAC zum perfekten labgrid Exporter für den Schreibtisch.
Das LXA TAC bietet die folgenden Funktionen zum Fernsteuern des DUT:
- Schalten der Spannungsversorgung des DUT inklusive einer Strom- und Spannungsmessung (bis 48 V / 5 A).
- 3.3 V UART zum Verbinden mit der Konsole des DUT. (Pegelwandler auf RS-232 oder 2.5 V / 1.8 V UART sind separat erhältlich.)
- Zwei potentialfreie Ausgänge zum Umschalten von Boot-Modi oder zum Simulieren von Tastendrücken.
- Drei USB-Ports für Erweiterungen, wie den USB-SD-Mux, Webcams oder Logic Analyzer.
- CAN-Schnittstelle für CAN 2.0 oder CAN-FD Kommunikation mit dem DUT.
- Separater Ethernet-Port für das DUT.
- USB-Device Anschluss für die Implementierung von USB-Gadgets zum DUT.
Noch mehr Details zum Gerät können im Datenblatt nachgelesen werden.
Vorteile des LXA TAC
Das LXA TAC ist aus den Erfahrungen des Betriebs eines heterogenen Embedded Labs mit über 120 DUTs bei Pengutronix entstanden. Das Gerät hat daher gegenüber einem einfachen, behelfsmäßig aufgebauten Exporter viele Vorteile. Alle aufzuzählen würde hier den Rahmen sprengen; hier daher ein paar Beispiele:
- Die Spannungsversorgung der UART, sowie die UART-Logik-Signale, lassen sich komplett deaktivieren. So lassen sich Leckströme, die einen Power-Cycle bei besonders stromsparenden DUTs verhindern können, unterbinden.
- Die potentialfreien Ausgänge beinhalten eine Spannungsmessung. So kann auch ohne direkten Zugriff auf das Gerät eine Rückmeldung über den Schaltvorgang bekommen werden.
- Die spannungsversorgung der USB-Ports kann einzeln geschaltet werden. Somit können USB-Geräte, die sich daneben benehmen, aus der Ferne neu gestartet werden.
- Das Linux-System auf dem LXA TAC enthält Scripte, die das Aufsetzen von USB-Gadgets einfach macht.
Darüber hinaus bietet das LXA TAC mit dem IOBus eine robuste Erweiterungsschnittstelle, über die zusätzliche IOs oder Echtzeitmessgeräte angeschlossen werden können.
Als Benutzerschnittstelle stehen neben den LEDs als intuitive Statusanzeige, ein Display mit Tasten, sowie ein modernes Web-Interface zur Verfügung.
Als kommerziell verfügbares Gerät wurde das LXA TAC natürlich auf Grundlage der einschlägigen EMV-Normen geprüft.
Zur einfachen Integration sind auf dem LXA TAC Runner für Github Actions und Gitlab Workflows verfügbar. Somit lässt sich das LXA TAC auch direkt in bestehende Workflows einbinden. In dem folgenden Video zeigt Leonard, wie Continuous Testing eines BSP mit Gitlab Workflows und dem LXA TAC aufgesetzt werden kann:
Software
Die Software des LXA TAC folgt unserer Open Source Philosophie: Alle Softwarekomponenten sind Open Source! Durch den Einsatz von Yocto und dessen Layering-Funktion ist es möglich, basierend auf meta-lxatac, eigene BSPs zu erstellen und trotzdem von den regelmäßigen Updates der Linux Automation GmbH zu profitieren.
Auf dem LXA TAC selbst läuft natürlich Linux. Ein Login per SSH auf dem Gerät gehört genau so zu den Use-Cases, wie das Starten eines Containers mit einer normalen Linux-Distribution.
Weiterführende Links
labgrid geht auf Live-Tour!
labgrid erlaubt es uns, Embedded-Linux-Geräte aus der Ferne zu steuern und Integrationstests von Embedded-Linux auf echter Hardware zu implementieren. Pengutronix und andere Firmen setzen daher schon einige Zeit erfolgreich auf labgrid als Mittelpunkt ihrer Embedded-Software-Entwicklungsinfrastruktur.
Linux Automation's Optick: A Glass-to-Glass Latency Measurement Tool
New Linux Automation GmbH products are often inspired by needs we observe in our day-to-day development work at Pengutronix. Today's new product, the Optick, was inspired by our graphics team, that works with different kinds of video pipelines and optimizes them based on customer demands. One such demand is minimizing the latency of camera to display video pipelines.
Pengutronix at Embedded World 2022
Welcome to our booth at the Embedded World 2022 in Nürnberg!
Did you know? Initializing CAN interfaces with systemd-networkd
End of January systemd 250 was added to Debian bullseye backports. With a lots of new features and fixes now comes the possibility to set the timing of CAN bus interfaces with systemd-networkd. In this blogpost I will take a look at why this helps us maintain our embedded Linux labs.
labgrid Tutorials
This week, we started our series of YouTube labgrid tutorials. In the next few weeks we will publish more video tutorials showing you labgrid's features and giving you handy tips and tricks.
Lab-Automatisierung mit LXA IOBus
Etwas über dreieinhalb Jahre sind seit unserer letzten Produktankündigung vergangen, seitdem haben wir viele Normen gelesen, Dinge über Webshops und den Alltag der Elektronikfertigung gelernt und still und heimlich an neuen Produkten getüftelt. Heute möchte ich das LXA IOBus-System vorstellen, bestehend aus einem CAN-basierten Kommunikationsprotokoll, einem zugehörigen Gateway-Server und einer neuen Klasse an Linux Automation GmbH Produkten. Zwei dieser neuen Produkte sind der Ethernet-Mux und das 4DO-3DI-3AI Input/Output-Board.
Showcase: Continuous Testing
In den Linux-Kernel wandern jedes Jahr etwa 70.000 Patche, viele davon sind Bugfixes. Das Gleiche gilt für die meisten anderen Open-Source-Projekte, die Teil eines modernen Linux-Systems sind. Um von der Arbeit in der Community profitieren zu können, bleibt als sinnvolle Strategie, ständig auf dem neusten Softwarestand aufzusetzen und das System aktuell zu halten. Natürlich können bei dieser Menge an Änderungen auch neue Fehler hinzukommen oder Inkompatibilitäten entstehen.
Showcase: Remote Working
Zur Projektarbeit mit unseren Kunden gehört die Arbeit mit Prototypen-Hardware. Da wir grundsätzlich parallel für mehrere Kunden an vielen verschieden Projekten arbeiten, bedeutet das eine Flut von Prototypen auf den Schreibtischen unserer Entwickler. Spätestens wenn im Team an einem Prototypen gearbeitet werden soll oder längere Zeit nicht aktiv an einem Projekt gearbeitet wird, muss die Hardware regelmäßig umgezogen und am neuen Arbeitsplatz verkabelt werden. Erschwerend kommt hinzu, dass die Entfernung zwischen unseren Entwickler-Schreibtischen durch die aktuelle Homeoffice-Situation, nicht wie gewohnt in Metern, sondern in Kilometern gemessen wird.
Pengutronix at FOSDEM 2021
"FOSDEM is a free event for software developers to meet, share ideas and collaborate. Every year, thousands of developers of free and open source software from all over the world gather at the event in Brussels. In 2021, they will gather online." -- FOSDEM