Hallo, ich frage mich ob es möglich ist per PC mit einem Arduino zu kommunizieren ohne eine serielle Schnittstelle dafür zu nutzen. Hintergrund ist ich möchte einen Gamecontroller bauen der über eine Software am PC konfiguriert werden kann. Und denke mir das hier eine Serielle Schnittstelle nicht gerade die beste Lösung ist. Andere USB Geräte die man an den PC anschließt werden ja sicherlich auch keine serielle Verbindung verwenden. Hab gesucht aber nichts gefunden, vielleicht hat ja jemand einen passenden Link für mich zu dem Thema. Gruß Matthias
Matthias S. schrieb: > Hintergrund ist ich möchte einen Gamecontroller bauen der über eine > Software am PC konfiguriert werden kann. Dann nimm z.B. den Arduino Micro oder einen anderen mit USB direkt am µC. Damit kann man dem µC das für Gamecontroller nötige HID Protokoll beibringen, was mit USB2Serial Wandler-Chips nicht geht. Lies Dich mal zum Thema USB HID ein.
tja, kein seriell. Dann wäre da ja nur noch die parallele Schnittstelle... BTW, das 'S' in USB bedeutet 'seriell'
Matthias S. schrieb: > Und denke mir das hier eine > Serielle Schnittstelle nicht gerade die beste Lösung ist. Warum? Selbst USB ist eine serielle Schnittstelle.
äääää BT ginge doch auch noch .... und infrarot ..... must halt eine Drahtlose Schnittstelle nehmen. Aber irgendeine Schnittstelle benötigst du sowiso. Aber grundsätzlich ist auch USB nur eine Serielle Schnittstelle. Ausserdem ist es fiel einfacher eine Com basierter Software zu machen. Aber ich glaube du brauchst wirklich einen Arduino Leonardo oder vergleichbar. Der Simuliert ein HID gerät als Kontroller und die Gewünschten Anpassungen must du im Arduino über eine Software machen die über die Com verbunden ist. Zur Not geht das auch mit dem Monitor Terminal von der Arduino IDE. Wenn du willst kann ich dir dabei helfen. Ich mache gerade etwas änliches.
Hallo, danke für eure zahlreichen Antworten, ich habe vor das Projekt mit einem Arduino Micro Pro zu realisieren (der hat USB schon dran). Der Hinweis mit USB HID hat mir sehr geholfen, hatte ich vorher schon mal kurz irgendwo gesehen/gelesen. Jetzt ist die Frage wenn ich meinen Arduino als HID am PC anschließe (USB oder Bluetooth) kann ich dann trotzdem mit dem Arduino Sketch kommunizieren. Wunsch ist es den Controller per Software auf dem PC konfigurieren zu können (Empfindlichkeit etc.). Noch mal vielen Dank für eure Hilfe. Gruß Matthias
Natürlich nicht ... wenn du ein HID Interface hast ... ist das nicht mehr als Com angemeldet. Das solltest du dann mit der ISP Schnittstelle programmieren. Zur Konfiguration must du dir dann einen Weg einfallen lassen. Zum Beispiel am Arduino einen Botton anschliessen der nur dann im COM Modus startet wenn der Button gedrückt ist. Und beim nächsten Reset dann wider im HID Modus Startet. Ganz wichtig ist. Das du bevor du den Sketsh aufspielst. Du dir einen Schalter anlegst der die HID Ausgabe unterbricht. Denn sonst könnte es sein das du keinen Sketsh mehr uploaden kannst weil die Schnittstelle besetzt ist. Dann must du mit ISP den Sketsh Flashen!! Gerade die Arduino eigenen Beispiele haben da ganz grobe Fehler wenn man nicht alles genauso macht wie dort beschrieben. Wenn du die Konfiguration machen willst während das HID angeschlossen ist must du wohl einen 2. Mini ranhängen oder einen 2. USB Adapter der über die SoftSerielle Schnittstelle angesprochen wird.Und beide untereinander mit der I2C Schnittstelle kommunizieren lassen. Ausser du bist fit darin einen Treiber zu schreiben. Das muss nicht die einzige Möglichkeit sein . Aber so ist es mir ergangen.
Matthias S. schrieb: > Jetzt ist die Frage wenn ich meinen Arduino als HID am PC anschließe > (USB oder Bluetooth) kann ich dann trotzdem mit dem Arduino Sketch > kommunizieren. Wunsch ist es den Controller per Software auf dem PC > konfigurieren zu können (Empfindlichkeit etc.). Kann es nicht mit Bestimmtheit sagen, aber ich würde aus dem Bauch heraus vermuten, dass man mit libusb1 (braucht unter Windows keinen extra Treiber) und Control-Tansfers über Endpoint-0 erledigen können sollte. Ich beziehe mich hier auf eine USB-HID-Lösung. Grüße Oliver
:
Bearbeitet durch User
Matthias S. schrieb: > Jetzt ist die Frage wenn ich meinen Arduino als HID am PC anschließe > (USB oder Bluetooth) kann ich dann trotzdem mit dem Arduino Sketch > kommunizieren. Einlesen heisst nicht nur überfliegen. HID hat auch Möglichkeiten zu Kommunikation PC->Gerät, so wird z.B. bei USB Tastaturen der LED Status übertragen. Man braucht nichtmal (eigene) Treiber, allerdings muss man sich auch mal in die PC Seite einlesen (oder Libs wie HIDAPI nutzen). Wenn es ein Arduino Tastatur- oder Mausbeispiel gibt, hast Du schon mehr als die Hälfte des Projekts fertich.
Man könnte den Arduino auch als Composite Device programmieren, sodass es sich als HID und CDC-ACM (Virtueller COM Port) gleichzeitig anmeldet.
Turgut T. schrieb: > Natürlich nicht ... wenn du ein HID Interface hast ... ist das nicht > mehr als Com angemeldet. Interessant, meine Pro Micro melden sich alle als HID und als Arduino und lassen sich problemlos über den gleichen Anschluß ohne zusätzliche Geräte programmieren. Was mache ich falsch?
So einfach geht das nicht. Sobald Windows das hid einbindet hat man keinen Zugriff darauf. Eine Möglichkeit ist ein zweites custom hid für die Konfiguration. Und damit ich das auch nicht mehr so einfach wie: Jim M. schrieb: > Wenn es ein Arduino Tastatur- oder Mausbeispiel gibt, hast Du schon mehr > als die Hälfte des Projekts fertich. Ein gewisses USB Verständnis wird benötigt, um das zu implementieren. Ich habe damals dafür ein composite device verwendet. Ob das noch mit Arduino libraries gent, bezweifle ich.
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.