Unter Windows 10 (11) entwickle ich per SSH Remote Konsole auf dem Raspberry PI mit Visual Studio Code. Hier benötige ich oftmals eine Bildausgabe zum Beispiel bei der Gesicht Erkennung oder ganz einfach bei der Kamerasteuerung.
Bisher habe ich für die Ausgabe Putty verwendet, da hier das X11-Forwarding recht einfach zu bewerkstelligen ist (unter Connection SSH X11 Enable X11 forwarding aktivieren – das wars).
Für die Anzeige in Windows verwende ich den vcxsrv den man auf SourceForge.net herunter laden kann: https://sourceforge.net/projects/vcxsrv/
Die VCXSRV Settings auf den Desktop speichern, damit man sie später einfach Doppelklick starten kann:
Im folgenden beschreibe ich, wie man mit VS Code auch ohne Putty, Bilder mit opencv unter Windows anzeigen kann:
- Umgebungsvariable DISPLAY = 127.0.0.1:0 anlegen (in Systemeigenschaften: Benutzervariablen)
2. Im Ordner c:\Users\<currentuser>\.ssh die Datei config öffnen und dort die Host Einträge folgendermaßen aufbauen:
Host raspberrypi
HostName raspberrypi
User <currentuser>
EnableSSHKeysign yes
IdentityFile C:\Users\<currentuser>\.ssh\id_rsa
ForwardX11 yes
ForwardX11Trusted yes
<currentuser> ist der angemeldete Nutzer ohne die eckigen Klammern
id_rsa ist der private key für die Kommunikation mit dem Raspberry Pi
3. Danach Visual Studio Code neu starten und mit dem Raspberry Pi verbinden:
Wenn die x11-apps installiert sind, kann man in einem neuen Terminal Fenster xcalc zum Testen verwenden:
Das Ganze funktioniert natürlich auch im Jupyter Notebook und mit allen anderen Python Programmen, die Bilder in VS Code ausgeben.
Links:
SSH Copy-ID: https://www.ssh.com/academy/ssh/copy-id