mikrocontroller.net

Forum: HF, Funk und Felder USB HID per Funk an PC


Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

seit längerem bin ich auf der Suche nach einem geeigneten Vorgehen um 
einfach USB Endgeräte wie eine Maus oder einen Gamecontroller an einen 
PC drahtlos anbinden zu können.

Von Atmel gibts da ja diverse yC's, die direkt eine USB Schnittstelle 
haben und von denen aus man via SPI oder UART z.B. das ATR2406 ansteuern 
könnte. (Übertragung im ISM Band 2,4 GHz)

Was ich mich bei dem ganzen Thema frage ist, wie sieht dabei die 
Kanalcodierung, das Umrangieren der Daten usw. aus? Wie regelt man z.B. 
das Verhalten der mobilen Einheit (die an der Maus) bezüglich Senden/ 
Empfangen usw.

Von Cypress gibts da ja auch diese ganzen Wireless USB Geschichten.

Hat jemand schon mal ein ähnliches Vorhaben umgesetzt bzw. kennt sich 
mit dem Thema aus?

Bin für jede Hilfe/ Hinweis dankbar.


Gruß Rainer

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du wirst doch nicht den kompletten USB-Traffic auf die HF-Schnittstelle
bringen.  Für eine Maus muss diese doch nur bei jeder Bewegung ihre
neuen Daten übertragen.  Der USB-Dongle, der die Daten empfängt, schickt
sie dann auf den USB.

Was du als Protokoll in der Luftschnittstelle benutzt, ist dabei sicher
deiner Fantasie überlassen.  Denk dran, dass dein Nachbar u. U. nicht
derjenige sein sollte, der dir die Maus aus der Hand nimmt. ;-)

Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort.

Wenn man nicht den kompletten USB- Traffic auf die Luftschnittstelle 
geben möchte, muss dann wahrscheinlich der Dongle ein USB Device sein 
und benötigt eine Vendor- ID, die ja nicht ganz billig ist.

Die Schnittstelle die ich gerne umsetzen möchte, soll einfach nur ein 
Ersatz für ein USB Kabel sein.

Bei der Suche nach geeigneten Modulen bin ich auf Cypress und Atmel 
gestoßen, wobei ich mir eben nicht sicher bin, wie das System als 
solches funktionieren könnte.

Autor: Martin Laabs (mla)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kurz: Vergiss es - es geht nicht.
Lang: USB ist ein kabelgebundenes Protokoll. Das kann man nicht 1:1 auf 
ein drahtloses Medium übertragen. So sind z.B. die Laufzeiten bei USB 
ganz hart begrenzt und ich würde mich nicht wundern wenn schon alleine 
die, wie auch immer geartete Modulation, mehr Zeit als erlaubt in 
Anspruch nimmt. Von Synchronisation, Mehrwegeempfang etc. mal ganz zu 
schweigen.

Viele Grüße,
 Martin L.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rainer wrote:

> ..., muss dann wahrscheinlich der Dongle ein USB Device sein
> und benötigt eine Vendor- ID, die ja nicht ganz billig ist.

An deinem System zu Hause kannst du tun und lassen, was du willst.
Da kannst du dir auch eine VID/PID erfinden.

Wenn du's verkaufen willst, müsstest du sowieso die USB compliance
tests machen, damit du das Teil aus USB ausweisen darfst.  Da kommt's
auf die offizielle VID auch nicht mehr an. ;-)  Außerdem gibt es für
VID/PID-Paare Reseller, die bei der USB-Organisation eine komplette
VID gelöhnt haben und sie ,,in Stücken'' sublizensieren.  Mit dieser
Methode ist man schon mit relativ wenig Geld dabei.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm einen Keyspan USB Server und eine WLAN Verbindung.

Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich hoffe ich gehe euch nicht auf die Nerven, aber zu der Lösung, nicht 
den kompletten USB Traffic auf die Luftschnittstelle zu geben, stellen 
sich mir neue Fragen.

Man kann ja z.B. die Atmel AT90USB... Controller als HID oder als 
virtuellen Comport an einen PC anschließen.

Wie kompliziert ist denn das extrahieren der relevanten Daten aus dem 
USB Protokoll um diese dann per Luftschnittstelle an die Maus(genauer 
gesagt das Empfangsmodul) weiterzusenden?

Für den umgekehrten Weg, also z.B. ein Klick auf einer Taste müsste man 
dann ja mit dem Atmel Chip ein USB Protokoll aufsetzen und dann an den 
Host schicken. Auch bei diesem Weg wieder die Frage, wie kompliziert ist 
das?

Schonmal vielen Dank,

Gruß Rainer

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehr kompliziert, da du auf beiden Seiten der Funkstrecke wieder das 
ganze Protokoll brauchst. Auf einer Seite USB Host, auf der anderen 
USB-Device.

Autor: Ulf K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wir haben sowas schon mal gemacht: (Roh-)Daten eines Joysticks / Maus
per Funk zu einem Empfänger, dann über einen Philips ISP1183 als HID an 
den PC. Rückkanal ebenfalls HID, z.B. zur Konfiguration der 
Funkschnittstelle.
Erfordert zunächst einmal auch einiges Verständnis von USB. Wenn es dir 
gelingen sollte, deinen µC als HID am PC anzumelden, und den Mauszeiger 
mal durch die Gegend zu schieben, hast du schon mal 50% der 
Aufgabenstellung gelöst. Kompletten USB-Traffic über Funk - geht nicht. 
Wie kompliziert? Keine Ahnung wieviel Unterstützung ATMEL bei der 
Anbindung als HID liefert. Empfehle folgendes Buch: "Jan Axelson: USB 
Handbuch für Entwickler"

Gruß

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ulf K. wrote:

> Wenn es dir
> gelingen sollte, deinen µC als HID am PC anzumelden, und den Mauszeiger
> mal durch die Gegend zu schieben, hast du schon mal 50% der
> Aufgabenstellung gelöst.

So weit reicht ja schon Atmels Democode für die AT90USBxxx-Controller.
Wenn man einen STK525 hat, ist auch noch ein kleiner Joystick drauf,
mit dem man das steuern kann.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.