Hallo zusammen, ich habe hier ein Usb Device basierend auf der HID Class. Das Device ist selbstgebaut und HID wird lediglich dazu benutzt Control und Status Daten zu tunneln. Es ist geplant das Gerät in Serie zu produzieren. Die Kommunikation geschied über eine Wrapper DLL. Nun ist der Wunsch aufgekommen das Gerät über das Netzwerk fernbediehnbar zu machen. Erste Versuche habe ich dazu mit einem USB Device Server durchgeführt. Das funktioniert problemlos. Unser Device wird immer an einem PC betrieben, der am Netzwerk angeschlossen ist. Deshalb würde es ja ausreichen, auf diesem PC einfach eine Server App zu starten (als Dienst?) und so den USB Device Server einzusparen. Die Server App würde also einfach die empfangenen Netzwerkpakete decodieren und diese über die Wrapper DLL an das lokale USB Device senden. Umgekehrt würden die USB Daten dann an den Client geleitet. Die Datenrate ist überschaubar HID bei weitem ausreichend. Das Netzwerk würde einfach ein weiterer Tunnel für die HID Daten sein. Ich habe mich schon etwas in die Socket Programmierung eingelesen und mir mal ein Loopback Adapter mit fixer IP auf dem PC installiert. Vom Loopback Adapter erhoffe ich mir, dass ich die Netzwerkfunktionalität erst mal lokal testen und debuggen kann. Nun ist Netzwerkprogrammierung nicht meine Kernkompetenz deshalb meine Fragen: - Was haltet Ihr prinzipell von diesem Konzept? - Sind Sockets der richtige Ansatz? - Wird das mit em Loopback Adapter so funktionieren? Bitte keine Diskussion über HID, das funktioniert schon perfekt und ist meines Wissens die einzige Softwareschnittstelle die OS übergreifent überall verfügbar ist. Ebenso werde ich am Device sicher keine Netzwerkschnittstelle dazubauen. Vielen Dank im vorraus Thomas
Kann man so machen. Einen Loopback-Adapter brauchst Du nicht, der ist auf jedem System vorhanden, die berühmte 127.0.0.1.
Es gibt auch USB-Device-Server-Software für Windows. https://www.virtualhere.com/windows_server_software Mit der kostenlosen Varianten kann man ein Gerät im Netzwerk zur Verfügung stellen, nach Geldeinwurf entsprechend mehr. Den korrespondierenden Client gibt es für verschiedene Betriebssysteme: https://www.virtualhere.com/usb_client_software Vielleicht hilft das ja schon bei Deiner Anwendung.
Danke Rufus, das kannte ich noch nicht. Werde ich mir näher anschauen obwohl das in meinem Fall nicht die Lösung sein wird. Thomas
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.