0

Wie priorisieren Androiden eingehende Bluetooth 4.0-Nachrichten, wenn viele Signale an einem bestimmten Ort sind? Wenn es in einem Bereich viele Beacon-Nachrichten gibt (eine Menge, die Fitbit-Geräte usw. trägt), scheint Android einige eingehende Nachrichten basierend auf bestimmten Kriterien zu verarbeiten und ignoriert den Rest. Dies scheint auf einer niedrigeren Ebene zu priorisieren, als uns das Android-Entwicklungsframework ermöglicht. Beim Ausführen verschiedener Tests mit verstärkten Beacon-Signalen in einem überfüllten Raum scheinen iPhones nicht in der gleichen Weise zu agieren.Bluetooth Low Energy Signalverarbeitung Priorisierung in einem überfüllten Raum

Antwort

2

Ich vermute, dass die Unterschiede im Verhalten auf der Implementierung des BLE-Chipsatzes basieren und nicht unbedingt von irgendeinem bewussten Design, geschweige denn von der BLE-Spezifikation. Sie werden wahrscheinlich feststellen, dass sich das Verhalten sogar zwischen iOS-Gerätemodellen (mit verschiedenen Chipsätzen) und ganz sicher zwischen den viel stärker fragmentierten verschiedenen Android-Modellen unterscheidet.

Eine praktisch nützliche Antwort auf diese Frage basiert wahrscheinlich eher auf spezifischen Testbedingungen für bestimmte Gerätemodelle als auf einer definitiven generalisierten Antwort.

Zugegeben, dies ist alles Vermutung basierend auf viele Tests, die ich getan habe. Ich biete es nur in Ermangelung besserer und spezifischerer Antworten von anderen an.

2

Es gibt keine "Priorisierung", soweit ich das beurteilen kann. Die Bluetooth-Chips leiten einfach weiter, was sie in der Luft schnappen, während sie zum Host scannen.

Was Sie beachten sollten, ist das Werbeintervall. Ein Gerät, das öfter als ein anderes eine Werbung sendet, wird natürlich eher erkannt. Wenn zwei Geräte genau zum gleichen Zeitpunkt ein Werbepaket aussenden und die Signalstärken gleich sind, wird der Empfänger wahrscheinlich nur Müll bekommen und das Paket fallen lassen.

Beachten Sie, dass Android "aktives Scannen" verwendet, dh es wartet sowohl auf das Werbepaket als auch auf das Scan-Antwortpaket, bevor die App benachrichtigt wird. Um das Scan-Antwort-Paket zu erhalten, muss es unmittelbar nach dem Empfang des Werbepakets eine Scan-Anfrage senden, und unmittelbar danach sendet der Werbetreibende das Scan-Antwort-Paket. Jetzt definiert der Standard einen Backoff-Mechanismus, falls dieser fehlschlägt, der in verschiedenen Controllern unterschiedlich implementiert werden könnte, daher sind wahrscheinlich die größten Unterschiede für verschiedene Controller darauf zurückzuführen.

Verwandte Themen