Forum: PC-Programmierung Raspberry - USB auslesen/(sniffen?)


von Locker L. (lockerlicky)


Lesenswert?

hi leute!

ich möchte an mein Raspberry Pi via USB ein gerät anhängen das alle 4s 
daten über USB sendet diese möchte ich mit dem Pi empfangen (im besten 
fall mitschneiden und speichern).

ich habe noch nie versucht via USB daten abzufangen dem entsprechend 
auch null erfahrung. könnt ihr mir weiter helfen? zB mit dokumentationen 
/ tuts?
wo/wie fange ich am besten an?

das ganze passiert mit einem REAL Time Protocol 24Bytes

von g457 (Gast)


Lesenswert?

> USB daten abzufangen

Abfangen? Lesen halt.

> könnt ihr mir weiter helfen? zB mit dokumentationen

Klar. Selbige musst Du nur lesen. Hast uns ja nicht gesagt, was Du 
dranhängen möchtest.

> wo/wie fange ich am besten an?

Doku lesen. Behelfsweise auch brute force einfach mal einstecken, 
mitlesen was für ein Device (oder mehrere) angemeldet wird (oder 
werden), dann entscheiden wie man weitermacht (z.B. mit lesen der 
relevanten Doku für die Klasse des angemeldeten Geräts :-)

HTH

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Locker Licky schrieb:
> ich möchte an mein Raspberry Pi via USB ein gerät anhängen das alle 4s
> daten über USB sendet diese möchte ich mit dem Pi empfangen (im besten
> fall mitschneiden und speichern).

Ein USB-Gerät sendet nicht von sich aus irgendwelche Daten. USB-Geräte 
senden nur dann Daten, wenn sie vom USB-Host dazu aufgefordert werden.

Damit Dein Raspberry Pi die Daten aufzeichnen kann, die Dein USB-Gerät 
gerne loswerden würde, muss der Raspberry Pi das USB-Protokoll des 
Gerätes kennen -- sprich: Ohne zugehörigen Devicetreiber wird das 
nichts.

von Konrad S. (maybee)


Lesenswert?

wireshark?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Konrad S. schrieb:
> wireshark?

Hilft auch nur dann, wenn irgendein Programm bereits mit dem Gerät
redet.

Rufus Τ. Firefly schrieb:
> Ohne zugehörigen Devicetreiber wird das nichts.

Naja, man kann auch mit dem generischen USB-Treiber arbeiten.
Stichwort: libusb.  Aber ein Programm, welches dies aktiv betreibt,
muss es natürlich trotzdem geben.

von Konrad S. (maybee)


Lesenswert?

Jörg Wunsch schrieb:
> Hilft auch nur dann, wenn irgendein Programm bereits mit dem Gerät
> redet.

Hm. Das Gerät scheint es schon zu geben. Dann wird es auch eine Software 
geben, mit der das Gerät spricht. Statistisch betrachtet wird das eine 
Windows-Software sein. Zumindest das könnte man mal beobachten.

von Johannes S. (johannes_s20)


Lesenswert?

Schau mal hier. http://libusb.sourceforge.net/doc/index.html Also um den 
USB port vom pi in betrieb zu nehmen braucht es eigentlich ziemlich 
wenig Aufwand. Hatte auf der fh auch ein USB Projekt und das ging unter 
Linux und später auch auf dem pi.

von PittyJ (Gast)


Lesenswert?

Ich habe unter Linux mit libusb schon direkt Geräte angesprochen. z.B. 
auch Arduinos ohne den TTY-Trieber und Festplatten mit den USB-M SCSI 
Befehlen.

Was du allerdings brauchst ist eine Beschreibung, was das Gerät für 
Kommandos entgegen nimmt. Und da hapert es meistens. Man bekommt einen 
Windows-Treiber und das ist alles.

Unter Linux kann man mit Wireshark das USB-Protokoll mithören. Da 
bekommt man eine Ahnung, was da alles los ist. Das geht nicht über 
Windows.

Ach ja: bis ich alles verstanden hatte, war ein Monat vergangen. USB ist 
nicht einfach.

von Locker L. (lockerlicky)


Lesenswert?

Danke für eure Antworten!

Ich habe gestern mit Tshark ein bisschen rumgespielt auf dem Pi
  kam damit aber zu nichts brauchbarem ^^
Mit dem Thema werde ich mich weiter auseinandersetzen
  die englische Seite mit der Erklärung zum Thema USB finde ich sehr 
interessant
  auch dieses libusb werde ich mir genauer angucken.

Als ich heute Nacht mit dem Pi gespielt hab bin ich auf:
  UART Bridge Controller
gestoßen

Grüße
lockerlicky

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Vielleicht schreibst du uns ja mal, was für ein USB-Gerät du denn
genau hast und was du mit diesem machen möchtest.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Locker Licky schrieb:
> Ich habe gestern mit Tshark ein bisschen rumgespielt auf dem Pi
>   kam damit aber zu nichts brauchbarem ^^

Das ist auch kein Wunder. Solange Du nicht auf dem Pi eine Anwendung 
laufen hast, die wunschgemäß mit Deinem Gerät kommuniziert, kannst Du 
dieser Kommunikation auch nicht mit irgendwelchen Mithörern zusehen.

Nochmal: Ohne ein geeignetes Gegenstück (Devicetreiber & Programm, das 
diesen auch nutzt) gibt Dein USB-Gerät nichts von sich.

Höchstwahrscheinlich gibt es irgendwo eine Windows-Software, die mit 
Deinem Gerät kommuniziert, und Du möchtest das ganze auf den Pi 
übertragen.

Den Mithörer musst Du auf dem Windows-PC einsetzen, damit Du das 
verwendete Protokoll analysieren kannst, um es mit von Dir zu 
schreibender Software auf dem Pi nachbilden zu können. Als Grundlage 
dafür bietet sich libusb an.

Aber ohne die Analyse des Protokolls ist das ganze fruchtlos. Und die 
Analyse funktioniert nur durch Beobachtung eines funktionierenden 
Systemes, also des weiter oben hypothetisch angenommenen Windows-System 
nebst der zum Gerät gehörenden Software.

Und auf diesem Windows-System musst Du den Mithörer laufen lassen.

(Alternativ müsstest Du einen Hardware-USB-Analyzer verwenden, aber das 
dürfte Deinen finanziellen Rahmen sprengen).

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
Noch kein Account? Hier anmelden.