Günstigste und einfachste Möglichkeit, eine Bluetooth-Tastatur / -Maus zu implementieren?

7

Ich dachte daran, ein Gerät zum Senden von Text und wahrscheinlich Mausbewegungen in einen Computer zu bauen, aber ich möchte, dass es drahtlos und mit vielen Computern / PDAs / Telefonen ohne speziellen Dongle usw. kompatibel ist. Also dachte ich: "Hey, Bluetooth ist ein Standard für Eingabegeräte und viele Computer / PDAs / Telefone haben es eingebaut! " Aber wie bekommt man die Daten in das Bluetooth am anderen Ende?

  • Ich könnte einen Bluetooth- IC kaufen und eine Leiterplatte dafür bauen, aber ich kann nicht einmal einen Ort finden, an dem ich sie in kleinen Mengen kaufen oder Unterlagen finden kann, ohne Teil eines Unternehmens zu sein und NDAs usw. zu unterzeichnen.
  • Ich könnte das sehr beliebte Arduino mit dem Bluetooth-Adapter lernen , aber das würde 149,95 USD kosten, was ich nicht im Sinn hatte, und ich weiß nicht, ob es überhaupt als Tastatur / Maus fungieren kann.
  • Ich könnte eine billige USB-Tastatur kaufen und auseinander nehmen , herausfinden, wie die Tasten den Datenleitungen zugeordnet sind, und sie einfach entsprechend stimulieren. Maus ist allerdings nicht so einfach.

Der letzte scheint der beste zu sein, aber haben Sie noch andere Ideen?

Ich möchte keine generische Serial-over-Bluetooth-Karte, es sei denn, sie kann so konfiguriert werden, dass sie am anderen Ende wie eine Standard-Bluetooth-Tastatur / -Maus aussieht.

Endolith
quelle

Antworten:

11

Sie werden feststellen, dass dies häufig der Fall ist, wenn Sie versuchen, aus handelsüblichen Teilen etwas zu bauen, das ein vorhandenes Produkt dupliziert. Fast immer kosten die Teile allein mehr als das vorhandene Produkt. Der Grund dafür ist, dass sie ihr Produkt in Massenproduktion herstellen, Teile in loser Schüttung kaufen und so die Kosten senken können usw.

Schauen Sie sich die "Serial-over-Bluetooth-Karten" genau an. Einige von ihnen unterstützen tatsächlich unterschiedliche Profile. Was Sie suchen, ist ein Modul, das das Bluetooth-HID-Profil unterstützt (Human Interface Device, auch bekannt als Maus, Tastatur, Joystick, Wii-Fernbedienung usw.).

Schauen Sie sich diese vorherige Frage an . Sie listet mehrere Bluetooth-Module auf, die Sie in Einzelmengen zu angemessenen Preisen kaufen können. Einige oder alle sollten HID unterstützen.

davr
quelle
OK. Aber welche konkret und wie viel Arbeit ist erforderlich, um sie dazu zu bringen, sie zu unterstützen?
Endolith
1
Um herauszufinden, welche speziell: Klicken Sie auf die einzelnen Seiten, lesen Sie die Seite und prüfen Sie, ob irgendwo darauf "HID" steht. Wenn Sie dann wissen möchten, wie viel Arbeit es bedeuten würde: Lesen Sie das Datenblatt für das Modul und sehen Sie, wie viel Sie tun müssen, um es zu initialisieren, Ereignisse zu senden usw. Viele der Module, mit denen Sie normalerweise über UART kommunizieren können Von einem Mikrocontroller aus ziemlich einfach, mit "AT" -Befehlen, ähnlich wie Modems früher funktionierten. Wieder sollte das Datenblatt die verfügbaren Befehle auflisten.
Davr
1
Also so? sparkfun.com/products/10253
Endolith
2

Nehmen Sie am besten eine Kombination aus Bluetooth-Tastatur und -Maus auseinander und konstruieren Sie sie wie beschrieben zurück. Setzen Sie ein Zielfernrohr auf die Mauslinien, bevor Sie es zerstören, damit Sie sehen können, was Sie tun müssen.

Das Problem beim Kauf eines Moduls (von denen die meisten SPP / DUN-Profile sofort erstellen und sich wie eine serielle Schnittstelle verhalten) besteht darin, dass Sie die SDKs, die zum Neuprogrammieren dieser Chips für andere Aufgaben erforderlich sind, nicht in die Hände bekommen können. Sie benötigen ein Modul mit einer HCI-Firmware ("Host Controller Interface"). Dadurch wird der Bluetooth-Stack über eine gut spezifizierte serielle Schnittstelle Ihrem Mikrocontroller zugänglich gemacht. Sie benötigen ein gutes Verständnis von Bluetooth, da Sie für die Ausführung der Funktionen des Moduls die über HCI empfangenen Ereignisse interpretieren und die Zustandsmaschine vorwärts bewegen müssen, indem Sie den nächsten Schritt über HCI aufrufen. Die gute Nachricht ist, dass es viele Beispiele gibt, die man sich ansehen kann, da host-seitige Bluetooth-Schnittstellen dies dem Betriebssystem zugänglich machen.

Ein ideales Modul (falls vorhanden) wäre ein Bluetooth 4.1-Modul mit BLE-Unterstützung, das HOGP (HID over GATT-Protokoll) einem Mikrocontroller aussetzt. Mit HOGP können Sie USB-HID-Berichtsbeschreibungen verwenden und kommen dem "drahtlosen USB" sehr nahe. Leider ist die BT4.1 / HOGP-Unterstützung erst in den letzten Android- und Windows 8-Versionen integriert. Ein Modul, das mit einem Mikrocontroller kommunizierte und Berichtsdeskriptoren festlegen und dann Berichte senden konnte, wäre sehr praktisch.

Ben Jackson
quelle