In diesem Beitrag erklären wir dir, wie du vom PC aus über ein sicheres Shell-Terminal auf das Coral Dev Board Mini zugreifen kannst. Die nötigen Vorbereitungen sind zwar etwas lästig, aber unkompliziert und nur einmal zu erledigen.
|
Host-PC vorbereiten
Grundsätzlich steuerst du das Dev Board Mini von einem anderen Rechner aus, dem sogenannten Host. Als Betriebssystem auf dem Host kommt Windows ab Version 10 und Linux infrage. Mit MacOS geht es prinzipiell auch, aber nur mit viel Aufwand. Beginnend mit MacOS Catalina lässt sich nämlich keine SSH-Verbindung über USB herstellen. Der Artikel fokussiert sich daher auf Windows, da die weit überwiegende Mehrheit der Anwender das Microsoft-Betriebssystem nutzt. Die Vorgehensweise bei Linux ist weitgehend gleich. Über wichtige Unterschiede informiert der Kasten „Board-Zugriff mit Linux“.
Python auf dem Host installieren
Du benötigst auf dem Host Python 3, da zentrale Tools darauf basieren. Python lässt sich ganz einfach installieren. Dazu gehst du auf die Website python.org. Unter „Downloads“ lädst du die aktuelle Version von Python 3 für Windows herunter. Dann führst du die Installationsdatei aus. Setze ein Häkchen bei „Add Python to PATH“ und klicke dann auf „Install Now“. Nach Abschluss der Installation klickst du noch auf „Disable path length limit“ – fertig.
Python stellt die Grundlage für den Zugriff auf das Dev Board Mini dar und lässt sich leicht installieren.
Git Bash als Terminal einrichten
Das Git Bash Terminal stellt unter Windows einen bequemen Weg zur Verfügung, auf das Coral-Board zuzugreifen. Es ist in Git für Windows enthalten. Das wiederum installiert du jetzt. Dazu gehst du zu der Seite gitforwindows.org. Lade die Software herunter und installiere sie wie gewohnt. Übernimm dabei die vorgeschlagenen Standard-Optionen.
Seit Git für Windows 2.28 kann das Git Bash Terminal nicht mehr direkt auf Python zugreifen. Deshalb ist ein kleiner Extra-Schritt notwendig. Öffne nach der Installation von Git Bash das Terminal und führe die folgenden beiden Befehle aus, um den Zugriff auf Python zu ermöglichen:
echo "alias python3='winpty python3.exe'" >> ~/.bash_profile
source ~/.bash_profile
Systemumgebungsvariable anpassen
Python ist bereits in der Umgebungsvariable für das Konto eingetragen. Um nicht immer mit vollständigen Pfad-Angaben arbeiten zu müssen, fügst du es noch in die systemweite Umgebungsvariable ein. Am schnellsten gelangt man zum Ziel, indem man im Suchfeld in der Taskleiste als Suchbegriff „Umgebungsvariable“ eingibt. Klicke auf „Systemumgebungsvariablen bearbeiten“ und im neuen Fenster dann auf „Umgebungsvariablen…“. Klicke im unteren Bereich auf „Path“ und dann auf „Neu“ und trage den Pfad zur Datei „python3.exe“ ein. Den ermittelst du in der Git Bash mit dem Befehl:
which python3
Mendel Development Tool installieren
Mendel ist der Name des Linux-Betriebssystems, das auf dem Dev Board Mini vorinstalliert ist. Dabei handelt es sich wie etwa auch bei Ubuntu um ein Debian-Derivat. Somit lassen sich Debian-Pakete problemlos auf dem Board installieren. Um vom Host-PC auf Mendel zuzugreifen, dient das Mendel Development Tool (MDT).
MDT ist ein Kommandozeilenwerkzeug für den Host-Computer, das bei der Interaktion mit dem Dev Board Mini unterstützt. Um MDT zu installieren, gibst du in der Git Bash den folgenden Befehl ein:
python3 -m pip install --user mendel-development-tool
Windows-Benutzer müssen wieder eine Extra-Schleife drehen. Sie benötigen wie für Python einen Alias, um MDT ausführen zu können. Den Alias richtest du so ein:
echo "alias mdt='winpty mdt'" >> ~/.bash_profile
source ~/.bash_profile
Trage abschließend den Pfad zu MDT ebenfalls wie oben beschrieben in die Systemumgebungsvariable ein. Um den Pfad zu ermitteln, suche im Windows Explorer nach „mdt“.
Das Mendel Development Tool ist tief im Dateisystem versteckt. Eine Suche im Windows Explorer bringt es an den Tag.
Dev Board Mini anschließen
Jetzt kommt der große Moment: Verbinde das Netzteil mit dem USB-Netzstecker des Boards. Das ist der linke der beiden USB-C-Anschlüsse auf dem Dev Board Mini. Schließe danach das USB-Datenkabel an den rechten USB-Anschluss auf dem Board an und verbinde das andere Ende mit dem Host-PC. Das Dev Board fährt nun automatisch hoch und die LED auf dem Board leuchtet grün. Nach etwa 30 Sekunden ist das Board vollständig hochgefahren und einsatzbereit.
Beachte: Du benötigst bei Rechnern ohne USB-C-Port ein Kabel USB-A auf USB-C. Mit einem reinen USB-Ladekabel funktioniert es übrigens nicht, es muss sich um ein USB-Kabel handeln, das eine Datenübertragung ermöglicht.
Zum Hochfahren des Boards schließt du die Stromversorgung und das Datenkabel an. Ohne Datenkabel dient der Power-Button als Einschalt-Knopf.
Über MDT auf die Shell des Boards zugreifen
Jetzt greifst du zum ersten Mal auf das Dev Board zu. MDT stellt dafür über USB eine SSH-Verbindung her. Um zu prüfen, ob MDT das Dev Board Mini ordnungsgemäß erkennt, öffnest du auf dem Host-Rechner die Git Bash und gibst dort
mdt devices
ein. Als Output erscheint der Name des Boards sowie die IP-Adresse.
Jetzt gibst du
mdt shell
ein. Nach einem Moment solltest du den Shell-Prompt von Mendel Linux sehen. Nun bist du auf dem Board und kannst dort loslegen. Falls an dieser Stelle eine Fehlermeldung erscheint mit dem Hinweis „Key not present…“, dann musst du einen kleinen Umweg gehen, den der Kasten „Keymanager-Bug ausmerzen“ beschreibt. Um zur Git Bash zurückzukehren, gibst du
exit
ein.
Über MDT lassen sich die verbundenen Devices ausgeben und eine Verbindung mit dem Betriebssystem des Boards etablieren.
Verbindung zum Internet herstellen
Du benötigst Online-Zugriff für das Board, um Systemupdates, TensorFlow-Modelle und Code-Beispiele herunterzuladen. Mit diesem Befehl richtest du in der Shell des Boards die WLAN-Verbindung mit Netzwerknamen und Passwort ein:
nmcli --ask dev wifi connect <Netzwerkname> ifname wlan0
Dabei ersetzt du <Netzwerkname> durch deine Angabe. Wenn im Netzwerknamen Leerzeichen oder Sonderzeichen vorkommen, dann setzt du ihn in einfache Anführungszeichen, etwa
nmcli --ask dev wifi connect ‘FRITZ!Box Fon WLAN 7490‘ ifname wlan0
Der Parameter
--ask
sorgt dafür, dass das Passwort abgefragt wird und somit nicht in der History landet. Im Erfolgsfall erscheint die Meldung „Device … successfully activated…“. Das kannst du nochmals überprüfen mit nmcli connection show oder mit ping coral.ai.
Dev Board Mini sicher herunterfahren
Zum Herunterfahren des Boards gehst du einfach den umgekehrten Weg wie beim Anschluss. Zuerst entfernst du das Kabel am USB-OTG-Port. Dann drückst du kurz auf den Power-Taster. Wenn die grüne LED erlischt, dann kannst du den Stromanschluss entfernen.
Board-Zugriff mit Linux
|
Keymanager-Bug ausmerzen
Um dies zu beheben, ist ein direkter Zugriff auf das Board notwendig. Dazu schließt du über den HDMI-Anschluss einen Monitor an und eine Tastatur mit Touchpad an den USB-OTG-Anschluss. Das ist der rechte der beiden USB-C-Anschlüsse. Dafür benötigst du eventuell einen Adapter USB-A auf USB-C. Dann schließt du die Stromversorgung an und hälst den Power-Taster gedrückt. Er befindet sich neben dem HDMI-Anschluss. Das Board fährt daraufhin hoch. Der zu löschende private Schlüssel befindet sich auf dem Host-Rechner in einem Unterordner des Benutzer-Ordners.
Entferne das HDMI-Kabel und die Tastatur vom Board und schließe es über den USB-OGT-Port an den Host-PC an. In der Git Bash gibst du mdt shell ein, um auf das Board zuzugreifen. Jetzt sollte es funktionieren. |