2015-05-04 1 views
6

Ich weiß, dass mehrere Bluetooth-Geräte an ein Master-Gerät angeschlossen werden können.Verbinden Sie ein Bluetooth-Gerät als mehrere Geräte

Meine Frage ist einfach: Kann ein einzelner Bluetooth-Chip mit einer einzigen MAC-Adresse mit einem anderen Bluetooth-Gerät als mehr als einen Client verbinden?

EDIT: Grundsätzlich ist es möglich, mehrere Bluetooth-Clients mit der gleichen MAC-Adresse zu akzeptieren, kann, wenn nicht der Client-Computer verschiedene faux-Adressen eine Verbindung mit?

Zum Beispiel schreibe ich Software, die ein Wiimote für die Wii/WiiU emuliert. Ich hoffe, mehr als eine Wiimote mit einem einzigen Bluetooth-USB-Dongle zu emulieren.

Wenn ein Hack benötigt wird, wäre C- oder C++ - Code vorzuziehen. Vorzugsweise für Windows, wenn plattformabhängig. Bitte beschreiben Sie in Antworten.

Antwort

1

Bluetooth HID Spec v1.0

4.4 Mehrere Geräte pro Host/Multiple Hosts pro Gerät

Bluetooth HIDs keine Begrenzung für die Anzahl der Geräte pro Host erlaubt (bis zu sieben gleichzeitige aktive Geräte eingestellt werden per Piconetz). Alle vertrauenswürdigen Geräte (Geräte, die entweder authentifiziert wurden oder für die keine Sicherheitsverfahren erforderlich sind) müssen gleichzeitige Verbindungen zum Host haben, wenn der Host dies wünscht. Zum Beispiel sind mehrere Bluetooth Mäuse und Tastaturen erlaubt. Das Verhalten in diesem Fall ist dasselbe wie für den USB-Fall; h. die Eingabe von allen Geräten ist erlaubt und die Datenströme sind logisch ODER-verknüpft.

In ähnlicher Weise kann ein einzelner Bluetooth-HID eine Verbindung hergestellt haben oder seine Adresse mehreren Hosts bekannt sein. Wenn es sich jedoch als virtuell verkabelt deklariert hat, ist es zwingend erforderlich, dass das Gerät nur eine einzige Hostverbindung und nur einen Steuerungs- und einen Interrupt-L2CAP-Kanal zu diesem Host gleichzeitig unterstützt (siehe SDP-Attribut HIDVirtualCable). Wenn sich das Gerät nicht als virtuell verkabelt deklariert hat, wird empfohlen, dass das Gerät immer nur eine einzelne Host-Verbindung gleichzeitig unterstützt, d. H. Es dürfen nicht mehr als ein SDP-, Steuerungs- und Interrupt-Kanal gleichzeitig geöffnet sein. Ein Bluetooth HID, der die Virtual Cable-Funktion implementiert, muss über ausreichend Ressourcen verfügen, um sich an mindestens zwei Hosts zu erinnern, und vier Hosts werden empfohlen, um die spätere erneute Verbindung ohne Passkey-Eingabe zu vereinfachen.

+0

Mehrere SPP-Dienstverbindungen zwischen einem einzelnen Host und einem einzelnen Client funktionieren. Jedoch unbekannt, wenn HID dies auch erlaubt. Sieht so aus, als würde Bluetooth Spec dies nicht empfehlen, was bedeuten würde, dass BT-Stacks unterschiedliche Berechtigungen haben könnten. Aus Erfahrung scheinen HID-Hosts bestimmte Bluetooth-Sicherheitseinstellungen zu überschreiben, was möglicherweise gegen Standards verstößt.Also, scheint der einzige Weg, um sicher herauszufinden, ist es zu versuchen. –

0

Ich bin mir nicht sicher, was Sie fordern, aber:

ein Bluetooth-Netz piconet genannt wird, ein Pico-Netz muss eine Mindestzahl von 2 Geräten hat und maximal 8 Geräte (7 Slaves und 1 Master). Ein Gerät kann das Mitglied eines oder mehrerer Piconets sein, aber er kann nur der Master von einem von ihnen sein, dieses Gerät heißt Bridge, weil er mehr Piconets in einem Scatternet mischt.

Daher können Sie einen Bluetooth-Chip mit einer einzigen MAC-Adresse mit mehr Bluetooth-Geräten verbinden, aber ich denke, Sie können nicht dasselbe Gerät A als mehr als einen Client mit demselben Master M verbinden, da der Master M startet die Anfragephase A antwortet mit seiner MAC-Adresse und dem Offset seiner Uhr nur einmal, später während der Seitenphase stellen M und A eine Verbindung her.