Version: 1.0
Datum der Überarbeitung: 9. Juli 2024
Autor: Martin Woolley, Bluetooth SIG

Bluetooth® Low Energy (LE) ist weltweit dafür bekannt, dass es Benutzern drahtlose Datenübertragungs- und Audiofunktionen bietet. Die Technologie befindet sich in unseren Taschen, da sie in unsere immer intelligenteren Telefone integriert ist. Wir tragen sie am Handgelenk, in intelligenten Uhren und in Fitness-Trackern. Sie befindet sich in unseren Autos und ermöglicht eine freihändige Steuerung und Kommunikation. Und sie ist in unseren Ohren und ermöglicht das Streaming von hochwertigen Audiodaten von persönlichen Musikgeräten und von Rundfunkquellen über die neue Bluetooth LE Audio-Funktion Auracast™ Broadcast Audio.

Doch seit vielen Jahren etabliert sich Bluetooth LE auch als weit verbreitete und zuverlässige Technologie für die Entwicklung von Anwendungen zur Geräteortung. Bluetooth LE kann genutzt werden, um die Anwesenheit eines anderen Geräts in der unmittelbaren Umgebung zu erkennen und zu melden, die Entfernung zwischen den Geräten zu schätzen und die Richtung zu berechnen, in der sich ein anderes Gerät befindet. Diese Funktionen zur Geräteortung wurden bereits für eine Vielzahl von Anwendungen genutzt, darunter digitale Schlüssel, Bestandsverfolgung, „Find My“ und Indoor-Navigation.

Bluetooth Technologie hat sich in ihrer 25-jährigen Geschichte kontinuierlich verbessert. Sie hat einen positiven Evolutionspfad eingeschlagen, der zu einer Reihe bemerkenswerter neuer Funktionen und Verbesserungen der Ergebnisse geführt hat, die mit den Produkten erzielt werden können.

Das Update der Bluetooth-Kernspezifikation enthält eine neue Funktion namens „Bluetooth® Channel Sounding“, die eine sichere Feinortung zwischen zwei Bluetooth-Geräten ermöglicht und Gegenstand dieses Artikels ist. Dieser Artikel soll die Bluetooth-Kernspezifikation weder ersetzen noch als Ersatz dafür dienen.

Bluetooth LE wurde erstmals im Jahr 2010 spezifiziert. Von diesem Zeitpunkt an lassen sich eine Reihe von Schlüsselereignissen in der Entwicklung von Bluetooth LE als Technologie für Standortdienste feststellen.

Im selben Jahr, in dem Bluetooth LE erstmals in die Bluetooth-Kernspezifikation aufgenommen wurde, wurde die erste formelle standortbezogene Bluetooth LE veröffentlicht. Dabei handelte es sich um das Find-Me-Profil.

Das „Find Me“-Profil definiert einen Standardansatz für das Auffinden persönlicher Gegenstände, auch bekannt als „Find My“. Ein Gerät übernimmt die Rolle des „Find Me“-Ortungsgeräts. Dabei handelt es sich in der Regel um ein Smartphone. Andere Geräte, die der Nutzer in der Vergangenheit häufig verlegt hat (Schlüssel mit einem Bluetooth-Schlüsselanhänger sind ein beliebtes Beispiel), werden mit dem „Find Me“-Ortungsgerät gekoppelt und übernehmen jeweils die Rolle eines „Find Me“-Ziels.

Das Zielgerät implementiert ein GATT1 Dienst namens „Immediate Alert Service“.

Wenn der Nutzer Hilfe bei der Suche nach einem verlegten Gerät benötigt, führt er eine Anwendung auf seinem Smartphone aus. Die Anwendung führt ein Geräteerkennungsverfahren durch, indem sie nach Werbepaketen sucht, die von dem vermissten Gerät gesendet werden. Nachdem das Zielgerät gefunden wurde, stellt der Locator eine Verbindung zu ihm her. Die Benutzeroberfläche (UI) der Anwendung zeigt an, dass dies geschehen ist. Der Benutzer drückt dann in der Regel eine Taste auf der Benutzeroberfläche. Dies veranlasst die Anwendung, in das Merkmal "Alarmstufe" zu schreiben, das zum Dienst "Sofortige Alarmierung" gehört. Das Zielgerät reagiert auf die Änderung des Alarmstufenwerts in geeigneter Weise, z. B. mit einem lauten Piepton, blinkenden LEDs oder beidem. An diesem Punkt stellt der Benutzer fest, dass seine Schlüssel die ganze Zeit in der Jackentasche waren, dass sie auf die Rückseite des Sofas gefallen sind oder dass sie sich an einem unvorhersehbaren Ort befinden. In jedem Fall rettet die Technologie von Bluetooth den Tag und den Benutzer, und das verlorene Objekt wird wiedergefunden.

Bluetooth® Find Me ist ein Beispiel für eine Präsenzanwendung. Bluetooth LE wird verwendet, um festzustellen, dass sich das verlorene Gerät in der Nähe befindet, liefert aber keine Angaben zu seiner Richtung oder Entfernung vom Locator.

Bluetooth-Beacons nutzen die Werbefunktion von Bluetooth LE. Bei der Werbung werden kleine Datenpakete gesendet, die jedes Gerät in Reichweite durch Scannen empfangen kann.

Im Jahr 2013 veröffentlichte Apple die Spezifikation für das iBeacon-Format. Dies wurde zu einem beliebten Format für den Inhalt der Nutzdaten, die ein Beacon-Gerät senden würde. Die Daten in einer iBeacon-Nachricht enthalten ein Feld namens TX Power, das einen Wert enthält, der die zu erwartende Signalstärke angibt, wenn sie in einem Abstand von einem Meter von der Bake gemessen wird. Das Vorhandensein des TX Power-Feldes in iBeacon-Nachrichten sowie in anderen vergleichbaren Beacon-Datenformaten, wie z. B. Googles Eddystone, läutete die erste Generation der Bluetooth LE ein.

Diese frühe Version der Bluetooth Entfernungsschätzung verwendete zwei Datenwerte und einige einfache physikalische Verfahren und funktioniert folgendermaßen:

  • Das Feld Sendeleistung in Bakennachrichten liefert einen Referenzleistungspegel in einer bekannten Entfernung, z. B. einem Meter.
  • Der Received Signal Strength Indicator (RSSI), der mit jeder empfangenen Bakennachricht verbunden ist, quantifiziert die Signalstärke am empfangenden Gerät.
  • In der Physik gibt es eine theoretische Beziehung zwischen der Geschwindigkeit, mit der die Signalstärke abnimmt, je weiter sie vom Sender entfernt gemessen wird. Genauer gesagt ist die Signalstärke an einem Empfänger umgekehrt proportional zum Quadrat seiner Entfernung vom Sender.
  • Die Verringerung der gemessenen Signalstärke, wenn wir uns weiter vom Sender entfernen, wird als Pfadverlust oder Dämpfung bezeichnet. Im Fall von iBeacon-Übertragungen ist der Pfadverlust = Sendeleistung - RSSI.
  • Bei Kenntnis eines Referenzleistungspegels in einer bestimmten Entfernung, des gemessenen RSSI einer empfangenen Bakenübertragung und des inversen quadratischen Verhältnisses zwischen Entfernung und Pfadverlust kann die Dämpfung zur Schätzung der Entfernung zwischen der Bake und dem Empfänger verwendet werden.

Abbildung 1

Abbildung 1 - Pfadverlust und Entfernung

Die Möglichkeit, Entfernungen auf diese Weise abzuschätzen, war ein ziemlicher Durchbruch, und Beacons haben sich in allen möglichen Bereichen durchgesetzt, z. B. im Einzelhandel, auf Reisen und in Museen.

Während Beacons für einige Anforderungen hervorragend geeignet waren, sind Entfernungsmessungen auf der Grundlage von RSSI und Pfadverlust für andere Anwendungen nicht genau genug. Die fehlende Angabe der Richtung des Senders ist ebenfalls eine Einschränkung, wenn Standortdaten und nicht nur die Entfernung benötigt werden. Außerdem enthalten die verschiedenen proprietären Bakentypen wie iBeacon keine ausdrücklichen Sicherheitsvorkehrungen.

Im Jahr 2019 enthält die Version 5.1 der Bluetooth Core Specification eine wichtige neue Funktion: Bluetooth Direction Finding.

Die Funktion Bluetooth Direction Finding ermöglicht es Anwendungen, die Richtung eines empfangenen Signals anhand der vom Bluetooth LE Controller durchgeführten Phasenmessungen genau zu berechnen. Es sind zwei Methoden definiert.

Bei der AoA-Methode (Angle of Arrival) verfügt das Empfangsgerät über eine Antennengruppe, und die Messungen des empfangenen Signals, die an verschiedenen Antennen vorgenommen werden, weisen Phasendifferenzen auf, die auf die geringfügig unterschiedlichen Abstände zwischen den einzelnen Antennen und der Einzelantenne des Sendegeräts zurückzuführen sind.

Bei der Angle of Departure (AoD)-Methode verfügt das sendende Gerät über eine Antennengruppe. Das empfangende Gerät hat nur eine einzige Antenne, verfügt aber über Details der Antennengruppe des entfernten Sendegeräts. Dadurch kann es ähnliche Berechnungen anhand von Phasenmessungen an seiner Einzelantenne durchführen.

Abbildung 2

Abbildung 2 - Richtungsbestimmung mit AoA und AoD

Phasenmessungen in Form von In-Phase- und Quadratur-Abtastungen (IQ) werden vomcontroller an die Anwendung weitergegeben. IQ-Samples bestehen aus Paaren von Phasen- und Amplitudenwerten, anhand derer die Anwendung die Richtung berechnen kann, in der der Sender zu finden ist.

Abbildung 3

Abbildung 3 - IQ-Stichprobe

Die neue Bluetooth®-Channel-Sounding-Funktion ermöglicht die Entwicklung von Produkten, die die Entfernung zwischen zwei Bluetooth-Geräten mit einer deutlich höheren Genauigkeit berechnen können, als dies mit der Methode der ersten Generation auf Basis von RSSI und Pfadverlust jemals möglich war. Sie funktioniert auf völlig andere Weise und umfasst eine Reihe von Sicherheitsvorkehrungen, die verschiedene Arten von Risiken mindern.

Es wird erwartet, dass Bluetooth® Channel Sounding für Find-My-Lösungen, digitale Schlüsselprodukte und viele weitere mit Bluetooth verbundene Geräte von Nutzen sein wird.

Bevor wir uns mit dem Bluetooth® Channel Sounding in Bluetooth LE befassen, werden in diesem Abschnitt zunächst einige theoretische Grundlagen zu dieser Funktion erläutert. Leser, die bereits mit dem Thema vertraut sind, sollten zu Abschnitt 3, Bluetooth® Channel Sounding, übergehen.

Radio ist eine Form der elektromagnetischen Strahlung und wird von Physikern oft als Welle beschrieben. Radiowellen haben verschiedene grundlegende Eigenschaften, deren Verständnis wichtig ist.

Die Amplitude einer Funkwelle entspricht der Energie, die sie transportiert, oder, allgemeiner ausgedrückt, der Signalstärke. Sie oszilliert über und unter einem zentralen Referenzwert. Diese Über- und Unterschwingung wiederholt sich regelmäßig und periodisch. Ein einzelner Übergang bis zur Spitzenamplitude, hinunter zum Tiefpunkt und wieder hinauf zum Ausgangsreferenzwert wird als Wellenzyklus bezeichnet. In Abbildung 4 sind zwei vollständige Wellenzyklen dargestellt, wobei die Amplitude auf der vertikalen Skala angegeben ist. Das Ausmaß des ersten Wellenzyklus ist hervorgehoben.

Abbildung 4

Abbildung 4 - Wellenzyklus mit Amplitude auf der vertikalen Skala

Ein einzelner Wellenzyklus hat eine physikalische Länge. Die Wellenlänge hängt von der Frequenz ab und liegt im Fall der Bluetooth Technologie zwischen etwa 12,0 cm und etwa 12,5 cm.

Abbildung 5

Abbildung 5 - Wellenlänge

Radiowellen breiten sich im Vakuum mit Lichtgeschwindigkeit aus2. Die Anzahl der vollständigen Wellenzyklen, die in einer Sekunde einen festen Punkt im Raum passieren, wird als Frequenz bezeichnet. Die Frequenz wird in Hertz (Hz) gemessen, wobei 1 Hz einem Wellenzyklus pro Sekunde entspricht. Ein Bluetooth-Signal arbeitet mit deutlich höheren Frequenzen, die in Gigahertz (GHz) gemessen werden.

Abbildung 6

Abbildung 6 - Frequenz

Punkte, die irgendwo innerhalb eines einzelnen Wellenzyklus liegen, werden durch ein Winkelmaß ausgedrückt, das als Phase bezeichnet wird. Die Phasenwerte haben einen Bereich von 0 - 360 Grad oder 0 - 2π Radiant. Abbildung 7 veranschaulicht das Phasenkonzept mit einer Reihe von Phasenwerten (ausgedrückt im Bogenmaß), die an den entsprechenden Punkten des Wellenzyklus markiert sind.

Abbildung 7

Abbildung 7 - Phase

Frequenz (f) und Wellenlänge (λ) stehen in umgekehrtem Verhältnis zueinander. Je kürzer die Wellenlänge, desto höher die Frequenz und umgekehrt. Darüber hinaus ist die Beziehung zwischen diesen beiden Größen und der Lichtgeschwindigkeit (c) durch eine Reihe einfacher Formeln definiert, die es ermöglichen, jede der drei Größen aus den bekannten Werten der beiden anderen zu berechnen. Die Lichtgeschwindigkeit ist eine Konstante mit einem Wert von 299792458 m/s.

FormelVerwendung
2405 Formeln zur Kanalvermessung 1Berechne eine unbekannte Wellenlänge aus einer bekannten Frequenz und der konstanten Lichtgeschwindigkeit.
2405 Formeln zur Kanalmessung 2Berechne eine unbekannte Frequenz aus einer bekannten Wellenlänge und der konstanten Lichtgeschwindigkeit.
2405 Formeln zur Fahrwasservermessung 3Berechne die Lichtgeschwindigkeit anhand eines Frequenzwerts und der entsprechenden Wellenlänge.

Tabelle 1 - Frequenz- und Wellenlängenformeln

Die beiden am häufigsten verwendeten Methoden in der drahtlosen Entfernungsmessung sind das phasenbasierte Ranging (PBR) und das Round-Trip-Timing (RTT). Die Theorie, die hinter beiden Methoden steht, wird in diesem Abschnitt umrissen.

Es ist einfach, sich die Entfernung als Funktion der Wellenlänge eines Signals in Form der Anzahl der Wellenzyklen vorzustellen, die das Signal benötigt, um von einem Sender zu einem Empfänger zu gelangen.

Abbildung 8

Abbildung 8 - Abstand von Wellenlänge und Wellenzyklen

In Abbildung 8 ist das auf der linken Seite der Abbildung gesendete Signal eindeutig zehneinhalb Wellenlängen vom Empfänger entfernt. Wenn wir die Frequenz des Signals kennen, kennen wir auch die Wellenlänge. Und wenn wir die Wellenlänge kennen, können wir anhand der Anzahl der Wellenzyklen durch Multiplikation die Entfernung zwischen den beiden Geräten berechnen.

Beträgt die Sendefrequenz beispielsweise 2402 MHz, so beträgt die Wellenlänge 12,48095162 cm. Dieser Wert ergibt sich aus der Division der Lichtgeschwindigkeit durch die Frequenz.

Das sendende Gerät hat jedoch keine Möglichkeit, die Anzahl der Wellenzyklen zwischen seiner Antenne und derjenigen des Empfängers zu kennen. Die PBR-Methode beinhaltet daher eine Technik, die es ermöglicht, die Entfernung zwischen Sender und Empfänger auf der Grundlage anderer Daten abzuleiten. Das funktioniert folgendermaßen.

Wir bezeichnen das Gerät, das eine Entfernungsmessung durchführen möchte, als Gerät A. Das andere Gerät ist Gerät B.

  1. Gerät A sendet ein Signal mit einer bekannten Frequenz, f1. Die Anfangsphase dieses Signals ist Gerät A bekannt, und zur Veranschaulichung nehmen wir an, dass dieses Signal mit einer Phase von null Radiant gesendet wird.
  2. Gerät B empfängt das Signal f1 an seiner Antenne und notiert seine Phase, die wir als Empfangsphase bezeichnen.
  3. Gerät B sendet dann das empfangene Signal an Gerät A zurück, indem es auf der gleichen Frequenz f1 sendet und vor allem sicherstellt, dass die Anfangsphase dieser Übertragung genau mit der Empfangsphase des von Gerät A empfangenen Signals übereinstimmt, was dazu führt, dass das Rücksignal eine Fortsetzung des Signals von Gerät A in Bezug auf Phase und Frequenz ist.
  4. Gerät A misst die Empfangsphase des von Gerät B ankommenden Signals. Wir nennen diesen Wert Pf1.

Abbildung 9

Abbildung 9 - Zweiwegereichweite mit Frequenz f1

Gerät A wählt nun eine neue Frequenz, f2, und die vier Schritte werden wiederholt. Das Ergebnis dieser zweiten Ausführung der vier Schritte ist eine neue Phasenmessung des von Gerät B empfangenen Signals durch Gerät A, die wir Pf2 nennen.

Abbildung 10

Abbildung 10 - Zweiwegereichweite mit Frequenz f2

Das Gerät A berechnet nun die Differenz zwischen den für f1 und f2 gemessenen Phasenwerten, d. h. es berechnet Pf2 - Pf1. Mit der Phasendifferenz und der Differenz zwischen den Frequenzen f1 und f2 lässt sich nun der Abstand nach folgender Formel berechnen:

2405 Channel Sounding Formeln 4

Dabei ist c die Lichtgeschwindigkeit, (Pf2 – Pf1) die Phasendifferenz und (f2 – f1) der Frequenzabstand, und r ist die Entfernung zwischen den beiden Geräten, die durch die Zwei-Wege-Entfernungsmessung ermittelt wird.

Dieser Ansatz, bei dem das zweite Gerät ein Signal an das Ursprungsgerät zurücksendet, damit es Phasenmessungen vornehmen kann, wird als Zweiwege-Entfernungsmessung bezeichnet.

Die reale Welt kann Herausforderungen mit sich bringen, die in dieser Erklärung einiger grundlegender Theorien nicht berücksichtigt wurden. Auf einige dieser Herausforderungen werden wir später in diesem Abschnitt eingehen.

Lassen Sie uns ein einfaches Beispiel ausprobieren, um dies in Aktion zu sehen. Wir gehen von einem eher künstlichen Fall aus, bei dem wir den Abstand zwischen den beiden Geräten bereits kennen, damit wir sehen können, wie die Formel korrekt zum gleichen Ergebnis kommt.

Abbildung 11 zeigt zwei Geräte, Gerät A und Gerät B, die genau 1,248095162 Meter voneinander entfernt sind. Gerät A hat ein Signal mit einer Frequenz von 2,402 MHz und einer Wellenlänge von 12,48095162 cm ausgesendet. Durch einen wahrhaft bemerkenswerten Zufall liegen die beiden Geräte somit in einem Abstand voneinander, der genau dem Zehnfachen dieser Wellenlänge entspricht.

Abbildung 9

Abbildung 11 - Geräte mit genau zehn f1-Wellenzyklen Abstand

Angenommen, Gerät A sendet dieses Signal mit einer Anfangsphase von Null, und da Gerät B ein exaktes Vielfaches der Wellenlänge entfernt ist, ist die Empfangsphase bei Gerät B ebenfalls Null. Wie gezeigt, sendet Gerät B ein Signal zurück an Gerät A, wobei es die Anfangsphase auf denselben Wert der Empfangsphase einstellt wie das ursprünglich empfangene Signal, so dass wir effektiv eine Fortsetzung haben.

Abbildung 12 zeigt das zweite Signal, das von Gerät A mit der Frequenz f2 gesendet wird. Diesmal ist die gewählte Frequenz höher als f1 und beträgt f2 = 2,432 MHz. Die Anfangsphase bei Gerät A ist erneut Null.

Abbildung 10

Abbildung 12 - Geräte im Abstand von etwas mehr als zehn f2-Wellenzyklen

Die Wellenlänge von f2 ist kürzer als die Wellenlänge von f1, weil f2 eine höhere Frequenz hat. Dies führt dazu, dass die Empfangsphase an Gerät B nicht gleich Null ist. Tatsächlich beträgt sie 0,784744210 Radiant. Wenn das Signal von Gerät B mit der gleichen Anfangsphase erneut gesendet und von Gerät A empfangen wird, beträgt die Phase 1,56948842 Radiant.

Gerät A hat nun alle Informationen, die es braucht, um die Entfernung zu Gerät B zu berechnen. Die Frequenzdifferenz beträgt 30 MHz, und die Phasendifferenz beträgt 1,56948842. Setzt man diese Werte in die Formel für r ein, ergibt sich eine Entfernung von 2,49 Metern mit zwei Dezimalstellen. Dies gilt jedoch für den Hin- und Rückweg von Gerät A zu Gerät B und wieder zurück, so dass die tatsächliche Entfernung zwischen den beiden Geräten die Hälfte dieses Wertes beträgt, d. h. 1,24 Meter. Dies ist das erwartete Ergebnis und zeigt, wie die Formel für r, die auf der Lichtgeschwindigkeit und den bekannten Phasen- und Frequenzabständen der beiden übertragenen Signale basiert, zur genauen Berechnung der Entfernung zwischen den beiden Geräten verwendet werden kann.

Es gibt jedoch eine Komplikation, die in der Formel für die Phase und die modulare Division von (2 * π) angedeutet wird. Die Phasenwerte ändern sich mit zunehmender Entfernung, aber sie sind periodisch, d. h., wenn ein Phasenwert (2 * π) Radiant erreicht, wird er auf Null zurückgesetzt, und die gleichen Werte beginnen sich zu wiederholen. Dies kann zu Mehrdeutigkeiten bei der Bestimmung der Entfernung zwischen zwei Geräten führen, da ein und derselbe Wert der Phasendifferenz mehr als eine Entfernung implizieren kann. Dies wird als Abstandsmehrdeutigkeit bezeichnet.

Wann genau es zu einer Entfernungsmehrdeutigkeit kommt, hängt vom Frequenzabstand ab. Im Allgemeinen tritt eine Entfernungsmehrdeutigkeit bei größeren Frequenzunterschieden früher auf. Glücklicherweise lässt sich dieses Problem durch den Einsatz von PBR in Verbindung mit der zweiten Entfernungsmessmethode, dem Round-Trip-Timing, beheben.

Die Theorie, die hinter der Verwendung der Umlaufzeit zur Berechnung der Entfernung zwischen zwei Geräten steht, ist sehr einfach. Funkübertragungen bewegen sich mit Lichtgeschwindigkeit, einer bekannten Konstante. Wenn wir also die Zeit berechnen können, die eine Übertragung zwischen zwei Geräten benötigt, können wir auch die Entfernung berechnen. Dazu müssen wir nur die Laufzeit mit der Lichtgeschwindigkeit multiplizieren.

Wenn ein HF-Signal beispielsweise 20 Nanosekunden braucht, um von Gerät A zu Gerät B und zurück zu Gerät A zu gelangen, ergibt die einfache Multiplikation der Lichtgeschwindigkeit mit 20 Nanosekunden eine bidirektionale Gesamtdistanz von knapp sechs Metern und damit eine Entfernung zwischen den beiden Geräten von knapp drei Metern.

Bidirektionaler Abstand 2r = c * 0.00000002

wobei c die Lichtgeschwindigkeit (299792458 m/s) und 0,00000002 die bidirektionale Flugzeit (ToF) in Sekunden ist. Daraus ergibt sich das folgende Ergebnis:

2r = 299792458 * 0,00000002
= 5,99584916

und daher ist der Abstand zwischen Gerät A und Gerät B

2.99792458 Meter

Aber während diese Grundformel korrekt ist, ist ihre Anwendung im Zusammenhang mit Bluetooth etwas komplizierter, und die bisher vorgestellte Theorie ist unvollständig.

Das Formulieren und Senden eines HF-Signals nimmt ebenso Zeit in Anspruch wie das Empfangen, Verarbeiten und Senden der Rückmeldung auf dem Hin- und Rückweg. Ein Gerät braucht etwa 200 Mikrosekunden, um ein Paket zu formulieren und zu senden. Wenn man bedenkt, dass Funkwellen in einer einzigen Mikrosekunde knapp 300 Meter zurücklegen können, können diese scheinbar kurzen Zeitspannen im Zusammenhang mit Entfernungsmessungen von großer Bedeutung sein.

2405 Channel Sounding Abbildung 13

Abbildung 13 - RTT-Aufschlüsselung (nicht maßstabsgetreu - Signalinhalt nicht repräsentativ)

Augenblick in der ZeitErläuterung
ToDAZeitpunkt der Übertragung durch Gerät A. Dies ist der Zeitpunkt, zu dem das Signal von Gerät A über Funk gesendet wird.
ToABAnkunftszeit bei Gerät B. Dies ist der Zeitpunkt, zu dem das Signal an der Antenne von Gerät B eintrifft.
ToDBZeitpunkt der Übertragung von Gerät B. Dies ist der Zeitpunkt, zu dem Gerät B die Daten drahtlos überträgt.
ToAAAnkunftszeit bei Gerät A. Dies ist der Zeitpunkt, zu dem das Signal von Gerät B an der Antenne von Gerät A empfangen wird.

Die grün gepunkteten Linien stellen die verstrichene Zeit dar, in der keines der beiden Signale in der Luft ist.

Die Round-Trip-Zeit (RTT) lässt sich anhand der in Abbildung 13 dargestellten Zeitpunkte wie folgt ausdrücken:

RTT = 2 * ToF = (ToAA - ToDA) - (ToDB - ToAB)

Damit Gerät A die RTT berechnen kann, muss es die Durchlaufzeit bei Gerät B kennen (d. h.ToDBToAB). Theoretisch gibt es mehrere Möglichkeiten, wie dies funktionieren könnte. In der Praxis besteht die einfachste Lösung darin, dass sich Gerät A und Gerät B im Voraus auf eine feste Bearbeitungszeit einigen. Gerät B muss dann garantieren, dass es seine Verarbeitung abschließt und genau zum Ablauf dieser Bearbeitungszeit seine Antwort übermittelt. Gerät A verwendet dann diesen im Voraus vereinbarten Wert für (ToDBToAB).

Die Theorie, die sowohl für die PBR- als auch für die RTT-Methode der Entfernungsmessung vorgestellt wurde, reicht aus, um einen ersten Einblick in das Thema zu gewinnen, und ist in einem rein theoretischen Kontext vollständig. In der realen Welt ist die genaue Entfernungsmessung jedoch komplizierter. Es gibt mehrere Herausforderungen, die bewältigt werden müssen, wenn zufriedenstellende Ergebnisse mit realen Geräten in realen Situationen erzielt werden sollen.

Beispiele für Herausforderungen, die eine drahtlose Entfernungsmesstechnik bewältigen sollte, sind:

  • Die Komplikationen, die sich aus der Mehrwegeausbreitung von Funksignalen ergeben
  • Die Genauigkeit und Stabilität der Frequenz der erzeugten Signale
  • die Stabilität der internen Uhren sowie die Genauigkeit und Auflösung der Zeitstempel
  • Mehrdeutigkeit der Entfernung bei der phasenbasierten Entfernungsmessung
  • Sicherheit

Im weiteren Verlauf dieses Artikels werden wir uns mit der hochpräzisen Entfernungsmessung in der Bluetooth Technologie befassen und einen Eindruck davon gewinnen, wie die Technologie so konzipiert wurde, dass sie auch bei solchen Problemen in der Praxis effektiv funktioniert.

Bluetooth® Channel Sounding bietet das Potenzial für Produkte, Entfernungsmessungen mit weitaus höherer Genauigkeit durchzuführen als bisher möglich war. Wie genau die Messungen sind, hängt von den Umgebungsbedingungen ab und davon, wie die Bluetooth® Channel Sounding von der Anwendungsschicht genutzt wird. Sie hängt auch von den Implementierungsentscheidungen ab, deren Einzelheiten nicht in der Bluetooth-Kernspezifikation enthalten sind, die aber die Qualität der in den Berechnungen verwendeten Rohdaten verbessern können.

Bluetooth® Channel Sounding bietet Anwendungen ein flexibles Toolkit für die Entfernungsmessung, wobei eine Reihe ganz unterschiedlicher Konfigurationen möglich sind. Die Spezifikation unterstützt sowohl die phasenbasierte Entfernungsmessung (Phase-based Ranging, PBR) als auch die Entfernungsmessung mit Round-Trip-Timing (RTT). In den meisten Fällen wird erwartet, dass PBR als primäre und genaueste Methode der Entfernungsmessung verwendet wird, während RTT daneben eingesetzt wird, um zusätzliche Sicherheit zu bieten.

PBR, wie es von Bluetooth® Channel Sounding verwendet wird, kann Entfernungen von bis zu 150 Metern messen, bevor eine Mehrdeutigkeit der Entfernung auftritt. Durch die Verwendung von RTT zusätzlich zu PBR können Anwendungen Entfernungsmehrdeutigkeiten erkennen und beseitigen und somit größere Entfernungen messen.

Anwendungen können unterschiedliche Prioritäten in Bezug auf Genauigkeit, Sicherheit, Latenzzeit und Stromverbrauch setzen. Die Konfigurierbarkeit der Bluetooth® Channel Sounding bietet Anwendungen die Möglichkeit, viele der wichtigsten Funktionen und Verhaltensweisen des Systems zu steuern oder zu beeinflussen, sodass der Betrieb auf die richtigen Prioritäten für die jeweilige Anwendung ausgerichtet ist.

In diesem Abschnitt werden wir die Bluetooth® Channel Sounding und die zentralen Bluetooth-Stack-Funktionen untersuchen, von denen sie abhängt.

Die Bluetooth® Channel Sounding definiert zwei Geräterollen. Die erste ist der Initiator und die zweite ist der Reflektor.

Der Initiator ist das Gerät, das die Entfernung von sich zu einem anderen Gerät berechnen möchte. Das andere Gerät ist der Reflektor.

Sowohl der Initiator als auch der Reflektor können das Bluetooth® Channel Sounding einleiten, auf das später in diesem Dokument näher eingegangen wird.

Abbildung 14

Abbildung 14 - Rollen

Bluetooth® Channel Sounding findet in einer Eins-zu-Eins-Topologie statt, wobei die Kommunikation zwischen einem Gerät in der Initiatorrolle und einem Gerät in der Reflektorrolle stattfindet.

Es ist zu beachten, dass die Rolle des Bluetooth® Channel Sounding Initiators entweder von dem Gerät übernommen werden kann, das in der Rolle der Verbindungsschicht LE Central oder als LE Peripheriegerät agiert. Dasselbe gilt für die Rolle des Bluetooth® Channel Sounding Reflectors, die entweder vom LE Central-Gerät oder vom LE Peripheral-Gerät übernommen werden kann.

Geräte, die Bluetooth® Channel Sounding verwenden, können eine Antennengruppe enthalten. Dies bietet eine Reihe von alternativen Pfaden für den Austausch der Bluetooth® Channel Sounding , die für die phasenbasierte Entfernungsmessung verwendet werden, und kann die Genauigkeit der Entfernungsmessungen verbessern, indem die Auswirkungen der Mehrwegeausbreitung verringert werden.

Bluetooth® Channel Sounding erfordert, dass Entfernungen von der Anwendungsschicht anhand von Daten berechnet werden, die von der Bluetooth-Steuereinheit bereitgestellt werden. Diese Daten werden von der Steuereinheit während der Ausführung des Bluetooth® Channel Sounding erfasst und sind das Ergebnis des Signalaustauschs und von Low-Level-Messungen, die an jedem Gerät vorgenommen werden. Die Daten werden in HCI-Ereignissen an die Anwendungsschicht weitergeleitet.

Die Anwendungsschicht ist auch dafür verantwortlich, dem Bluetooth-Controller Konfigurationsmöglichkeiten und -präferenzen zur Verfügung zu stellen, die für die Einrichtung einer Bluetooth® Channel Sounding verwendet werden, die von den Anwendungen auf den beiden Geräten unterstützt wird und für diese geeignet ist.

Damit zwei Geräte an einem System teilnehmen können, bei dem ein Gerät die Rolle des Initiators und das andere die Rolle des Reflektors einnimmt, müssen beide über einen Bluetooth LE verfügen, der die Funktion Bluetooth® Channel Sounding unterstützt.

Abbildung 15

Abbildung 15 - Bluetooth® Channel Sounding und der Bluetooth-Stack

Die Bluetooth-Kernspezifikation definiert die Architektur der Bluetooth-Technologie aus verschiedenen Blickwinkeln. Im ersten Abschnitt wird eine allgemeine Datenübertragungsarchitektur definiert.

Unter Bezugnahme auf die Definitionen in der Bluetooth Core Specification werden die Begriffe in Abbildung 16 wie folgt beschrieben:

  • L2CAP steht für „Logical Link Control and Adaptation Protocol“. Ein L2CAP-Kanal ist eine logische Verbindung auf L2CAP-Ebene zwischen zwei Geräten, die einer einzelnen Anwendung oder einem Protokoll einer höheren Schicht dient.
  • Eine logische Verbindung ist „die unterste architektonische Ebene, die dazu dient, den Clients des Bluetooth-Systems unabhängige Datentransportdienste bereitzustellen“.
  • Ein logischer Transport befasst sich mit Themen wie Sende- und Empfangsroutinen, Flusssteuerungsmechanismen, Bestätigungsprotokollen und der Identifizierung von Verbindungen. Ein logischer Transport kann synchron, asynchron oder isochron sein.
  • Eine physikalische Verbindung ist eine Verbindung zwischen Geräten, die auf der Ebene der Verbindungsschicht hergestellt wird. Die Verbindungsschicht ist eine der Schichten des Bluetooth-Protokollstacks.
  • Physikalische Kanäle definieren Muster der Belegung von HF-Trägern durch ein oder mehrere kommunizierende Geräte.
  • Unter „Physical Transports“ versteht man allgemein gültige Aspekte wie die Struktur von Funkpaketen und Modulationsverfahren, die zur Codierung digitaler Daten für die Übertragung mittels Funksignalen als Träger dienen.

Die generische Datentransportarchitektur gilt sowohl für Bluetooth LE als auch für Bluetooth Basic Rate/Enhanced Data Rate (BR/EDR).

Abbildung 17 zeigt eine Teilmenge der Datentransportarchitektur. Blau hervorgehoben sind ein neuer physikalischer Kanaltyp und ein neuer physikalischer Verbindungstyp, die für Channel Sounding definiert wurden.

Abbildung 17

Abbildung 17 - CS und die Datentransportarchitektur

Der physischen Verbindung LE Channel Sounding ist kein logischer Transporttyp oder logischer Verbindungstyp zugeordnet.

Die umfassendere Art, Bluetooth LE zu definieren, ist die des gesamten Protokollstapels und seiner Schichten. Ein Großteil der Bluetooth-Kernspezifikation ist der Definition der einzelnen Schichten gewidmet. In Abbildung 18 ist der Bluetooth LE dargestellt.

Abbildung 18

Abbildung 18 - Der Bluetooth LE

Tabelle 2 gibt einen Überblick über die Zuständigkeiten der einzelnen Schichten des Bluetooth LE .

EbeneZuständigkeiten
Generisches Zugriffsprofil (GAP)Legt Betriebsmodi und Verfahren fest, die im nicht verbundenen Zustand verwendet werden können, beispielsweise die Nutzung von Advertising für die verbindungslose Kommunikation und die Geräteerkennung. Legt Sicherheitsstufen und einige Standards für Benutzeroberflächen fest.
Generisches Attributprofil (GATT)Definiert übergeordnete Datentypen, die als Dienste, Merkmale und Deskriptoren bezeichnet werden, anhand der zugrunde liegenden Attribute in der Attributtabelle.
Attributprotokoll (ATT)Ein Protokoll, das zur Ermittlung und Nutzung von Daten dient, die vom Server in einer logischen Datenstruktur, der sogenannten Attributtabelle, gespeichert sind.
Security Manager Protocol (SMP)Ein Protokoll, das bei der Durchführung von Sicherheitsverfahren wie dem Pairing verwendet wird.
Logical Link Control and Adaptation Protocol (L2CAP)Bietet Datenkanal-Multiplexing-Dienste über HF-Verbindungen, die Segmentierung und Wiederzusammensetzung großer SDUs sowie erweiterte Funktionen zur Fehlererkennung und Wiederholung.
Host-Controller-Schnittstelle (HCI)Bietet eine Schnittstelle für die bidirektionale Übertragung von Befehlen und Daten zwischen der Host-Komponente und dem Controller.
Isochronous Adaptation Layer (ISOAL)Ermöglicht die Verwendung unterschiedlicher Frame-Dauern durch Geräte, die isochrone Kanäle nutzen.
VerbindungsschichtDefiniert Paketformate für die Luftschnittstelle, Verfahren zur Bitstream-Verarbeitung wie Fehlerprüfung, eine Zustandsmaschine sowie Protokolle für die drahtlose Kommunikation und die Verbindungssteuerung. Definiert verschiedene Möglichkeiten zur Nutzung des zugrunde liegenden Funkmoduls für verbindungslose, verbindungsorientierte und isochrone Kommunikation, die als logische Transporte bezeichnet werden.
Physikalische SchichtDefiniert alle Aspekte der Bluetooth-Technologie, die mit der Nutzung von Funk (RF) zusammenhängen, einschließlich Modulationsverfahren, Frequenzbändern, Kanalnutzung sowie Sender- und Empfängereigenschaften. Es werden drei Kombinationen von Parametern der physikalischen Schicht definiert, die als LE 1M-, LE 2M- und LE 2M 2BT-PHYs bezeichnet werden. LE 2M 2BT wurde erstmals in der Version 6.0 der Bluetooth Core Specification definiert und darf nur mit Bluetooth® Channel Sounding verwendet werden. Ein weiterer PHY, LE Coded, ist definiert. Trotz des Namens verwendet LE Coded dieselben Parameter der physikalischen Schicht wie LE 1M, wendet jedoch Vorwärtsfehlerkorrekturcodierung und Musterzuordnung in der Verbindungsschicht an.

Tabelle 2 - Zusammenfassung der wichtigsten Aufgaben und Funktionen der einzelnen Schichten des Bluetooth LE

Die Abschnitte „Physical Layer“, „Link Layer“, „Host Controller Interface“ und „Generic Access Profile“ der Bluetooth-Kernspezifikation sind alle von der Einführung des Bluetooth® Channel Sounding betroffen. In Abschnitt 4 wird dies näher erläutert.

Bevor das Bluetooth® Channel Sounding gestartet werden kann, muss sich das Gerät in der Rolle LE Central der Verbindungsschicht mit dem Gerät in der Rolle LE Peripheral der Verbindungsschicht verbinden. Anschließend wird die Sicherheit der aufgebauten LE-ACL-Verbindung gestartet, damit sie einen sicheren Transport für den Austausch verschiedener Link Layer Protocol Data Units (PDUs) während mehrerer Verfahren zur Vorbereitung und anschließenden Einleitung des Bluetooth® Channel Sounding bieten kann.

Die wichtigsten Vorgänge, die das Bluetooth® Channel Sounding vorbereiten und einleiten, sind:

  1. Sicherheit Start
  2. Austausch von Fähigkeiten
  3. Konfiguration
  4. Start

Nicht alle diese Schritte sind zwingend erforderlich; dies hängt unter anderem davon ab, ob die beiden Geräte zuvor Informationen ausgetauscht haben, die möglicherweise zwischengespeichert wurden. Eine mögliche Abfolge von Schritten und den dazugehörigen PDUs ist in Abbildung 19 dargestellt.

Abbildung 19

Abbildung 19 - Ein möglicher Ablauf des CS-Einleitungsverfahrens

Bluetooth® Channel Sounding hat seine eigenen Sicherheitsfunktionen, die sich von denen der LE-ACL-Verbindung unterscheiden, über die die Initialisierungsverfahren ausgeführt werden. Die Bluetooth® Channel Sounding Startprozedur ermöglicht den beiden Geräten einen sicheren Austausch von Parametern, die später in den Bluetooth® Channel Sounding Sicherheitsfunktionen verwendet werden.

Das Bluetooth® Channel Sounding Security Start-Verfahren beginnt damit, dass die LE-Zentrale drei Zufallszahlen erzeugt und diese in einer LL_CS_SEC_REQ-PDU an das LE-Peripheriegerät sendet. Das LE-Peripheriegerät generiert drei eigene Zufallszahlen, die denselben Regeln wie die Zufallszahlen der Zentrale unterliegen, und sendet sie in einer LL_CS_SEC_RSP-PDU zurück an die Zentrale.

Die von den einzelnen Geräten erzeugten Zufallszahlen sind in Tabelle 3 aufgeführt und beschrieben.

NameBeschreibungLänge (Bits)
CS_IV_CVon der Zentrale generierter Initialisierungsvektor.64
CS_IN_CVon der Zentrale generierter Instanziierungs-Nonce.32
CS_PV_CPersonalisierungsvektor, erstellt von der Zentrale.64
CS_IV_PVom Peripheriegerät generierter Initialisierungsvektor.64
CS_IN_PVom Peripheriegerät generierter Instanziierungs-Nonce.32
CS_PV_PVom Peripheriegerät erzeugter Personalisierungsvektor.64

Tabelle 3 - CS-Sicherheitsparameter

Wenn beide Geräte im Besitz beider Sätze von Bluetooth® Channel Sounding sind, werden die Werte jedes Zentral-/Peripheriepaars von den jeweiligen Verbindungsschichten miteinander verknüpft. Dies führt dazu, dass beide Geräte die gleichen Werte für die drei Bluetooth® Channel Sounding Sicherheitsparameter CS_IV, CS_IN und CS_PV besitzen.

Die Bluetooth® Channel Sounding zweier Geräte können sehr unterschiedlich sein, und damit vor dem Start eine gegenseitig unterstützte Konfiguration gefunden werden kann, müssen die beiden Geräte jeweils im Besitz von Informationen über die Fähigkeiten des anderen Gerätes sein.

Der Austausch von Fähigkeiten wird erreicht, indem ein Gerät seine Angaben in einer LL_CS_CAPABILITIES_REQ-PDU sendet und das andere Gerät mit seinen Angaben in einer LL_CS_CAPABILITIES_RSP-PDU antwortet. Ein Gerät kann Capabilities-Daten, die es zuvor von einem anderen Gerät erhalten hat, zwischenlagern und sich daher dafür entscheiden, keine Capabilities mit dem anderen Gerät auszutauschen. Dieses Verfahren kann jedoch von jedem Gerät initiiert werden.

Beispiele für mögliche Unterschiede bei den Funktionen sind die PHY-Unterstützung, die RTT-Genauigkeit und die Bluetooth®-Channel-Sounding-Modi3 , Unterstützung für Angriffserkennung sowie die maximale Anzahl unterstützter Antennenpfade.

Dieses Verfahren umfasst den Austausch von LL_CS_CONFIG_REQ und LL_CS_CONFIG_RSP PDUs. Im Wesentlichen ermöglicht dieses Verfahren den Geräten unter Verwendung der zuvor ausgetauschten Fähigkeiten die Auswahl der spezifischen Konfiguration, die verwendet werden soll.

Es können mehrere Konfigurationsparametersätze gepflegt werden. Jeder dieser Konfigurationen wird vom Host eine Kennung zugewiesen. Diese Kennung muss unter den von diesem Gerätepaar verwendeten Kennungen eindeutig sein und kann verwendet werden, um während der Verbindungsschichtverfahren auf einen bestimmten Parametersatz zu verweisen.

Die Anwendung auf dem Gerät, das die PDU LL_CS_CONFIG_REQ sendet, kann wählen, welche der Rollen Initiator oder Reflektor sie übernehmen möchte. Das andere Gerät antwortet mit LL_CS_CONFIG_RSP und muss die andere Rolle übernehmen.

Fractional Frequency Offset Actuation Error (FAE) ist ein Maß für die Differenz zwischen einer erzeugten Frequenz und der erwarteten oder gewünschten Frequenz, ausgedrückt in Parts Per Million (ppm). Alle Geräte weisen in dieser Hinsicht einen gewissen Grad an Ungenauigkeit auf, und in der Regel variiert ihr Ausmaß je nach verwendetem HF-Kanal.

Um möglichst genaue Entfernungsmesswerte zu erzielen, verfügt ein Gerät, das Bluetooth® Channel Sounding unterstützt, möglicherweise über eine Datentabelle, die als „Mode-0-FAE-Tabelle“ bezeichnet wird. Diese Tabelle enthält FAE-Werte für jeden Kanal und wird während des Herstellungsprozesses festgelegt.

Das Verfahren Mode-0 FAE Table Request ermöglicht es einem Initiator, die Mode-0 FAE-Tabelle eines Reflectors anzufordern. Dazu sendet der Initiator eine LL_CS_FAE_REQ PDU, auf die der Reflector mit einer LL_CS_FAE_RSP PDU antwortet, die seine FAE-Tabelle enthält.

Die einmal erfasste FAE-Tabelle kann für die künftige Verwendung mit demselben Reflektor gespeichert werden, so dass dieses Verfahren für ein bestimmtes Gerätepaar nur einmal ausgeführt werden muss.

Wenn die Bluetooth® Channel Sounding Sicherheit gestartet wurde, die Geräte im Besitz von Informationen über die Fähigkeiten des jeweils anderen sind, der Initiator über die Mode-0 FAE-Tabelle des Reflektors verfügt (sofern er eine hat) und die Geräte sich auf eine geeignete Konfiguration geeinigt haben, kann das Channel Sounding Startverfahren eingeleitet werden. Dies geschieht über die PDUs LL_CS_REQ, LL_CS_RSP und LL_CS_IND.

Die LL_CS_REQ- und LL_CS_RSP-PDUs enthalten von jedem Gerät vorgeschlagene Zeit- und Strukturparameter. Diese Parameter bestimmen die Art und Weise, wie die Zeit aufgeteilt wird und wie sie während des Bluetooth® Channel Sounding genutzt wird. Eine LL_CS_IND-PDU wird von dem Gerät in der zentralen Rolle nach dem Empfang einer LL_CS_REQ- oder LL_CS_RSP-PDU vom Peripheriegerät gesendet. Die LL_CS_IND zeigt an, dass das Bluetooth® Channel Sounding nun beginnen soll, und enthält Parameterwerte, die für beide Geräte auf der Grundlage der Vorschläge in den zuvor ausgetauschten PDUs akzeptabel sind.

Der Bluetooth®-Kanalabtastvorgang beginnt, nachdem der Startvorgang für die Bluetooth®-Kanalabtastung abgeschlossen ist. Dabei handelt es sich um den Mechanismus, über den die beiden Geräte HF-Signale austauschen, um Messungen durchzuführen, die von einer Anwendung für Entfernungsberechnungen genutzt werden können.

In einer ACL-Verbindung können Pakete während eines Verbindungsereignisses übertragen werden. Das Timing der Verbindungsereignisse basiert auf dem Wert des Verbindungsintervallparameters für diese ACL-Verbindung. Während eines Verbindungsereignisses übertragen die Zentrale und die Peripheriegeräte abwechselnd jeweils ein Paket, wobei die Zentrale zuerst sendet und das Peripheriegerät antwortet. Je nach anderen Verbindungsparametern kann es dem Peripheriegerät gestattet sein, nur auf eine Teilmenge von Paketen zu antworten, und der Zentrale kann es gestattet sein, nur während einer Teilmenge von Ereignissen zu senden.

Eine LE-ACL-Verbindung wird während der Initialisierungsverfahren des Bluetooth®-Kanal-Soundings verwendet, wie in Abschnitt 3.3 „Steuerungsverfahren für das Bluetooth®-Kanal-Sounding“ beschrieben.

Abbildung 20

Abbildung 20 - Verbindungsereignisse und Intervalle in einer LE-ACL-Verbindung

Das Bluetooth® Channel Sounding erfolgt in einer Reihe von Prozeduren. Jeder Vorgang besteht aus einer Reihe von CS-Ereignissen, und jedes CS-Ereignis ist weiter in CS-Unterereignisse unterteilt. Die letzte Unterteilung der Zeit innerhalb dieses hierarchischen Schemas ist der CS-Schritt. Innerhalb der Schritte werden Pakete oder Töne gesendet und empfangen. Abbildung 21 zeigt dieses strukturelle Schema für die Unterteilung der Zeit anhand eines Beispiels.

Abbildung 21

Abbildung 21 - Struktur der Bluetooth® Channel Sounding Verfahren in einer Beispielkonfiguration

Es gibt eine Reihe von Parametern, mit denen die strukturellen Aspekte der Bluetooth®-Kanalabtastungsverfahren gesteuert werden können. Einige der wichtigsten konfigurierbaren Variablen sind in Tabelle 4 aufgeführt.

Konfigurierbare VariableBereich/WertBeschreibung
Anzahl der Wiederholungen des CS-Verfahrens0 bis 65535Die Anzahl der CS-Prozedurwiederholungen, die ausgeführt werden sollen, bevor das Bluetooth®-Kanal-Sounding beendet wird. Der Wert 0 bedeutet, dass die CS-Prozeduren so lange ausgeführt werden sollen, bis sie über die Prozedur „Bluetooth®-Kanal-Sounding-Prozedurwiederholungsbeendigung“ beendet werden.
Anzahl der Unterereignisse pro Ereignis1 bis 16Die Anzahl der Unterveranstaltungen, die mit derselben ACL-Veranstaltung verknüpft sind.
Intervall zwischen den Teilveranstaltungen0 oder im Bereich von 625 µs bis 40959,375 ms.Zeitintervall zwischen dem Beginn eines CS-Teilereignisses und dem Beginn des nächsten CS-Teilereignisses innerhalb desselben CS-Ereignisses. Der Wert 0 bedeutet, dass keine Unterteilung in Teilereignisse erfolgt.
Dauer der einzelnen TeilveranstaltungenVariableDie Dauer jedes Teilereignisses.
Anzahl der Schritte pro Teilereignis2 bis 160Zufällig aus einem festgelegten Bereich ausgewählt. Pro Vorgang sind maximal 256 Schritte möglich.

Tabelle 4 - Beispiel für Bluetooth® Channel Sounding

Der Zeitpunkt, die Dauer und die Planung von Prozeduren, Ereignissen, Unterereignissen und Schritten wird durch eine Reihe von Parametern gesteuert, die während der Konfiguration des Bluetooth® Channel Sounding und dem Start des Bluetooth® Channel Sounding konfiguriert werden.

Alle Startzeiten von Prozeduren, Ereignissen, Unterereignissen und Schritten sind direkt oder indirekt an einem ausgewählten Verbindungsereignis in der zugrunde liegenden LE-ACL-Verbindung verankert. Bei der ersten Instanz der Bluetooth®-Channel-Sounding-Prozedur beginnen das erste Ereignis und das erste Unterereignis zur gleichen Zeit, wobei ihr Auftreten mit einem Versatz zum Ankerpunkt des ausgewählten Verbindungsereignisses geplant ist. Der erste Schritt erfolgt mit einem Versatz zum Start des ersten Unterereignisses namens T_FCS. T_FCS hat einen Wert im Bereich von 15 μs bis 150 μs, und der Zeitraum, den es abdeckt, wird verwendet, um die Frequenz durch Hopping zu ändern.

Sowohl Prozeduren als auch Ereignisse finden in Intervallen statt, deren Wert als Anzahl von ACL-Verbindungsintervallen ausgedrückt wird. Abbildung 22 zeigt ein Beispiel, bei dem das Prozedurintervall den Wert 4 und das Ereignisintervall den Wert 2 hat.

Abbildung 22

Abbildung 22 - Ablauf- und Ereignisplanung mit Ablaufintervall = 4 und Ereignisintervall = 2

Das erste Unterereignis in jedem Ereignis beginnt zur gleichen Zeit wie das Ereignis, versetzt zum entsprechenden ACL-Verbindungsereignis. Die Anzahl der Unterereignisse pro Ereignis ist ein Konfigurationsparameter, und Unterereignisse treten einmal pro Unterereignisintervall auf, wie in Abbildung 23 dargestellt.

Abbildung 23

Abbildung 23 - Beispiel für ein CS-Unterereignis im Rahmen der CS-Ereignisplanung

Jedes Unterereignis umfasst mindestens zwei Schritte. Dies kann von Unterereignis zu Unterereignis variieren, je nachdem, wie channel sounding von der Anwendung verwendet wird. Die Dauer der Schritte kann wiederum je nach Konfiguration variieren. Die Planung der Schritte und der ihnen zugewiesenen HF-Sende- und Empfangszeitfenster unterliegt genauen Zeitplanungsregeln, deren Einzelheiten in der Bluetooth Core Specification zu finden sind.

Innerhalb weniger Schritte findet ein Austausch von HF-Signalen zwischen Initiator und Empfänger statt. Je nachdem, für welche Kanalabtastmethode(n) sich die Anwendungsschicht entschieden hat (PBR und/oder RTT), variieren die Einzelheiten.

Im Allgemeinen geht es bei diesen Schritten entweder um die Kalibrierung oder um die Erfassung von Low-Level-Messungen, die von der Anwendungsschicht in einem Entfernungsmessungsalgorithmus verwendet werden können.

Wenn RTT verwendet wird, werden Pakete eines Typs namens CS_Sync zwischen Initiator und Reflektor ausgetauscht.

Abbildung 24

Abbildung 24 - Das CS_Sync-Paket

Die Einfügung einer Sounding-Sequenz oder einer Zufallssequenz am Ende eines CS_Sync-Pakets ist optional. CS_Sync-Pakete können entweder über die PHY-Schichten LE 1M, LE 2M oder LE 2M 2BT übertragen werden. Die GFSK4 Modulationsschema wird wie bei anderen Bluetooth-LE-Paketen verwendet.

Wenn PBR verwendet wird, werden Signale, die als CS-Töne bekannt sind, von Initiator und Reflektor ausgetauscht. Diese Signale verwenden Amplitudenumtastung (ASK), um ein Symbol zu erzeugen, dessen Frequenz für eine bestimmte Zeitspanne festgelegt ist.

Schritte haben einen zugehörigen Modus, der das Ziel des Schrittes und die Art der darin stattfindenden Aktivität bestimmt. Es sind vier Modi definiert, die als Modus-0, Modus-1, Modus-2 und Modus-3 bezeichnet werden.

Mode-0 befasst sich mit der Kalibrierung. Alle Geräte weisen einen gewissen Grad an Taktdrift und Ungenauigkeit bei der Frequenzerzeugung auf. Dies ist ein Problem sowohl für die RTT- als auch für die PBR-Entfernungsmessungsmethode.

Der Zweck eines Mode-0-Schrittes ist es, dem Initiator die Möglichkeit zu geben, den Betrag zu messen, um den die Frequenz der vom Reflektor gesendeten Signale von denen des Senders abweicht.

Der Initiator sendet ein CS_Sync-Paket auf einem ausgewählten Kanal und einer ausgewählten Frequenz. Der Reflector antwortet mit einem CS_Sync-Paket und einem CS-Ton. Beide müssen auf der gleichen Frequenz gesendet werden wie das vom Initiator empfangene Signal.

Nach dem Empfang des Antwortsignals vom Reflektor berechnet der Initiator einen Wert, der als „Fractional Frequency Offset“ (FFO) bezeichnet wird. Die Berechnung des FFO erfolgt unter Einbeziehung der vom Reflektor empfangenen Tonfrequenz und der Mode-0-FAE-Tabelle des Reflektors. Der FFO wird später in Berechnungen verwendet, um die Unterschiede zwischen den beiden Geräten auszugleichen und die Genauigkeit der Ergebnisse zu verbessern.

Abbildung 25 zeigt die Übertragung eines CS_Sync-Pakets durch den Initiator, gefolgt von CS_Sync und CS-Ton, die als Antwort vom Reflektor gesendet werden. Die Dauer der verschiedenen Zeitschlitze wird durch symbolische Namen mit den folgenden Bedeutungen angegeben:

SymbolBedeutung
T_SYZeit für die Synchronisationssequenz. Die Dauer hängt von der Länge des CS_Sync-Pakets und der verwendeten PHY-Schicht ab.
T_RDZeit für die Abwärtsrampe der Übertragung. Diese Zeit beträgt 5 μs und wird vom Sender verwendet, um Energie aus dem HF-Kanal zu entfernen.
T_IP1Zeit für das Intermezzo zwischen dem Ende der Übertragung des Initiators und dem Beginn der Übertragung durch den Reflektor. Die Dauer variiert zwischen 10 μs und 145 μs und wird im Verfahren zum Austausch von Fähigkeiten festgelegt.
T_GDÜberwachungszeit. Immer 10 μs lang.
T_FMZeit für die Frequenzmessung. Immer 80 μs Dauer für Schrittmodus-0.

Tabelle 5 – Zeitfensterparameter

Abbildung 25

Abbildung 25 - Mode-0-Übertragungen und Zeitschlitze

Die Unterstützung von Modus-0-Schritten ist obligatorisch.

In einem Modus-1-Schritt wird die Umlaufzeit (RTT) eines CS_Sync-Pakets berechnet, das von einem Initiator zu einem Reflektor und wieder zurück gesendet wird.

Bei der Übertragung des ersten CS_Sync-Pakets wird vom Initiator ein Zeitstempel aufgezeichnet, der als Time of Departure (ToD) bezeichnet wird. Der Initiator zeichnet einen zweiten Zeitstempel auf, wenn er das vom Reflektor zurückgesendete CS_Sync-Paket empfängt. Dieser wird als Time of Arrival (ToA) bezeichnet.

Abbildung 26

Abbildung 26 - Modus-1-Übertragungen und Zeitschlitze

Die Zwischenzeit T_IP1 hat eine bekannte, feste Länge, die ausreicht, damit der Reflektor sein Paket vorbereiten und dann senden kann. Die Verwendung eines im Voraus vereinbarten, festen Zeitraums in diesem Teil des Austauschs bedeutet, dass der Initiator die Durchlaufzeit beim Empfänger kennt und diese in seiner RTT-Berechnung verwenden kann.

Die Unterstützung von Modus-1-Schritten ist obligatorisch.

Der Zweck eines Mode-2-Schrittes ist die Unterstützung der phasenbasierten Entfernungsmessung (PBR).

Ein Modus-2-Schritt beginnt damit, dass der Initiator einen CS-Ton auf einem ausgewählten Kanal und über jeden verfügbaren Antennenpfad sendet. Nach einer Abklingzeit und einer Zwischenphase antwortet der Reflektor mit einem CS-Ton, wobei er dieselbe Frequenz wie der vom Initiator empfangene Ton wählt und über jeden seiner Antennenpfade sendet. Abbildung 27 veranschaulicht diesen Austausch. Die Dauer des Zeitschlitzes umfasst die in Tabelle 5 beschriebenen Begriffe sowie die zusätzlichen Begriffe, die in Tabelle 6 definiert sind.

SymbolBedeutung
T_SWFür die Antennenumschaltung reservierte Zeitspanne.
T_PMZeit für die Übertragung eines Phasenmesstons.
T_IP2Zeit für das Intermezzo zwischen den CS-Tönen.
N_APAnzahl der Antennenpfade.

Tabelle 6 - Zusätzliche Schrittmodus-2-Zeitsteuerungsparameter

Abbildung 27

Abbildung 27 - Modus-2-Übertragungen und Zeitschlitze

Der Initiator misst die Phase des vom Reflektor während der Periode T_PM empfangenen CS-Tons, einmal für jeden Antennenpfad. Die Anpassungen erfolgen anhand der im Mode-0-Schritt berechneten Kompensationswerte. Die Phasenmessungen werden in einem HCI-Ereignis in Form eines Arrays von IQ-Samples an die Anwendungsschicht weitergeleitet.

Es ist zu beachten, dass der Ausdruck für die Gesamtdauer der Übertragung des/der CS-Töne den Term N_AP + 1 enthält. Dies liegt daran, dass auf die T_PM-Zeitschlitze, die jedem Antennenpfad zugewiesen sind, ein zusätzlicher Zeitraum folgt, der als CS-Tone-Erweiterungsschlitz bezeichnet wird. Die Nutzung dieses Zeitschlitzes für die Übertragung erfolgt aus Sicherheitsgründen nach dem Zufallsprinzip; wird er jedoch genutzt, wird ein CS-Ton über dieselbe Antenne übertragen, die im unmittelbar vorhergehenden T_PM-Zeitschlitz verwendet wurde.

Die Unterstützung von Modus-2-Schritten ist obligatorisch.

Ein Modus-3-Schritt unterstützt sowohl die RTT-Berechnung als auch das PBR unter Verwendung eines kombinierten Austauschs von CS_Sync-Paketen und CS-Tönen.

Abbildung 28

Abbildung 28 - Modus-3-Übertragungen und Zeitschlitze

Die Unterstützung von Modus 3 ist nicht zwingend erforderlich. Anwendungen, die PBR und RTT kombinieren möchten, aber im Rahmen des Verfahrens zum Austausch von Fähigkeiten feststellen, dass Modus 3 weder vom Initiator noch vom Reflektor unterstützt wird, können stattdessen eine Modusfolge verwenden, die Schritte aus Modus 2 und Modus 1 kombiniert.

Modus-3-Schritte umfassen einen Erweiterungssteckplatz, wie er für Modus-2-Schritte beschrieben wurde.

In den vorangegangenen Abschnitten über Modus-0-, Modus-1-, Modus-2- und Modus-3-Schritte lag der Schwerpunkt auf den Einzelheiten der Zeitaufteilung und -verwendung in einem einzelnen Schritt jedes Typs. Entfernungsberechnungen erfordern jedoch mehrere Austauschvorgänge, entweder um die Genauigkeit der berechneten Entfernung zu verbessern oder weil die verwendete Methode dies erfordert. Das Züchterrechtsverfahren erfordert definitionsgemäß mindestens zwei Austauschvorgänge.

Damit Phasendifferenzen gemessen werden können, muss mehr als ein Sendesignal vorhanden sein und es müssen mehrere Frequenzen beteiligt sein. Ein einzelner Schritt umfasst den Austausch eines einzelnen CS-Tons auf einem ausgewählten Kanal und einer ausgewählten Frequenz. Somit ist klar, dass die PBR-Methode die Ausführung von mindestens zwei Schritten eines Modus erfordert, der die PBR-Methode unterstützt. Es ist zu beachten, dass im Allgemeinen eine größere Anzahl von CS-Ton-Austauschen unter Verwendung einer entsprechend größeren Anzahl von HF-Kanälen der Anwendung mehr Daten und die Möglichkeit zur Erstellung genauerer Entfernungsmessungen bietet. Eine größere Anzahl von Austauschen erfordert jedoch mehr Zeit für die Ausführung.

Wie in Abschnitt 3.2.3 "Antennengruppen" erwähnt, können die Geräte mehrere Antennen für die Verwendung während des phasenbasierten Entfernungsaustauschs enthalten. Die Höchstzahl der Antennen, die ein Gerät für die Verwendung während des PBR-Austauschs (d. h. Mode-2- oder Mode-3-Schritte) haben kann, beträgt vier. Ein gegebenes Paar von Antennenkonfigurationen, von denen eine zum Initiator und eine zum Reflektor gehört, bietet eine Anzahl von Antennenpfaden zwischen den beiden Geräten.

In der Bluetooth-Kernspezifikation sind insgesamt acht Antennenkonfigurationen definiert. Tabelle 7 listet diese Konfigurationen auf.

Antennenkonfigurationsindex (ACI)Gerät Eine Anzahl von AntennenGerät B Anzahl der AntennenAnzahl der Antennenwege (N_AP)
0111
1212
2313
3414
4122
5133
6144
7224

Tabelle 7 - Antennenkonfigurationen

Die Antennenumschaltung erfolgt während der Mode-2-Schritte (PBR) und während des PBR-bezogenen Teils jedes Mode-3-Schrittes. Insbesondere bei der Übertragung eines CS-Tons kann die Antennenumschaltung in Abhängigkeit von der Antennenkonfiguration des Sendegeräts vorgenommen werden. Die Berechnung der Dauer der CS-Ton-Sendezeitschlitze in Modus-2- und Modus-3-Schritten berücksichtigt die Antennenumschaltung und mehrere Antennenpfade:

(T_SW+T_PM)*(N_AP+1)

  • T_SW gibt die Zeit vor, die für den Antennenwechsel benötigt wird, und kann einen Wert von 0, 2, 4 oder 10 Mikrosekunden annehmen.
  • T_PM ist die Zeit für die Übertragung des CS-Tons.
  • N_AP ist die Anzahl der Antennenpfade. Der Term +1 dient dazu, den Erweiterungssteckplatz zu berücksichtigen.

Ein Bluetooth® Channel Sounding Verfahren beinhaltet immer die Ausführung einer Sequenz von mehreren Schritten und eine Kombination von mindestens zwei Modi. Die Bluetooth-Kernspezifikation definiert Regeln für die Kombination von Modi und die Abfolge von Schritten, deren wichtigste Aspekte in diesem Abschnitt untersucht werden sollen.

Bluetooth® Channel Sounding führen zu qualitativ besseren und genaueren Entfernungsmessungen, wenn sie vom Bluetooth-Controller mit Daten versorgt werden, die aus einer größeren Anzahl von ausgetauschten Paketen und Tönen stammen.

An einem Bluetooth®-Kanalabtastvorgang sind stets Schritte aus mindestens zwei verschiedenen Modustypen beteiligt. Der erste ist der Modus-0-Schritt zur Messung des Frequenzversatzes, und der zweite muss einer der anderen Modi sein. Der primäre Nicht-Modus-0-Modus wird als „Main_Mode“ bezeichnet. Der sekundäre Nicht-Modus-0-Modus, sofern vorhanden, wird als „Sub_Mode“ bezeichnet. Tabelle 8 listet die sechs zulässigen Kombinationen von Nicht-Modus-0-Modi auf.

Haupt_ModusUnter_Modus
Modus-1Keine
Modus-2Keine
Modus-3Keine
Modus-2Modus-1
Modus-2Modus-3
Modus-3Modus-2

Tabelle 8 - Zulässige Kombinationen von Betriebsarten, die nicht dem Modus 0 entsprechen

Anwendungen können die Abfolge des Schrittmodus mithilfe von HCI-Befehlen konfigurieren. Zu den wichtigsten Parametern, die abgefragt und zwischen den Geräten vereinbart werden können, gehören die in Tabelle 9 aufgeführten.

HCI-ParameterZweck
Modus_0_SchritteLegt die Anzahl der aufeinanderfolgenden Schritte im Modus 0 fest, die zu Beginn jedes CS-Teilereignisses ausgeführt werden sollen. Zulässige Werte sind 1, 2 oder 3.
Hauptmodus-TypGibt den Modus an, der als Hauptmodus verwendet wird (1, 2 oder 3).
Untermodus-TypGibt den Modus an, der als Untermodus verwendet wird (1, 2 oder 3).
Min_Main_Mode_StepsLegt die Mindestanzahl an Schritten im Hauptmodus fest, die vor einem Schritt im Untermodus immer ausgeführt werden müssen.
Max_Main_Mode_StepsLegt die maximale Anzahl von Schritten im Hauptmodus fest, die vor einem Schritt im Untermodus immer ausgeführt werden müssen.

Tabelle 9 - Parameter zur Steuerung der Betriebsartenabfolge

Im Allgemeinen folgt die Abfolge im Schrittbetrieb diesem Muster:

  1. Ein oder mehrere Modus-0-Schritte starten das Unterereignis
  2. Es folgt eine Folge von n Hauptmodus-Schritten, wobei n zufällig ausgewählt wird und im Bereich von Min_Main_Mode_Steps bis einschließlich Max_Main_Mode_Steps liegt
  3. Ein einzelner Untermodus-Schritt folgt auf die Abfolge von n Hauptmodus-Schritten aufgrund eines Prozesses, der in der Bluetooth Core Specification als sub_mode insertion bezeichnet wird

Step-Mode-Sequenzen sind nicht an Sub-Event-Grenzen gebunden, außer durch die allgemeine Regel, dass Sub-Events immer mit einem oder mehreren Mode-0-Schritten beginnen müssen. Vollständige Sequenzen können sich über mehr als ein Unterereignis erstrecken.

Abbildung 32

Abbildung 33 - Beispiel für eine Schrittmodussequenz

Es gibt einen weiteren Parameter für die Modusabfolge, der von Anwendungen verwendet werden kann. Main_Mode_Repetition gibt eine Anzahl der letzten Main-Mode-Schritte aus dem letzten Sub-Event an, die im aktuellen Sub-Event wiederholt werden sollen.

Wenn die Wiederholung im Hauptmodus aktiv ist, verwenden die im aktuellen Teilereignis wiederholten Schritte denselben Kanalindex wie die entsprechenden Schritte im vorherigen Teilereignis. Dadurch wird sichergestellt, dass die wiederholten Schrittübertragungen auf derselben vorgesehenen Frequenz erfolgen. Beachten Sie, dass der Zweck der Wiederholung von Schritten im Hauptmodus auf derselben Frequenz darin besteht, möglichen Frequenzdrift sowie Dopplereffekten entgegenzuwirken.

Die Wiederholung des Hauptmodus bietet den Anwendungen die Möglichkeit, einige der Eigenschaften des Austauschs zu korrelieren, und kann die Verfolgung der Geschwindigkeit von sich bewegenden Geräten erleichtern.

Schritte, die aufgrund der Wiederholung des Hauptmodus in die Modusfolge aufgenommen werden, werden beim Einfügen von Untermodi nicht berücksichtigt.

Die Möglichkeit, Moduskombinationen zu konfigurieren und Schrittmodussequenzen durch Einfügen von Untermodi und Wiederholen des Hauptmodus zu steuern, bietet Anwendungen ein hohes Maß an Kontrolle über den Ablauf der Bluetooth®-Kanalortung. PBR ist die genauere der beiden Entfernungsmessmethoden, und die gleichzeitige Verwendung von RTT erhöht die Sicherheit des Systems erheblich. Außerdem ermöglicht sie es, Entfernungsmehrdeutigkeiten zu beheben, die bei der Verwendung der PBR-Methode auftreten können.

Schrittmodus-3 bietet Unterstützung für beide Methoden in einem einzigen Modustyp, aber die Unterstützung für Modus-3 ist optional. Daher müssen Geräte, die während des Verfahrens zum Austausch von Fähigkeiten feststellen, dass Modus-3 nicht verfügbar ist, die Schritte Modus-1 (RTT) und Modus-2 (PBR) mischen. Dies kann durch Auswahl von Modus-2 als Hauptmodus und Modus-1 als Untermodus erreicht werden.

Ein weiterer zu berücksichtigender Faktor bei Anwendungen ist die Latenz. Jeder Signalaustausch benötigt Zeit. RTT-Austausche im Modus 1 dauern je nach Anzahl der Antennenwege manchmal länger als PBR-Austausche im Modus 2. Anwendungen, bei denen die Latenz unter einem bestimmten Schwellenwert bleiben muss, werden wahrscheinlich einen geringeren Anteil an RTT-Austauschen in das Bluetooth®-Channel-Sounding-Verfahren einbeziehen.

Abbildung 34

Abbildung 34 - Ein Verhältnis von Züchterrechten zu RTT von 3:1 unter Verwendung von Modus-2 und Modus-1

Abbildung 35

Abbildung 35 - Ein Verhältnis von Züchterrechten zu RTT von 3:1 unter Verwendung von Modus-2 und Modus-3

Normalerweise unterteilt Bluetooth LE das 2,4-GHz-ISM-Band in 40 Kanäle mit einer Breite von jeweils 2 MHz. Bei der Verwendung von Bluetooth® Channel Sounding ist dies jedoch nicht der Fall.

Für die Zwecke des Bluetooth® Channel Sounding werden 72 Kanäle mit einer Breite von jeweils 1 MHz und einem eindeutigen Kanalindexwert definiert. Die Anordnung dieser Kanäle stellt sicher, dass die primären LE-Werbekanäle vermieden werden.

Eine Kanalbreite von 1 MHz anstelle der üblichen 2 MHz stellt sicher, dass der Frequenzabstand zwischen Züchterrechtssignalen, die benachbarte Kanäle nutzen, so ist, dass Entfernungsmehrdeutigkeit erst bei etwa 150 Metern auftritt.

CS-Kanal-IndexRF-MittenfrequenzErlaubt
02402 MHzNein
12403 MHzNein
22404 MHzJa
.........
222424 MHzJa
232425 MHzNein
242426 MHzNein
252427 MHzNein
262428 MHzJa
.........
762478 MHzJa
772479 MHzNein
782480 MHzNein

Tabelle 10 - Bluetooth® Channel Sounding und physikalische RF-Kanäle

Es wird eine Bitmap für den Kanalindexfilter verwaltet. Dabei handelt es sich um eine Liste der für das Bluetooth®-Channel-Sounding definierten Kanalindizes, wobei jeder Kanal entweder als „einbezogen“ oder als „ausgeschlossen“ gekennzeichnet ist. Die Kanalindex-Filterzuordnung für das Bluetooth®-Channel-Sounding wird durch eine Prozedur der Verbindungsschicht verwaltet, die als „Channel-Sounding-Channel-Map-Update-Prozedur“ bezeichnet wird. Diese ermöglicht es entweder dem Initiator oder dem Reflektor, das andere Gerät darüber zu informieren, welche Kanäle verwendet oder vermieden werden sollen, basierend auf seiner Einschätzung der lokalen Kanalbedingungen. Ein ausgeschlossener Kanal wird von keinem der Kanalauswahlalgorithmen ausgewählt.

Frequenzsprünge finden im Allgemeinen unmittelbar vor der Ausführung eines Schrittes statt, wie in Abbildung 36 dargestellt.

Abbildung 35

Abbildung 36 – Frequenzsprung vor der Ausführung des Schritts

Eine Ausnahme von dieser Regel gilt, wenn die Modus-Wiederholung mit einem Wert ungleich Null für den Parameter Main_Mode_Repetition konfiguriert wurde. Schritte, die aufgrund der Moduswiederholung wiederholt werden, verwenden denselben Kanalindex wie der Schritt im vorherigen Unterereignis, das sie wiederholen.

Ein neuer Satz von drei Kanalauswahlalgorithmen (CSA) wurde für die Verwendung im Bluetooth® Channel Sounding definiert. Zusammen sind sie als CSA #3 und einzeln als CSA #3a, CSA #3b und CSA #3c bekannt.

CSA #3a dient ausschließlich der Auswahl des Kanals, der in Mode-0-Schritten verwendet wird. CSA #3b und CSA #3c sind beide für die Verwendung mit Nicht-Mode-0-Schritten vorgesehen, jedoch darf während einer Instanz des Bluetooth®-Kanalabtastungsverfahrens nur einer der beiden verwendet werden. Folglich sind zu jedem Zeitpunkt zwei verschiedene Kanalauswahlalgorithmen aktiv mit dem Bluetooth®-Kanalabtastungsverfahren verknüpft.

Die Kanalauswahl umfasst zwei verschiedene Kanalindexlisten. Die erste wird von CSA #3a und für die Auswahl von Kanälen für Mode-0-Schritte verwendet. Die zweite wird für Nicht-Mode-0-Schritte mit CSA #3b oder CSA #3c verwendet.

Kanalindexlisten werden erstellt, indem die Reihenfolge der Kanäle, die als in der Kanalkarte enthalten markiert sind, randomisiert wird, um eine gemischte Kanalliste zu erstellen. CSA #3a und CSA #3b tun dies auf genau dieselbe Weise. CSA #3c verfolgt einen anderen Ansatz, stützt sich aber auf die gleiche primitive Shuffle-Funktion, die in der Bluetooth Core Specification als cr1 bezeichnet wird.

Der Kanalauswahlalgorithmus CSA #3a für Modus 0 verwendet eine gemischte Kanalliste. Die für das Frequenzsprungverfahren im Modus 0 verwendete gemischte Kanalliste unterscheidet sich von der entsprechenden Kanalliste, die für das Kanalwechselverfahren außerhalb des Modus 0 verwendet wird. Jeder Eintrag in der gemischten Kanalliste ist eindeutig und wird nur einmal verwendet. Wenn alle Einträge in der gemischten Kanalliste verwendet wurden, wird sie neu generiert, wodurch eine neue zufällige Kanalliste entsteht.

Der Nicht-Modus-0-Kanalauswahlalgorithmus CSA #3b verwendet eine gemischte Kanalliste, die sich von der entsprechenden Kanalliste für das Modus-0-Kanalspringen unterscheidet. CSA #3b erlaubt es, die Kanalindexliste mehr als einmal zu wiederholen, bevor sie neu generiert wird. Dies wird durch einen Parameter namens CSNumRepetitions gesteuert, den Anwendungen einstellen können.

Der Algorithmus CSA #3c unterscheidet sich erheblich von CSA #3b. Teilmengen der in der Kanalkarte enthaltenen Kanäle werden in Gruppen organisiert, und es werden Kanalmuster generiert, die bestimmte Formen bilden. Es werden zwei Mustertypen unterstützt, die als „Hat“ und „X“ bezeichnet werden. CSA #3c kann unter bestimmten Umständen Vorteile bei der Erkennung reflektierter Signalwege bieten. Die Unterstützung für CSA #3c ist optional.

Die RTT-Methode umfasst den Austausch von CS_Sync-Paketen in den Modi 1 und/oder 3. Es sind mehrere Verfahren zur Ermittlung der Zeitstempel für die Ankunftszeit (Time of Arrival, ToA) definiert, die für die Berechnung der Round-Trip-Zeiten benötigt werden. Eine Anwendung kann während des Konfigurationsvorgangs für das Bluetooth® Channel Sounding über HCI-Befehle unter Verwendung des Parameters RTT_Type angeben, welche Methode verwendet werden soll.

Es besteht die Möglichkeit, Zeitmessungen auf der Grundlage des Zugriffsadressenfeldes vorzunehmen, eine Sondierungssequenz mit einer Länge von 32 oder 96 Bit zu verwenden oder eine Zufallssequenz mit einer Länge von 32, 64, 96 oder 128 Bit zu verwenden. Die Genauigkeit der Zeitschätzungen variiert je nach der verwendeten Methode und der Länge des für die Zeitmessung verwendeten Feldes. Sowohl die Verwendung einer Sondierungssequenz als auch die Verwendung einer Zufallssequenz ermöglichen eine genauere Form der Schätzung, die als fraktionierte Zeitschätzung bezeichnet wird.

CS_Sync-Pakete enthalten ein 32-Bit-Access-Address-Feld. Die einfachste Methode zur Ermittlung eines ToA-Werts besteht darin, dass der controller seine Uhr verwendet, um einen Zeitstempel zu dem Zeitpunkt zu erfassen, zu dem das Zugriffsadressfeld in einem CS_Sync-Paket empfangen wurde.

Eine Zugriffsadresse ist auf der Verbindungsschicht ein 32-Bit-Binärwert, doch bei der Übertragung wird ihr Wert durch eine Folge analoger Symbole dargestellt, die durch Anwendung der GFSK-Modulation auf diese digitalen Bits erzeugt werden. Ein einzelnes Symbol besteht aus einer Funkübertragung auf einer Frequenz, die einen 0- oder 1-Bit-Wert darstellt und je nach Symbolrate eine Dauer von entweder einer Mikrosekunde oder einer halben Mikrosekunde hat.

Es ist unwahrscheinlich, dass der Oszillator des Senders und der Oszillator des Empfängers in Phase sind, was zu Ungenauigkeiten bei diesem Verfahren führen kann. Um die Ergebnisse zu verbessern, wird vorgeschlagen, Messungen über eine Reihe von Paketen vorzunehmen, die in einer Folge von Schritten ausgetauscht werden, und die Verteilung der Werte zu berechnen. Diese Verteilung kann dann verwendet werden, um die Genauigkeit der ToA-Zeitstempel zu verbessern.

In der Link Layer Specification, Teil H, Abschnitte 3.3 und 3.4, werden zwei optionale Methoden beschrieben, die eine höhere Genauigkeit des ToA-Zeitstempels bieten. Beide liefern zeitliche Schätzungen im Bruchteilbereich.

CS_Sync-Pakete können zusätzliche, optionale Daten am Ende des Pakets enthalten. Wenn diese Option verwendet wird, kann eines von zwei Feldern an das CS_Sync-Paket angehängt werden: entweder eine Zufallssequenz oder eine Tonsequenz.

Bei der ersten Methode zur Ermittlung von Zeitabweichungen wird das optionale Feld „Random Sequence“ in CS_Sync-Paketen analysiert, um Zeitabweichungen zu ermitteln. Die anhand der „Random Sequence“ berechnete Zeitabweichung wird zur Optimierung des Zeitstempels der Zugriffsadresse verwendet.

Die zweite Methode zur Berechnung des zeitlichen Abweichungsfehlers basiert auf der Analyse eines „Sounding Sequence“-Feldes, das an ein CS_Sync-Paket angehängt ist. Eine „Sounding Sequence“ ist ein abwechselndes Muster aus Nullen und Einsen auf der Verbindungsschicht, das bei Modulation mittels GFSK zwei unterschiedliche Funksignaltöne mit unterschiedlichen Frequenzen und Phasen erzeugt. Durch die Analyse der Phasendifferenz zwischen diesen beiden Tönen lässt sich ein zeitlicher Abweichungsfehler berechnen, der zur Optimierung des ToA-Zeitstempels herangezogen wird.

Entwickler von Bluetooth® Channel Sounding können Round-Trip-Zeiten auf der Grundlage von Messungen ableiten, die mit einer von drei verschiedenen Methoden durchgeführt werden. Zur Auswahl stehen die Verwendung des ToA einer Zugriffsadresse oder die Verwendung einer von zwei Bruchteilmethoden, die entweder auf einer Zufallssequenz oder einer Sounding-Sequenz in einem CS_Sync-Paket basieren.

Die drei RTT-Methoden bieten den Anwendungsentwicklern ein unterschiedliches Maß an Genauigkeit der Entfernungsmessung, Sicherheit und Latenzzeit. Im Allgemeinen haben die fraktionierten Methoden das Potenzial, die genauesten Ergebnisse und die beste Sicherheit zu liefern.

Ein Modulationsverfahren definiert eine Methode zur Kodierung digitaler Informationen in Signalen unter Verwendung einer oder mehrerer physikalischer Eigenschaften des Signals. Die Frequenzumtastung (FSK) ist ein einfaches Beispiel für ein Modulationsverfahren. Dabei wird ein Symbol erzeugt, das einen binären Wert von 1 darstellt, indem die Frequenz eines Trägersignals um einen bestimmten Betrag (die Frequenzabweichung) nach oben verschoben wird, oder um denselben Betrag nach unten, um eine binäre 0 darzustellen.

Abbildung 36

Abbildung 37 - Frequenzumtastung (FSK) kodierter Bitstrom 01010101010

Der abrupte Wechsel zwischen den Frequenzen, der für das einfache FSK charakteristisch ist, führt zur Erzeugung von Rauschen, das sich über einen größeren Frequenzbereich ausbreitet, als wünschenswert wäre. Um dem entgegenzuwirken, nutzt die Bluetooth-Technologie eine spezielle Variante des FSK, die als Gaußsche Frequenzumtastung (GFSK) bezeichnet wird. GFSK unterscheidet sich vom einfachen FSK dadurch, dass es einen Filter beinhaltet, der bewirkt, dass der Übergang zwischen den Frequenzen einer Kurve folgt. Die Form der Kurve und die Geschwindigkeit der Frequenzübergänge werden durch verschiedene Parameter bestimmt, darunter das Produkt aus Bandbreite und Bitperiode (BT).

Das Produkt aus Bandbreite und Symbolperiode (BT) ist ein Merkmal eines Signals, das Aufschluss über das Verhältnis zwischen dessen Bandbreite und der Dauer der Symbole gibt. BT beeinflusst die Form und die Breite der Funkimpulse, aus denen sich die Symbole zusammensetzen. Ein höherer BT-Wert führt zu einem schmaleren, eckigeren Impuls, während ein niedrigerer Wert eine breitere, abgerundete Impulsform zur Folge hat.

Die Bluetooth-Kernspezifikation führt eine neue PHY-Schicht namens LE 2M 2BT ein. LE 2M 2BT darf derzeit nur in Verbindung mit Bluetooth® Channel Sounding verwendet werden. Ein Vergleich der PHY-Schichten mit den wichtigsten Merkmalen von LE 2M 2BT ist in Tabelle 11 dargestellt.

LE 1MLE kodiertLE 2MLE 2M 2BT
Symbolrate1 Msym/s1 Msym/s2 Msym/s2 Msym/s
BT0.50.50.52.0
Min. Frequenzabweichung185 kHz185 kHz370 kHz420 kHz
FehlererkennungCRCCRCCRCK.A.
FehlerkorrekturKEINEFECKEINEK.A.
AnforderungObligatorischOptionalOptionalOptional. Nur in Verbindung mit der Kanalvermessung zu verwenden.

Tabelle 11 - Vergleich von Bluetooth LE PHYs

Abbildung 37

Abbildung 38 - Impulsformen

Einige Funksender verfügen über die Fähigkeit, ihr Signal-Rausch-Verhältnis (SNR) so anzupassen, dass es innerhalb eines festgelegten Bereichs liegt. Diese Funktion kann, sofern sie sowohl vom Initiator als auch vom Reflektor unterstützt wird, dazu genutzt werden, die Sicherheit der Bluetooth®-Kanalabtastungsschritte zu verbessern, die sich auf die RTT-Entfernungsmessmethode beziehen, d. h. die Schritte im Modus 1 und Modus 3.

Die Bluetooth Core Specification definiert eine Reihe von SNR Output Index (SOI)-Werten, die den zugehörigen SNR-Ausgangspegeln, gemessen in dB, entsprechen. In Tabelle 12 sind diese Definitionen wiedergegeben.

SNR-Ausgangsindex (SOI)SNR-Ausgangspegel (dB)
018
121
224
327
430

Tabelle 12 - SNR-Ausgangsindizes und Pegel

Sicherheitsprobleme, die speziell bei Lösungen zur Entfernungsmessung auftreten, beinhalten in der Regel die Gefahr, dass nicht vertrauenswürdige Geräte ein vertrauenswürdiges Gerät auf irgendeine Weise dazu verleiten, zu dem Schluss zu kommen, dass sich ein anderes vertrauenswürdiges Gerät nahe genug befindet, um eine bestimmte Aktion zu genehmigen oder auszuführen.

Bluetooth® Channel Sounding umfasst eine Reihe von Funktionen, die als Gegenmaßnahmen zu einer Reihe von Sicherheitsbedrohungen bei der Entfernungsmessung dienen können. Diese Funktionen können in vier Kategorien eingeteilt werden:

  1. Verwendung von PBR- und RTT-Methoden in Kombination
  2. Randomisierung des Bitstroms und der Übertragungsmuster
  3. Verteidigung gegen Symbolmanipulation
  4. RF-Signalanalysetechniken einschließlich der Erkennung von Angriffen

Bluetooth® Channel Sounding unterstützt zwei Methoden zur Entfernungsmessung: die phasenbasierte Entfernungsmessung (PBR) und die Round-Trip-Timing-Methode (RTT). Die beiden Methoden funktionieren völlig unterschiedlich. Eine Anwendung kann beide Methoden kombiniert nutzen, indem sie eine geeignete Moduskombination wählt, beispielsweise Modus 2 als Hauptmodus für PBR und Modus 1 als Untermodus für RTT.

Die Komplexität, beide Methoden gleichzeitig anzugreifen, so dass sowohl die Phase der Bluetooth® Channel Sounding Signale als auch die berechneten Round-Trip-Zeiten manipuliert werden, um irreführende und konsistente Ergebnisse zu erhalten, wird von Sicherheitsexperten als sehr hoch angesehen.

Zunächst müssen die Geräte miteinander gekoppelt worden sein. Dies ist erforderlich, damit eine verschlüsselte LE-ACL-Verbindung hergestellt werden kann. Anschließend findet der CS Security Start über die verschlüsselte LE-ACL-Verbindung statt, wodurch der Austausch der Sicherheitsschlüsseldaten für das Bluetooth® Channel Sounding vor unbefugtem Zugriff geschützt ist.

Schließlich führen sowohl das zentrale als auch das periphere Gerät einen sicheren Austausch von Teilwerten der Bluetooth® Channel Sounding durch. Dadurch erhalten beide Geräte dieselben Daten, aus denen sie einen vollständigen und gemeinsamen Wert für den CS-Initialisierungsvektor (CS_IV), die CS-Instanzierungs-Nonce (CS_IN) und den CS-Personalisierungsvektor (CS_PV) erstellen können.

Die Bluetooth-Kernspezifikation definiert einen Zufallsbitgenerator, der den Empfehlungen der NIST Special Publication 800-90Ar1 entspricht. Er ist als deterministischer Zufallsbitgenerator (DRBG) bekannt.

Für die Instanziierung von DRBG müssen die drei Bluetooth® Channel Sounding Sicherheitsparameter CS_IV, CS_IN und CS_PV als Eingänge bereitgestellt werden. Nach Ausführung der Bluetooth® Channel Sounding Security Start-Prozedur besitzen sowohl das Initiator- als auch das Reflektor-Gerät die gleichen Werte für diese Parameter. Wenn zwei Instanzen von DRBG mit denselben Parameterwerten initialisiert werden, erzeugen sie über eine Reihe von Aufrufen hinweg genau dieselben Bitfolgen, was den Algorithmus deterministisch macht.

Beim Bluetooth®-Channel-Sounding ändert jedes Gerät bei jedem CS-Schritt im Modus 0, Modus 1 und Modus 3 das Feld „Access Address“ in den CS_Sync-Paketen. Neue Werte für die „Access Address“ werden anhand von Auswahlregeln generiert, die den DRBG einbeziehen, und beide Geräte kennen die „Access Address“, die vom jeweils anderen Gerät verwendet wird. Empfangende Geräte überprüfen den Wert der „Access Address“ und melden etwaige Probleme an den Host.

Das Feld Access Address ist 32 Bit lang und kann 4.294.967.296 verschiedene Werte haben. Ein böswilliges Gerät, das ein CS_Sync-Paket fälschen möchte, hat daher eine Chance von 1 zu 4.294.967.296, den richtigen Wert der Zugriffsadresse in jedem der mehreren ausgetauschten CS_Sync-Pakete zu erraten.

CS_Sync-Pakete können ein optionales Feld „Random Sequence“ enthalten. Dieses Feld unterstützt eine der Methoden zur Berechnung der fraktionierten RTT. Der Inhalt des Feldes „Random Sequence“ wird für jedes gesendete CS_Sync-Paket mithilfe des CS-DRBG neu generiert. Das Feld „Random Sequence“ kann eine Länge von 32, 64, 96 oder 128 Bit haben.

Eine Sounding-Sequenz besteht aus einem vorhersehbaren, sich abwechselnden Muster aus 32 oder 96 Bits und wird für die Berechnung von Bruchteilen der Umlaufzeit (RTT) verwendet. Um das Risiko einer Ausnutzung dieses bekannten Bitmusters zu mindern, wird ein DRBG verwendet, um Positionen innerhalb der Sequenz auszuwählen, an denen einer von zwei zufällig ausgewählten 4-Bit-Werten, sogenannte Markersignale, eingefügt wird. Die vom DRBG ausgewählten Markersignale haben den Wert 0b1100 oder 0b0011. Das zufällige Einfügen von zufälligen Bitmustern in eine Sounding-Sequenz schützt vor Sounding-Sequenz-Spoofing.

Die Mode-2- und Mode-3-Schritte umfassen einen Tonverlängerungs-Zeitschlitz. Der Tonverlängerungs-Zeitschlitz ist stets reserviert, doch ob in diesem Zeitschlitz eine Übertragung stattfindet oder nicht, ist zufällig und wird vom DRBG gesteuert. Das empfangende Gerät weiß, wann es eine Übertragung im Tonverlängerungs-Zeitschlitz erwarten kann und wann nicht, ein angreifendes Gerät hingegen nicht.

Bei der phasenbasierten Entfernungsmessung wird über jeden verfügbaren Antennenpfad zwischen den beiden Geräten ein Ton gesendet. Die Reihenfolge der verwendeten Pfade wird bei jedem Bluetooth®-Channel-Sounding-Schritt mithilfe eines DRBG zufällig bestimmt.

Eine Sounding-Sequenz besteht aus einer Abfolge abwechselnder Bitwerte von 0 und 1. Das entsprechende HF-Signal kann als aus zwei Tönen unterschiedlicher Frequenz und mit unterschiedlichen Phasen bestehend betrachtet werden. PBR-Berechnungen können daher unter Verwendung der Phasendifferenzen der beiden Töne durchgeführt werden, die im Feld „Sounding Sequence“ eines einzelnen CS_Sync-Pakets kodiert sind, während gleichzeitig das CS_Sync-Paket zur Berechnung der Round-Trip-Zeit genutzt wird. Die gleichzeitige Berechnung sowohl der RTT- als auch der PBR-Messungen auf der Grundlage eines einzelnen Pakets macht einen Angriff auf den Austausch extrem komplex.

Der Abschnitt „Bluetooth® Channel Sounding“ der Link-Layer-Spezifikation enthält eine Beschreibung eines Systems zur Erkennung von Angriffen. Die Erkennung von Bluetooth® Channel Sounding-Angriffen im Bluetooth-Controller basiert auf dem Abgleich empfangener Signale mit einer Referenzsignaldefinition sowie auf der Untersuchung des empfangenen Signals auf Anzeichen eines möglichen Angriffs, wie beispielsweise unerwartete Bitübergänge oder Phasenverschiebungen.

In der Bluetooth-Kernspezifikation ist eine standardisierte Kennzahl zur Angabe der Wahrscheinlichkeit eines laufenden Angriffs definiert, die als „Normalized Attack Detector Metric“ (NADM) bezeichnet wird. Tabelle 13 enthält die Definitionen der NADM-Werte.

NADM-WertBeschreibung
0x00Ein Angriff ist extrem unwahrscheinlich
0x01Ein Angriff ist sehr unwahrscheinlich
0x02Ein Angriff ist unwahrscheinlich
0x03Ein Angriff ist möglich
0x04Ein Angriff ist wahrscheinlich
0x05Ein Angriff ist sehr wahrscheinlich
0x06Ein Angriff ist sehr wahrscheinlich
0xFFUnbekannter NADM. Standardwert für RTT-Typen, die keine Zufallssequenz oder Messsequenz aufweisen.

Tabelle 13 - NADM-Werte

Abbildung 38

Abbildung 39 - Übersicht über das Angriffsdetektorsystem

Es gibt eine Reihe bekannter Angriffe auf die physikalische Schicht, bei denen ein Man-in-the-Middle-Angreifer (MITM) den Wert teilweise empfangener Symbole von einem legitimen sendenden Gerät vorhersagt und vollständige, generierte Versionen dieser Symbole mit manipuliertem Timing weiterleitet, sodass der legitime Empfänger die Umlaufzeit falsch berechnet. Die LE 2M 2BT PHY mit einem Bandbreiten-Bit-Perioden-Produkt von 2,0 verwendet Symbolimpulse, deren Dauer kürzer ist als die der Impulse anderer PHYs, was das Risiko solcher Angriffe verringert.

Die SNR-Steuerungsfunktion ermöglicht es dem Initiator und dem Empfänger, einen zuvor vereinbarten Anteil an Zufallsrauschen in die Signale einzumischen. Dies gilt nur für die Übertragung von CS_Sync-Paketen, die während der Schritte im Modus 1 (RTT) und Modus 3 (RTT und PBR) erfolgen. Durch das Einfügen von Rauschen in das Signal wird die Analyse für den Angreifer schwieriger und zeitaufwendiger, wodurch die Wahrscheinlichkeit eines erfolgreichen Angriffs verringert wird. Andererseits können der Initiator und der Reflektor, die sich zuvor auf den SNR geeinigt haben, das künstlich hinzugefügte Rauschen leicht herausfiltern.

Der Abschnitt Generic Access Profile (GAP) der Bluetooth Core Spezifikation definiert Sicherheitsmodi und Sicherheitsstufen. Eine formale Definition von vier Sicherheitsstufen für Bluetooth® Channel Sounding ist enthalten. Es ist wahrscheinlich, dass zukünftige Bluetooth-Profilspezifikationen auf diese Definitionen verweisen werden.

Controller können sich dafür entscheiden, weitere herstellerspezifische Sicherheitsmaßnahmen einzuführen.

Die Amplituden-basierte Angriffsresistenz stärkt die Sicherheitsfunktionen von Bluetooth® Channel Sounding. Durch die Definition eines präzisen Angriffsmodells, einer robusten DFT-basierten Erkennungsmetrik und eines gründlichen mehrstufigen Testverfahrens wird sichergestellt, dass zertifizierte Geräte ausgeklügelte Versuche zur Manipulation von Entfernungsmessungen zuverlässig erkennen können.

In Verbindung mit den notwendigen Aktualisierungen der HCI- und Link-Layer-Protokolle bietet die Funktion Channel Sounding Amplitude-based Attack Resilience einen umfassenden Rahmen für die Eindämmung sich entwickelnder Bedrohungen. Sie spiegelt das Engagement von Bluetooth für die Sicherheit wider und trägt dazu bei, dass die Präzisionsmesstechnologie auch angesichts neuer Herausforderungen sowohl genau als auch vertrauenswürdig bleibt.

Die Erstellung von Bluetooth-Feinanwendungen und -Produkten erfordert die Nutzung der Bluetooth® Channel Sounding des Controllers und die Kombination mit benutzerdefiniertem Code auf der Anwendungsebene. Die Entwickler der Anwendungskomponente einer Lösung müssen verschiedene Aspekte beachten, die in diesem Abschnitt hervorgehoben werden.

Der Bluetooth erzeugt keine direkten Entfernungsmessungen. Stattdessen werden während der Ausführung von CS-Schritten durch dencontroller Low-Level-Messungen der Phase und/oder des Timings vorgenommen, und anhand dieser Daten können Anwendungen Entfernungsmessungen berechnen.

Der Algorithmus, den Anwendungen für die Berechnung von Entfernungen verwenden, ist in der Kernspezifikation von Bluetooth nicht festgelegt. Folglich ist dies ein Bereich, in dem sich die Anbieter unterscheiden können. Bessere Algorithmen werden bessere Ergebnisse liefern.

Die Funktionsspezifikation der Host-Controller-Schnittstelle definiert zwei Ereignisse, die von einem Controller verwendet werden, um Bluetooth®-Channel-Sounding-Daten an den Host zu übermitteln. Die beiden Ereignisse heißen „LE CS Subevent Result“ und „LE CS Subevent Result Continue“.

Das Steuergerät fasst die Messungen zusammen, die während der in einem Bluetooth® Channel Sounding ausgeführten Schritte erzeugt werden. Vollständige oder partielle Ergebnissätze werden mit einem LE CS Subevent Result HCI-Ereignis gemeldet. Wenn ein unvollständiger Satz gemeldet wird, wird der Rest der Ergebnisse in einem oder mehreren LE CS Subevent Result Continue-Ereignissen gemeldet, die später gesendet werden. Die HCI-Ereignisfelder Subevent_Done_Status und Procedure_Done_Status zeigen der Anwendungsschicht an, ob alle Daten für das Unterereignis oder die Prozedur gemeldet wurden oder ob noch weitere folgen werden.

Abbildung 39

Abbildung 40 - Beispiel für Bluetooth® Channel Sounding HCI-Datenberichte

Die Bluetooth®-Channel-Sounding-HCI-Ereignisse übertragen verschiedene Arten von Daten vom Controller an den Host. Im Folgenden werden einige wichtige Felder und Datenstrukturen beschrieben.

Frequenzkompensation – Der Zweck der Mode-0-Schritte besteht darin, die Unterschiede zwischen den vom Initiator und vom Reflektor erzeugten Soll- und Ist-Frequenzen zu ermitteln. Daraus wird ein fraktioneller Frequenzversatz (FFO) berechnet, der anschließend dazu dient, die Auswirkungen dieser Unterschiede sowohl auf die Frequenz- als auch auf die Zeitwerte zu kompensieren und letztlich die Genauigkeit der Entfernungsmessungen zu verbessern.

Num_Steps_Reported – Dieses Feld gibt an, wie viele Schritte in diesem HCI-Ereignis gemeldet werden. Es gibt außerdem die Größe von vier schrittbezogenen Daten-Arrays an: Step_Mode, Step_Channel, Step_Data_Length und Step_Data.

Step_Mode [ ] — Dieses Array enthält den Modus jedes Schritts, geordnet nach Schrittnummer und ausgedrückt als Wert im Bereich von 0 bis 3.

Step_Channel [ ] — Dieses Array enthält den Index des HF-Kanals, der bei der Ausführung des entsprechenden Schritts verwendet wird.

Step_Data_Length [ ] — Die für jeden Schritt gemeldeten Daten variieren hinsichtlich ihres Inhalts und ihrer Struktur. Dieses Array enthält die Länge jedes Elements im zugehörigen Step_Data-Array.

Step_Data [ ] — Die für jeden Schritt gemeldeten Daten hängen vom Schrittmodus, der Gerätefunktion (Initiator oder Reflektor) und davon ab, ob eine Abtastsequenz verwendet wird oder nicht. Die Struktur, die die relevanten Daten enthält, wird als „Mode_Role_Specific_Info“-Objekt bezeichnet; es sind elf Varianten dieser Struktur definiert. Beispiele für Daten, die enthalten sein können, sind Packet_Quality, Tone_Quality, der Empfangssignalstärkenindikator (RSSI), der gemessene Frequenzversatz, ein NADM-Wert, die Antennenkennung, Phasenkorrekturterme und Messungen der verstrichenen Zeit zwischen Paketübertragung und -ankunft. Zeitwerte werden als Vielfaches von Einheiten von einer halben Nanosekunde ausgedrückt.

Die Anwendungsschicht ist dafür zuständig, zu entscheiden, welche Schrittmodi verwendet werden sollen, und – sofern sowohl ein Primärmodus als auch ein Untermodus zum Einsatz kommen – welches Verhältnis zwischen der Anzahl der Schritte der einzelnen ausgewählten Modi bestehen soll. Anwendungs- oder Produktentwickler müssen bei ihren Entscheidungen die Anforderungen an die Genauigkeit der Entfernungsmessung, die Sicherheit und die Latenz sowie die vom lokalen Controller unterstützten Funktionen berücksichtigen.

Die Anwendungsschicht kann durch die Auswahl von Moduskombinationen und RTT-Parametern einen gewissen Einfluss auf die Sicherheit der Gesamtlösung nehmen. Entwickler sollten zunächst die im Generic Access Profile (GAP) definierten Sicherheitsstufen verstehen und bewerten, um als Ausgangspunkt zu ermitteln, welche Sicherheitsoptionen sie wählen sollten.

Es wird empfohlen, PBR und RTT stets gemeinsam zu verwenden, damit die Entfernungsberechnungen anhand beider Methoden gegenseitig überprüft werden können. PBR wird durch Bluetooth® Channel Sounding unterstützt, um möglichst genaue Entfernungsmessungen zu gewährleisten, während die Unterstützung von RTT in erster Linie als Sicherheitsmaßnahme dient.

NADM-Werte werden vom NADM-Algorithmus imcontroller erzeugt, und für diese Werte ist eine standardisierte adjektivische Form von Bedeutungen definiert. Es ist jedoch die Anwendungsschicht, die entscheiden muss, welche Aktion (wenn überhaupt) für jeden der möglichen NADM-Werte zu ergreifen ist.

Bluetooth® Channel Sounding ist als erweiterbares Framework konzipiert, das durch schrittweise Funktionserweiterungen im Rahmen von Aktualisierungen der Kernspezifikation kontinuierlich weiterentwickelt wird. Während die Kernarchitektur und die Verfahren eine gemeinsame Grundlage bilden, können im Laufe der Zeit zusätzliche Funktionen eingeführt werden, um neu identifizierten Anforderungen, betrieblichen Erwägungen oder Verbesserungen bei der Implementierung Rechnung zu tragen. Dieser Abschnitt fasst die Erweiterungen von Bluetooth® Channel Sounding zusammen, die bestimmte Aspekte der Funktionen der Version 1 aus der Kernspezifikation v6.0 ergänzen. Da sich Channel Sounding weiterentwickelt, soll dieser Abschnitt erweitert werden, um zukünftige Verbesserungen zu berücksichtigen.

Die Bluetooth Core Specification Version 6.2 führt eine verbesserte Widerstandsfähigkeit gegen eine Klasse von Entfernungsangriffen ein, die Amplitudenmanipulationen ausnutzen, um Entfernungsmessungen im Channel Sounding zu beeinflussen. Diese Angriffe wenden ein periodisches Verstärkungsmuster an, das mit dem Symboltiming der Channel-Sounding-Pakete synchronisiert ist, was durch die Amplituden-Phasen-Umwandlung im analogen Frontend vorhersehbare Phasenverzerrungen im Empfänger verursacht. Um ein solches Verhalten zu erkennen, erweitert die Spezifikation das bestehende Normalized Attack Detector Metric (NADM)-Framework um eine auf der diskreten Fourier-Transformation (DFT) basierende Erkennungsmethode. Dieser Ansatz analysiert Energiekomponenten bei der Symbolfrequenz und deren Oberschwingungen, die für periodische Amplitudenmanipulation charakteristisch sind, und integriert die daraus resultierende Metrik in die bestehende NADM-Berichterstattung. Die Erweiterung stärkt die Fähigkeit von Channel Sounding, fortgeschrittene Early-Commit-Ranging-Angriffe zu erkennen, ohne spezifische Empfängerimplementierungen vorzuschreiben, wodurch Flexibilität gewahrt bleibt und gleichzeitig neu identifizierte Bedrohungsvektoren adressiert werden. 

Die Bluetooth Core Specification Version 6.3 führt die Unterstützung für einen Inline-Phasenkorrekturterm (Inline-PCT) als Erweiterung des phasenbasierten Entfernungsmessverfahrens „Channel Sounding“ ein. Inline-PCT ermöglicht es einem Reflektorgerät, vor der erneuten Übertragung einen Phasenkorrekturterm innerhalb der Funkverarbeitungskette anzuwenden, wodurch eine phasenangepasste Signalweiterleitung ermöglicht wird, ohne dass die gesamte Phasenkompensation digital beim Initiator durchgeführt werden muss. Durch die Einbindung der Phasenkorrektur inline kann dieser Mechanismus den mit der Phasenfehlerkompensation verbundenen Steuerungs- und Meldeaufwand reduzieren und gleichzeitig das grundlegende bidirektionale Channel-Sounding-Messmodell beibehalten. Die Unterstützung für Inline-PCT ist optional und wird zwischen den Geräten ausgehandelt, wodurch die Interoperabilität mit Implementierungen gewahrt bleibt, die auf eine initiatorseitige digitale Phasenkorrektur setzen. Weitere Informationen finden Sie in Abschnitt 3 der technischen Übersicht zur Bluetooth® Core Specification v6.3.

Die Bluetooth Core Specification Version 6.3 verbessert die Messungen der Round-Trip-Time (RTT) im Rahmen des Channel Sounding durch die Einführung von PHY-spezifischen RTT-Genauigkeitsangaben. Vor dieser Erweiterung meldeten Geräte einen einzigen RTT-Genauigkeitszielwert, der einheitlich für alle unterstützten PHYs galt, ungeachtet unterschiedlicher Symbolraten und Timing-Eigenschaften. Der aktualisierte Mechanismus ermöglicht es Geräten, RTT-Genauigkeitsanforderungen für jede PHY unabhängig voneinander zu deklarieren, einschließlich LE 1M und optionaler PHYs mit höherer Rate wie LE 2M. Dies ermöglicht eine genauere Abstimmung zwischen den RTT-Austauschzahlen und der erreichbaren Timing-Präzision jeder PHY, wodurch die Effizienz und Konsistenz in Multi-PHY-Umgebungen verbessert wird. Die Erweiterung wird durch aktualisierte Link-Layer-Fähigkeitsaustausche und versionierte Host-Controller-Interface-Befehle unterstützt, wodurch die Interoperabilität mit älteren Implementierungen gewahrt bleibt. Weitere Informationen finden Sie in Abschnitt 3 der technischen Übersicht zur Bluetooth® Core Specification v6.3.

Zur Einführung der Bluetooth® Channel Sounding wurden Änderungen an mehreren Schichten der Bluetooth Core Spezifikation vorgenommen. In diesem Abschnitt werden die wichtigsten Änderungen zusammengefasst, wobei die Absicht darin besteht, eine kapitelweise Referenz auf hohem Niveau zu bieten, die nur der Orientierung dient. Alle Einzelheiten sind in der Bluetooth Core Specification nachzulesen.

Band 1, Teil A der Bluetooth Core Specification beschreibt die Architektur der Technologie.

  • In Abschnitt 3, „Transportarchitektur“, werden eine neue Paketstruktur und ein neues Signalisierungsformat für Bluetooth® Channel Sounding vorgestellt. Außerdem werden der neue physikalische Kanal „LE Channel Sounding“ und die neue physikalische Verbindung „LE Channel Sounding“ definiert.
  • Abschnitt 9, „Bluetooth®-Kanalabtastung mit Bluetooth Low Energy“, enthält eine kurze Zusammenfassung der Bluetooth®-Kanalabtastungsfunktion.

Band 3, Teil C definiert das generische Zugangsprofil.

  • In Abschnitt 9 werden die GAP-Bluetooth®-Kanalabfrageverfahren sowie die Rollen des Initiators und des Reflektors vorgestellt.
  • In Abschnitt 10 werden die vier Sicherheitsstufen für die Bluetooth®-Kanalabfrage definiert.

Band 4, Teil E enthält die Funktionsspezifikation derController .

  • Abschnitt 7.7.6.5 „LE-Meta-Ereignis“ wurde aktualisiert und um eine Reihe neuer Ereignistypen im Zusammenhang mit dem Bluetooth®-Channel-Sounding erweitert, darunter das Ereignis „LE CS Subevent Result“ und das Ereignis „LE CS Subevent Result Continue“.
  • Abschnitt 7.8 „LE-Controller-Befehle“ enthält nun zusätzliche Befehle für die Verwendung mit Channel Sounding, darunter den Befehl „LE CS Read Remote FAE Table“, den Befehl „LE CS Create Config“, den Befehl „LE CS Security Enable“ und den Befehl „LE CS Procedure Enable“.

Band 6, Teil A enthält die Spezifikation der physikalischen Schicht.

  • In Abschnitt 1 wird der neue LE 2M 2BT PHY vorgestellt.
  • In Abschnitt 2 wird eine neue Kanalanordnung für Bluetooth® Channel Sounding vorgestellt.
  • In Abschnitt 3 wird die neue Funktion SNR-Kontrolle definiert.
  • Abschnitt 3.4 fügt eine Anforderung zur stabilen Phase für Geräte hinzu, die Bluetooth® Channel Sounding unterstützen.
  • Abschnitt 3.5 beschreibt die Anforderungen an die Frequenzmessung und -erzeugung beim Bluetooth® Channel Sounding. Dazu gehört auch eine Spezifikation für die Anforderungen an die Messung des Frequenzversatzes (fractional frequency offset, FFO).
  • Abschnitt 5.3 ist ein neuer Abschnitt, der die Antennenumschaltung für Bluetooth® Channel Sounding beschreibt.
  • Abschnitt 6 befasst sich mit den Anforderungen an die Phasenmessung und enthält eine Definition des Referenzempfängers, eine Beschreibung der Anforderungen an die Genauigkeit der Phasenmessung, Anforderungen an die Kompensation von Frequenzauslösefehlern und Regeln für die Phasenmessung.
  • Anhang B enthält ein Beispiel für den Aufbau einer Testausrüstung für Bluetooth® Channel Sounding.

Band 6, Teil B enthält die Spezifikation der Verbindungsschicht.

  • Abschnitt 2.4.2 definiert neue Link-Layer-Controller-PDU-Typen, die mit der Bluetooth® Channel Sounding verbunden sind, zusammen mit ihren Opcodes.
  • Abschnitt 4 enthält Aktualisierungen des Luftschnittstellenprotokolls der Verbindungsschicht für Bluetooth® Channel Sounding. Dazu gehören aktualisierte Anforderungen an die Genauigkeit der Sleep-Clock in Abschnitt 4.2 sowie eine Spezifikation für Verfahren, Ereignisse, Unterereignisse und Schritte von Bluetooth® Channel Sounding in Abschnitt 4.5.18. Sicherheitsanforderungen für eine mit Bluetooth® Channel Sounding verbundene ACL-Verbindung und die von ihr möglicherweise übertragenen Steuer-PDUs sind in Abschnitt 4.5.18.2 aufgeführt.
  • Abschnitt 5.1 behandelt das Thema Kontrolle der Verbindungsschicht. Er wurde aktualisiert, um neue Kontrollverfahren in Bezug auf Bluetooth® Channel Sounding aufzunehmen, wie z. B. das Bluetooth® Channel Sounding Start Verfahren, das Bluetooth® Channel Sounding Capabilities Exchange Verfahren, das Bluetooth® Channel Sounding Configuration Verfahren und das Bluetooth® Channel Sounding Start Verfahren.

Band 6, Teil H ist ein neuer Abschnitt, der sich mit der neuen Funktion Bluetooth® Channel Sounding beschäftigt. Er behandelt die Definition der physikalischen HF-Kanäle, die mit Bluetooth® Channel Sounding verwendet werden sollen, das neue CS_Sync-Paketformat, die Messung der RTT und die verschiedenen Methoden zur Ermittlung der Ankunfts- oder Abfahrtszeitstempel. Die neuen Kanalauswahlalgorithmen für Bluetooth® Channel Sounding werden in diesem Abschnitt zusammen mit Schrittmodi, Schrittkombinationen und Sequenzierungsregeln, Phasenmessungsregeln und Zufallsbiterzeugung unter Verwendung des DRBG definiert.

Mit Bluetooth® Channel Sounding können Entwickler interessante Produkte und Anwendungen entwickeln, die die sichere Fine-Ranging-Funktion der Funktion nutzen.

Endbenutzer von Find-My- und digitalen Schlüssellösungen, die auf der weltweit am weitesten verbreiteten drahtlosen Low-Power-Technologie basieren, werden dank der Qualität der Ergebnisse, die mit Geräten erzielt werden können, die die Bluetooth® Channel Sounding nutzen, von einer Leistungssteigerung profitieren. Und die Gewissheit, dass den product ein umfassender Satz von Sicherheitsfunktionen zur Verfügung steht, mit denen sie einschlägige Probleme angehen können, wird ihnen Sicherheit geben.

Die technische Flexibilität von Bluetooth® Channel Sounding bedeutet, dass Entwickler denjenigen Aspekten der Entfernungsmessung Priorität einräumen können, die für sie am wichtigsten sind, sei es Sicherheit, Genauigkeit oder Latenzzeit. Nicht alle Anwendungen sind gleich, und dies wurde bei der design der Bluetooth® Channel Sounding erkannt und berücksichtigt. Entwickler haben die Freiheit zu entscheiden, was für sie und ihre Benutzer bei der Implementierung ihrer Produkte am wichtigsten ist.

Jedes Jahr werden mehr als fünf Milliarden Bluetooth Geräte ausgeliefert. Daraus ergeben sich enorme Größenvorteile, die den product und Komponentenherstellern und letztlich auch deren Kunden zugute kommen.

Bluetooth® Channel Sounding und die Fähigkeit, eine sichere Feinortung durchzuführen, bieten die Möglichkeit, den Komfort und die Sicherheit vieler mit Bluetooth verbundener Geräte zu verbessern. Anwesenheitserkennung, Peilung und channel sounding können einzeln oder in Kombination verwendet werden, um raumbezogene Produkte und Anwendungen zu erstellen, von denen Endbenutzer und Unternehmen profitieren können.

Die Bluetooth-Technologie ist mittlerweile allgegenwärtig und basiert auf weit verbreiteten und genau definierten technischen Standards. Die Einführung von Bluetooth® Channel Sounding ist eine einfache und sichere Wahl für Entwickler, die ihre Bluetooth-Produkte um Funktionen zur Feinortung erweitern möchten. Laden Sie die Bluetooth Core Specification herunter, um alle Details zu dieser spannenden Ergänzung des umfangreichen Funktionsumfangs der Bluetooth-Technologie zu erfahren!

ArtikelStandort
Bluetooth®-Kernspezifikation v6.0https://www.bluetooth.com/specifications/specs/core60-html/
Finden Sie mein Profilhttps://www.bluetooth.com/specifications/specs/find-me-profile-1-0/
Sofortiger Alarmierungsdiensthttps://www.bluetooth.com/specifications/specs/immediate-alert-service-1-0/

FOTNOTEN


1. Allgemeines Attributprofil
2. Die Geschwindigkeit hängt vom Material ab, das das Signal durchdringt. In theoretischen Berechnungen wird jedoch üblicherweise die Lichtgeschwindigkeit zugrunde gelegt.
3. CS-Moden werden in Abschnitt 3.5 erläutert
4. Gaußsche Frequenzmodulation