Eingebettetes USB-System via USB mit Windows-Rechner verbinden



  • Hallo,

    langer Titel, im Prinzip habe ich ein Linux-System, wo auch ein "echtes" Linux drauf läuft. Ich kann also von Samba über PostgreSQL alles mögliche drauf laufen lassen. Dieses System sammelt Daten. Meine Idee war jetzt, dass ich meinen Windows-Laptop und ein USB-Kabel nehmen kann, und beide Systeme verbinde. Das Linux-System soll dann die gesammelten Daten 1:1 an das Windows-System weiterleiten.

    Wie kompliziert ist so etwas und wo setze ich an? Ich programmiere in C++. Gibt es da schon ein Framework für Linux oder müsste ich wirklich alles selbst schreiben. Im Prinzip ist das ja so etwas wie ein Treiber, da sich das Linux ja als "Gerät" bei Windows melden muss.


  • Mod

    Bevor wir von Software reden: Wie stellst du dir denn die Verbindung auf der Hardwareseite vor? Wenn du einfach ein zweiseitiges USB-Kabel benutzt, dass direkt die Pins der Ports verbindet, dann hast du eine gute Chance, deine Geräte physisch zu beschädigen. Entsprechend wird es wohl kaum fertige Software für diesen Anwendungsfall geben. Das ist einfach nicht, wie USB funktioniert.

    Und wenn du ein spezielles USB-Datentransferkabel benutzt: Hast du einfach mal probiert, was passiert? Funktionierte es nicht oder gehst du im Vorhinein davon aus, dass es nicht funktionieren wird? Ich könnte mir nämlich vorstellen, dass der Controller im Kabel (ja, diese Kabel sind in der Regel aktive Geräte) sich als ein generisches Netzwerk- oder Massenspeichergerät ausgibt (weiß ich aber nicht, weil ich so ein Kabel nie selber benutzt habe), dass von Linux und Windows von Haus aus unterstützt wird.



  • SeppJ schrieb:

    [...]
    Und wenn du ein spezielles USB-Datentransferkabel benutzt: Hast du einfach mal probiert, was passiert? Funktionierte es nicht oder gehst du im Vorhinein davon aus, dass es nicht funktionieren wird? Ich könnte mir nämlich vorstellen, dass der Controller im Kabel (ja, diese Kabel sind in der Regel aktive Geräte) sich als ein generisches Netzwerk- oder Massenspeichergerät ausgibt (weiß ich aber nicht, weil ich so ein Kabel nie selber benutzt habe), dass von Linux und Windows von Haus aus unterstützt wird.

    Ausprobiert habe ich es nicht, dass wäre einen Versuch wert. Wäre vlt. auch einfacher, als das was ich gefunden habe:

    http://www.linux-usb.org/gadget/

    The <linux/usb_gadget.h> API makes it easy for peripherals and other devices embedding GNU/Linux system software to act in the USB "device" (slave) role. The drivers implementing and using that API combine to make a useful driver framework for Linux systems that implement USB peripherals.

    Finde dazu leider kein schönes Beispiel.



  • Wieso USB? Wenn beide Rechner WLAN haben reicht es völlig aus, beide Rechner nebeneinander zu stellen, die Daten synchronisieren sich dann von alleine.

    So, Sarkasmus beiseite:
    Was genau hast du eigentlich vor? Die Vorstellung, dass man einfach über ein USB Kabel beliebige Daten zwischen zwei Rechnern (und auch mit unterschiedlichen Betriebssystemen) synchronisieren kann ist ziemlich naiv.



  • Wer hat was von einfach geschrieben? Wer hat was von synchronisieren geschrieben?

    Das Linux-Gerät sammelt laufend Daten (livestream). Ich will mich per USB mit dem eingebetteten Gerät verbinden und diese Livedaten dann weitergeleitet bekommen.

    Unter Windows poppt die Meldung auf "Neues USB-Device", ich kann per Software die Schnittstelle öffnen und bekomme die Daten als Stream.



  • halberLinuxer schrieb:

    Unter Windows poppt die Meldung auf "Neues USB-Device", ich kann per Software die Schnittstelle öffnen und bekomme die Daten als Stream.

    Tja, siehste? Warum enthältst du uns diese fundamentale Information?

    halberLinuxer schrieb:

    Meine Idee war jetzt, dass ich meinen Windows-Laptop und ein USB-Kabel nehmen kann, und beide Systeme verbinde. Das Linux-System soll dann die gesammelten Daten 1:1 an das Windows-System weiterleiten.

    Hast du doch, kommen doch als Stream an. Wo genau ist jetzt das Problem?



  • Der Satz:

    Ich will mich per USB mit dem eingebetteten Gerät verbinden und diese Livedaten dann weitergeleitet bekommen.

    Klingt irgendwie nicht danach, als ob das schon gehen würde, oder? Denn dann wäre meine Frage ja überflüssig. Egal, von dir kann ich nichts erwarten. Eigentlich ist dieser Post hier schon Zeitverschwendung gewesen.



  • Unter Windows poppt die Meldung auf "Neues USB-Device", ich kann per Software die Schnittstelle öffnen und bekomme die Daten als Stream.

    das war Inhalt deines vorletzten Post - hört sich auch fuer mich so an als ob alles geht - oder warum schreibst du es dann so?


Anmelden zum Antworten