Gibt es eine gute Lösung, um Maus- und Tastatureingaben von einem Computer (auf den remote zugegriffen wird) über eine USB-Verbindung an einen anderen weiterzuleiten?

Gibt es eine gute Lösung, um Maus- und Tastatureingaben von einem Computer (auf den remote zugegriffen wird) über eine USB-Verbindung an einen anderen weiterzuleiten?

Erstens habe ich gesehenDasUndDasalte Fragen.

Mittlerweile sind jedoch mehrere Jahre vergangen und ich habe einen etwas anderen Anwendungsfall und suche daher nach einer anderen, hoffentlich effizienten/guten Lösung:

Wir haben ein Labor mit einem eingebetteten Testgerät. Wir können darauf keinerlei Software installieren. Wir können jedoch genau ein Set aus USB-Maus und -Tastatur anschließen. Nun möchten wir Entwicklern (jeweils einer ist völlig ausreichend) Pseudo-Fernzugriff darauf geben.

Unser gewünschtes Setup hierfür wäre eine (billige) Windows- oder Linux-Box vor unserem eingebetteten Gerät, die eine HD-Kamera hat, die die Konsolenanzeige unseres eingebetteten Geräts filmt. Das Einrichten und Verwalten des Fernzugriffs auf eine solche Box wäre einfach. Die Anzeige der Konsole des eingebetteten Geräts würde auch ganz natürlich als Videostream in der Box funktionieren (Verzögerung, Bildrate und Videoqualität sind kein Problem/kritisch).

Wie aber könnten wir Maus- und Tastatureingaben von der Box auf das eingebettete Gerät übertragen? Tastenanschläge reichen übrigens nicht aus, die Maus muss auch übertragen werden. Mein Problem ist, dass Maus- und Tastatureingaben von der Remotedesktopverbindung kommen und nicht von der Hardware vor Ort; ansonsten würde ein einfacher USB-Switch genügen. Am besten wäre also eine Software, die Maus und Tastatur als USB-Ausgabe von der remote erreichbaren Box an das eingebettete Gerät simuliert/weiterleitet. So etwas konnte ich aber nicht finden.

Gibt es eine solche Software? Und wenn nicht, gibt es eine andere Lösung für diesen Anwendungsfall? Alles, was funktioniert, wäre in Ordnung. Ich hoffe nur, dass ich die 2-3k KVM-over-IP-Lösungen loswerden kann, die wie ein Overkill erscheinen ...

Antwort1

Was Sie hier letztendlich benötigen, ist eine Möglichkeit, ein System als USB darzustellenGerätanstelle eines USBGastgeber. Dies ist unter Windows praktisch unmöglich (es isttechnischmöglich, aber Sie benötigen Windows 10 IoT Edition oder eine entsprechende ältere Version), aber Linux bietet native Unterstützung für die Emulation eines USB-Geräts und kann tatsächlich fast jedes USB-Gerät emulieren.

Das Problem ist, dass Sie hierfür auch Hardware-Unterstützung benötigen, nicht nur Software-Unterstützung, und die Suche nach solcher Hardware ist etwas mühsam, da die Hersteller für diese Funktion unterschiedliche Namen verwenden. Normalerweise wird sie als USB OTG (oder On-The-Go, der offizielle USB-IF-Begriff für ein Dual-Mode-Gerät), USB Gadget-Unterstützung (die offizielle Linux-Kernel-Terminologie) oder USB-Gerätemodus bezeichnet.

Mir fallen spontan zwei preisgünstige Linux-Einplatinencomputer ein, die diese Funktionalität unterstützen:

Beide sind für das, wovon Sie sprechen, mehr als ausreichend, erfordern aber etwas zusätzlichen Code, um tatsächlich eine Tastatur und eine Maus zu emulieren (keine Sorge, es ist nicht schwierig, es ist nur normalerweise so anwendungsspezifisch, dass es wirklich keine gute Software dafür gibt). Ich persönlich würde mich für den Pi Zero W entscheiden, da er für diese Anwendung einfacher zum Laufen zu bringen sein sollte (der Beaglebone verwendet den Gadget-Modus bereits aktiv in seiner Firmware, daher wird es mehr Arbeit sein, ihn zu ergänzen, als von vorne anzufangen), und er hat auch native MIPI CSI-Unterstützung (Camera-Serial Interface, ein weit verbreiteter Standard für Kameras in eingebetteten Linux-Geräten), sodass Sie problemlos eine kompatible Kamera integrieren können (z. B.das Raspberry Pi Kameramodul V2) in das Setup ein, um den Video-Feed bereitzustellen.

verwandte Informationen