Ranging: sequenza di messaggi out-of-band e specifica del payload

Android 16 ha introdotto il modulo Ranging. Questa specifica di protocollo e payload definisce la sequenza di messaggi e il payload della comunicazione fuori banda (OOB) utilizzata per scambiare le configurazioni di misurazione della distanza e per avviare e interrompere la misurazione della distanza tra il dispositivo iniziatore e il dispositivo risponditore che eseguono la misurazione della distanza.

Lo scopo principale di questa pagina è consentire ai fornitori di dispositivi non Android di implementare questa specifica in modo che i loro dispositivi possano essere compatibili per la misurazione della distanza con i dispositivi Android.

Messaggi e sequenza di messaggi

Questa sezione descrive i messaggi e la sequenza dello scambio di messaggi.

La tabella seguente mostra tutti i messaggi presenti nello scambio OOB:

Messaggio ID messaggio
Ranging Capability Request 0x0
Ranging Capability Response 0x1
Ranging Configuration 0x2
Ranging Configuration Response (facoltativo) 0x3
Stop Ranging 0x6
Stop Ranging Response (facoltativo) 0x7

Come mostrato nelle figure 1 e 2, il modo in cui viene attivato lo scambio di messaggi dipende dal canale di comunicazione.

Per i canali di comunicazione basati sulla connessione, come BLE GATT, lo scambio di messaggi inizia con il dispositivo iniziatore che invia Ranging Capability Request al dispositivo risponditore. Il dispositivo di risposta risponde inviando Ranging Capability Response, come mostrato nella Figura 1:

Flusso del canale di comunicazione basato sulla connessione

Figura 1. Scambio di messaggi OOB utilizzando un canale di comunicazione basato sulla connessione.

Per i canali di comunicazione basati sulla pubblicità, il dispositivo di risposta inizia con la pubblicazione di Ranging Capability. In questo caso, Ranging Capability Request non viene inviato dal dispositivo di avvio. Invece, dopo aver rilevato la pubblicità, quando il dispositivo di avvio (scanner iniziale) è pronto, risponde pubblicando Ranging Configuration come primo messaggio, come mostrato nella Figura 2:

Flusso del canale di comunicazione basato sugli annunci

Figura 2. Scambio di messaggi OOB utilizzando una comunicazione basata sulla pubblicità.

Il resto dello scambio di messaggi è lo stesso in entrambi i casi. Il dispositivo di risposta inizia la misurazione della distanza subito dopo aver ricevuto il messaggio Ranging Configuration. Il dispositivo risponditore smette di misurare la distanza dopo aver ricevuto o rilevato il messaggio Stop Ranging.

Nel flusso basato sulla connessione, il dispositivo di risposta compila le funzionalità solo delle tecnologie di misurazione della distanza richieste nel messaggio Ranging Capability Request, mentre nel flusso di pubblicità, il dispositivo di risposta deve elencare tutte le sue funzionalità perché non esiste un messaggio di richiesta di funzionalità precedente.

Il dispositivo iniziatore presuppone di ricevere una sola risposta a qualsiasi messaggio di richiesta che invia. Il dispositivo di risposta non deve fare alcuna ipotesi di questo tipo, in modo da poter rispondere a qualsiasi richiesta in qualsiasi ordine. In questo modo, il dispositivo di risposta può rispondere a più messaggi Ranging Capability Request consecutivi o a qualsiasi altro messaggio fuori ordine dal dispositivo iniziatore.

ID tecnologia di misurazione della distanza

Gli ID delle tecnologie di misurazione della distanza sono elencati nella tabella seguente:

Tecnologia di misurazione della distanza ID
UWB 0x0
CS 0x1
Wi-Fi NAN RTT 0x2
RSSI 0x3
RFU 0x4 - 0xFF

Questi ID vengono utilizzati nelle seguenti tabelle in cui è richiesto l'ID della tecnologia di misurazione della distanza. Per i campi contenenti la bitfield della tecnologia di misurazione della distanza, viene impostato un bit corrispondente all'indice dell'ID della tecnologia quando questa è inclusa nel bitfield.

Ad esempio, RSSI ha un valore ID pari a 3, ma se RSSI è incluso nel campo di bit della tecnologia di ranging, il bit con la posizione dell'ID (3) deve essere attivato (il primo bit si trova in posizione 0), il che rende il valore risultante del campo di bit 0x8. Se sono inclusi sia UWB che RSSI, il valore del campo di bit è 0x0A (i bit 0 e 3 sono attivi).

Formato dei messaggi

Ogni messaggio è composto da un'intestazione e da un payload.

Formato dei messaggi

Figura 3. Formato del messaggio.

Dimensioni: 2 byte

Descrizione: comune a tutti i messaggi, l'intestazione è la prima parte che viene inserita in un messaggio. L'intestazione contiene una versione e l'ID del tipo di messaggio. Il campo della versione specifica la versione di questa specifica a cui sono conformi i contenuti del messaggio. La versione attuale di questa specifica è 1. Per saperne di più su come viene utilizzato il controllo delle versioni tra dispositivi con versioni diverse, consulta la sezione Controllo delle versioni. L'intestazione rimane compatibile con le versioni precedenti, il che significa che il caso d'uso può sempre analizzarla per determinare la versione e l'ID del messaggio.

L'intestazione è riassunta nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 Versione 0x1 - Versione corrente
1 unit8 ID messaggio
  • 0x0 - Ranging Capability Request messaggio
  • 0x1 - Messaggio Ranging Capability Response
  • 0x2 - Ranging Configuration messaggio
  • 0x3 - Messaggio Ranging Configuration Response (facoltativo)
  • 0x6 - Messaggio Stop Ranging
  • 0x7 - Messaggio Stop Ranging Response (facoltativo)
  • 0x4-0x5, 0x8 - 0xFF RFU

Payload

Dimensioni: variano (a seconda del tipo di messaggio)

Descrizione:il payload è l'ultima parte del messaggio, dopo l'intestazione. Il payload dipende dal tipo di messaggio. Il formato del payload di ogni tipo di messaggio individuale è definito nelle sezioni seguenti.

Payload del messaggio di richiesta della funzionalità di raggruppamento

Dimensioni (dimensioni dell'intestazione non incluse): 2 byte

Descrizione: inviato dal dispositivo iniziatore per avviare lo scambio di messaggi. Questo messaggio è facoltativo quando il canale di comunicazione si basa sulla pubblicità, nel qual caso il dispositivo di risposta è tenuto a pubblicizzare un messaggio Ranging Capability come primo passaggio. Il dispositivo iniziatore (scanner iniziale) legge la pubblicità e risponde direttamente con un messaggio Ranging Capability, evitando la necessità di questo messaggio.

Il payload del messaggio Ranging Capability Request è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Bitfield delle tecnologie di misurazione richieste
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU

Payload del messaggio di risposta della funzionalità di misurazione della distanza

Dimensioni (dimensioni dell'intestazione non incluse): variabili (parte comune 2 byte più le dimensioni di ogni byte della tecnologia di misurazione inclusa)

Descrizione:inviato da chi ha risposto come risposta a un messaggio Ranging Capability Request. Il payload del messaggio è costituito dalla parte comune e da parti specifiche della tecnologia di misurazione della distanza (BLE CS, Wi-Fi NAN RTT, BLE RSSI), come mostrato nelle tabelle seguenti. Ogni parte specifica della tecnologia di misurazione deve essere aggiunta solo se questa tecnologia è supportata dal dispositivo di risposta ed è richiesta nel messaggio Ranging Capability Request. Nel caso di un canale di comunicazione pubblicitaria, devono essere incluse tutte le tecnologie di misurazione supportate.

Il payload del messaggio Ranging Capability Response comune è riassunto nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Bitfield delle tecnologie di misurazione supportate. Indica l'insieme di funzionalità delle tecnologie di misurazione che seguono nel resto del payload.
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU
2 array di byte Byte di capacità della tecnologia di misurazione. Blocchi ripetuti di struct definiti per tecnologia.

Il payload del messaggio UWB Ranging Capability Response è riassunto nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x0 - UWB
1 uint8 Dimensioni Dimensioni dei byte delle funzionalità UWB (inclusi i campi ID tecnologia e Dimensioni) in byte.
2 uint8*2 Indirizzo UWB Indirizzo UWB del dispositivo di 2 byte.
4 uint8*4 Bitfield dei canali supportati Bitfield dei canali supportati. Il bit impostato su 0 indica che non è supportato, 1 indica che è supportato. Il bit 0 corrisponde al canale 0.
LSB == channel 0
MSB == channel 31
8 uint8*4 Bitfield dell'indice del preambolo supportato Bitfield degli indici del preambolo supportati. Il bit impostato su 0 indica che non è supportato, 1 indica che è supportato. Il bit 0 corrisponde all'indice del preambolo 1.
LSB == preamble index 1
MSB == preamble index 32
12 uint8*4 Bitfield degli ID configurazione supportati Bitfield degli ID configurazione UWB supportati. Il bit impostato su 0 indica che non è supportato, 1 indica che è supportato.
LSB == config Id 0
>MSB == config Id 31
16 uint8*2 Intervallo minimo di misurazione supportato Indica l'intervallo di misurazione più veloce supportato in millisecondi. Valori consentiti (in ms):
  • 96
  • 120
  • 240
  • 600
18 uint8 Durata minima dello slot supportata Indica la durata minima supportata dello slot in millisecondi. Ad esempio, se il dispositivo restituisce 1 ms, si presume che supporti anche durate degli slot di 2 ms o più. Valori consentiti (in ms):
  • 1
  • 2
19 Bitfield del ruolo del dispositivo UWB supportato Bitfield dei ruoli UWB supportati. Ad esempio, se entrambi supportano il valore del campo finale è 0x3.
  • 0x1 - ruolo di iniziatore supportato
  • 0x2 - ruolo di risponditore supportato

Il payload del messaggio BLE CS Ranging Capability Response è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x1 - BLE CS
1 uint8 Dimensioni Dimensioni dei byte delle funzionalità BLE CS (inclusi i campi ID tecnologia e Dimensioni) in byte.
2 uint8 Bitfield del tipo di sicurezza supportato Bitfield dei tipi di sicurezza supportati per BLE CS.
  • 0x01 - CS_SECURITY_LEVEL_UNKNOWN
  • 0x02 - CS_SECURITY_LEVEL_ONE
  • 0x04 - CS_SECURITY_LEVEL_TWO
  • 0x08 - CS_SECURITY_LEVEL_THREE
  • 0x10 - CS_SECURITY_LEVEL_FOUR
3 uint8*6 Indirizzo dispositivo L'indirizzo del dispositivo utilizzato per BLE CS; in ordine big-endian.

Il payload del messaggio Wi-Fi NAN RTT Ranging Capability Response è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x2 - Wi-Fi NAN RTT
1 uint8 Dimensioni Dimensioni dei byte delle funzionalità BLE RSSI (inclusi i campi ID tecnologia e Dimensioni) in byte.
2 uint8 Bitfield delle funzionalità supportate Campo di bit delle funzionalità supportate.
  • 0x01 - 11mc capable
  • 0x02 - 11az capable
3 uint8 Supporta la misurazione periodica
  • 0x0 - periodic ranging not supported
  • 0x1 - periodo compreso supportato
4 uint8 Larghezza di banda supportata Queste informazioni aiutano a derivare la precisione di misurazione raggiungibile utilizzando Wi-Fi NAN e possono aiutare le app a determinare se utilizzare UWB, BLE CS, BLE RSSI o Wi-Fi NAN per la misurazione.
  • 0x00 - 20 MHz
  • 0x01 - 40 MHz
  • 0x02 - 80 MHz
  • 0x03 - 160 MHz
  • 0x04 - 80+80 MHz
  • 0x05 - 320 MHz
  • RFU
5 uint8 Numero supportato di catene di ricezione Queste informazioni aiutano a derivare la precisione di misurazione raggiungibile utilizzando Wi-Fi NAN e possono aiutare le app a determinare se utilizzare UWB, BLE CS, BLE RSSI o Wi-Fi NAN per la misurazione.
  • 0x00 - Non definito
  • 0x01 - 1 catena RX
  • 0x02 - 2 RX chains
  • 0x03 - 3 RX chains
  • 0x04 - 4 catene RX

Il payload del messaggio BLE RSSI Ranging Capability Response è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x3 - BLE RSSI
1 uint8 Dimensioni Le dimensioni dei byte delle funzionalità RSSI BLE (inclusi i campi ID tecnologia e Dimensioni) in byte
2 uint8*6 Indirizzo dispositivo L'indirizzo del dispositivo utilizzato per BLE RSSI; in ordine big endian

Payload del messaggio di configurazione del ranging

Dimensioni (dimensioni dell'intestazione non incluse): variabile (parte comune di 4 byte più le dimensioni di ogni byte della tecnologia di misurazione inclusa).

Descrizione: questo messaggio viene inviato dall'iniziatore e contiene le configurazioni con cui ogni tecnologia di misurazione può iniziare la misurazione. Il dispositivo di risposta deve provare ad avviare la misurazione della distanza con ogni tecnologia di misurazione della distanza indicata alla ricezione di questo messaggio. Il payload del messaggio è costituito dalla parte comune e dalle parti specifiche della tecnologia di misurazione della distanza (UWB, BLE CS, Wi-Fi NAN RTT, BLE RSSI), come mostrato nelle tabelle seguenti.

Il payload del messaggio Ranging Configuration comune è riassunto nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Bitfield del set di configurazione delle tecnologie di misurazione della distanza Bitfield delle tecnologie di misurazione della distanza per cui questo messaggio contiene dati di configurazione e per cui devono essere impostati i parametri di configurazione.
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU
2 uint8*2 Bitfield RFU. Deve essere impostato sullo stesso valore del campo Bitfield di configurazione delle tecnologie di misurazione.
4 array di byte Byte di configurazioni delle tecnologie di ranging Blocchi ripetuti di struct definiti per tecnologia

Il payload del messaggio UWB Ranging Configuration è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x0 - UWB
1 uint8 Dimensioni Dimensioni della configurazione UWB (inclusi i campi ID tecnologia e Dimensioni) in byte
2 uint8*2 Indirizzo UWB Indirizzo UWB del dispositivo di 2 byte
4 uint8*4 ID sessione ID sessione generato. L'ID sessione è un identificatore univoco della sessione di misurazione della distanza tra lo smartphone e la periferica.
8 uint8 ID configurazione selezionato Numero ID configurazione selezionato in formato intero. L'ID configurazione specifica i parametri di temporizzazione e il tipo di sicurezza da utilizzare per la sessione di misurazione UWB.
9 uint8 Canale selezionato Canale selezionato per la sessione di misurazione UWB
10 uint8 Indice del preambolo selezionato Indice del preambolo selezionato per la sessione di misurazione UWB
11 uint8*2 Intervallo di misurazione selezionato Velocità dell'intervallo di misurazione selezionato in millisecondi. Valori consentiti (in ms):
  • 96
  • 120
  • 240
  • 600
13 uint8 Durata spazio selezionata Durata dello slot selezionato in millisecondi. Valori consentiti (in ms):
  • 1
  • 2
14 uint8 Lunghezza della chiave di sessione Lunghezza della chiave di sessione in byte
15 array di byte Chiave sessione Chiave sessione. Se viene utilizzato S-STS, i primi due byte sono l'ID fornitore e i sei byte successivi sono STATIC STS IV. Se viene utilizzato P-STS, si tratta di una chiave di sessione di 16 o 32 byte. Il tipo di sicurezza utilizzato è determinato dall'ID configurazione.
varia uint8*2 Codice paese Codice paese ISO 3166-1 alpha-2, rappresentato da due caratteri ASCII
varia uint8 Ruolo del dispositivo selezionato
  • 0x01 - Iniziatore
  • 0x02 - Responder
varia uint8 Modalità del dispositivo selezionata
  • 0x01 - Controller
  • 0x02 - Controlee

Il payload del messaggio BLE CS Ranging Configuration è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x1 - BLE CS
1 uint8 Dimensioni Dimensioni della configurazione BLE CS (inclusi i campi ID tecnologia e Dimensioni) in byte
2 uint8 Tipo di sicurezza selezionato Tipo di sicurezza selezionato. Valori consentiti:
  • 0x0 - CS_SECURITY_LEVEL_UNKNOWN
  • 0x1 - CS_SECURITY_LEVEL_ONE
  • 0x2 - CS_SECURITY_LEVEL_TWO
  • 0x3 - CS_SECURITY_LEVEL_THREE
  • 0x4 - CS_SECURITY_LEVEL_FOUR
3 uint8*6 Indirizzo dispositivo L'indirizzo del dispositivo utilizzato per BLE CS, in ordine big endian

Il payload del messaggio Wi-Fi NAN RTT Ranging Configuration è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x2 - Wi-Fi NAN RTT
1 uint8 Dimensioni Dimensioni della configurazione RTT NAN Wi-Fi (inclusi i campi ID tecnologia e Dimensioni) in byte
2 uint8 Lunghezza del nome del servizio Lunghezza del campo Nome servizio in byte. Consulta la specifica Wi-Fi Aware v4.0, sezione 1.3.3, tabella 1. Definizioni.
3 array di byte Nome servizio Nome del servizio. Consulta la specifica Wi-Fi Aware v4.0, sezione 1.3.3, tabella 1. Definizioni.
varia uint8 Ruolo del dispositivo
  • 0x0 - Responder (editore del servizio NAN)
  • 0x1 - Iniziatore (abbonato al servizio NAN)
varia uint8 Utilizzare la misurazione periodica
  • 0x0 - Rilevamento periodico disattivato
  • 0x1 - Rilevamento periodico abilitato

Il payload del messaggio BLE RSSI Ranging Configuration è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8 ID tecnologia di misurazione della distanza 0x3 - BLE RSSI
1 uint8 Dimensioni Dimensioni della configurazione RSSI BLE (inclusi i campi ID tecnologia e Dimensioni) in byte
2 uint8*6 Indirizzo dispositivo L'indirizzo del dispositivo utilizzato per BLE RSSI; in ordine big endian

Payload del messaggio di risposta alla configurazione del ranging

Dimensioni (dimensioni dell'intestazione non incluse): 2 byte

Description (Descrizione):questo messaggio viene inviato da chi ha risposto come risposta al messaggio Ranging Configuration. Questo messaggio è facoltativo, è obbligatorio solo quando il canale di comunicazione utilizzato richiede una risposta esplicita per ogni richiesta.

Il payload del messaggio Ranging Configuration Response è riassunto nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Bitfield di configurazione delle tecnologie di misurazione impostato correttamente Bitfield delle tecnologie di misurazione che sono state impostate correttamente. Il campo di bit imposta il bit della tecnologia di misurazione a 1 se la tecnologia è stata richiesta e impostata correttamente e a 0 in caso contrario.
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU

Stop Ranging message payload

Dimensioni (dimensioni dell'intestazione non incluse): 2 byte

Descrizione: questo messaggio viene inviato dal dispositivo iniziatore quando è il momento di interrompere la misurazione della distanza con la tecnologia di misurazione della distanza specificata.

Il payload del messaggio Stop Ranging è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Tecnologie di ranging per interrompere il bitfield Bitfield delle tecnologie di misurazione che devono interrompere la misurazione. Il bit impostato su 1 indica che la tecnologia di misurazione della distanza deve interrompere la misurazione, mentre 0 indica che la tecnologia di misurazione della distanza non stava misurando in primo luogo o che deve continuare a misurare se lo stava già facendo. Per alcune tecnologie di misurazione della distanza (come CS), questa operazione non ha effetto perché la misurazione della distanza viene avviata e interrotta solo sul lato dell'iniziatore.
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU

Stop Ranging Response message payload

Dimensioni (dimensioni dell'intestazione non incluse): 2 byte

Description (Descrizione):questo messaggio viene inviato da chi ha risposto come risposta al messaggio Stop Ranging. Questo messaggio è facoltativo, è richiesto solo quando il canale di comunicazione utilizzato richiede una risposta esplicita per ogni richiesta.

Il payload del messaggio Stop Ranging Response è riepilogato nella tabella seguente:

Ottetto Tipo di dati Descrizione Valore
0 uint8*2 Ranging technologies stopped successfully bitfield Bitfield delle tecnologie di misurazione che hanno interrotto la misurazione. Il campo di bit imposta il bit della tecnologia di misurazione su 1 se è stato richiesto l'arresto della tecnologia e se l'operazione è riuscita, altrimenti su 0.
  • 0x01 - UWB
  • 0x02 - BLE channel sounding
  • 0x04 - Wi-Fi NAN RTT
  • 0x08 - BLE RSSI
  • RFU

Controllo delle versioni

La versione della specifica è contenuta nell'intestazione di ogni messaggio. Questa sezione definisce come viene condotta la comunicazione quando uno dei dispositivi (l'iniziatore o il risponditore) utilizza una versione precedente rispetto all'altro dispositivo.

Caso 1: canale di comunicazione basato sulla connessione

Questa sezione descrive i casi che utilizzano un canale di comunicazione basato sulla connessione, in cui Ranging Capability Request è il primo messaggio inviato dal dispositivo iniziatore.

Scenario 1.a: l'iniziatore supporta la versione più recente, il risponditore supporta la versione precedente della specifica.

Il dispositivo iniziatore invia il messaggio Ranging Capability Request con la versione più recente. Il dispositivo che risponde supporta solo la versione precedente, quindi risponde con quella e la versione precedente del dispositivo che risponde viene utilizzata per il resto dello scambio di messaggi. Ciò significa che il messaggio Ranging Capability Request deve essere compatibile con le versioni precedenti.

Scenario 1.b: l'iniziatore supporta una versione precedente, il risponditore supporta una versione più recente della specifica.

Il dispositivo di risposta rileva che il dispositivo di inizializzazione non è in grado di utilizzare la versione più recente, quindi invia messaggi solo utilizzando la versione precedente richiesta inizialmente dal dispositivo di inizializzazione.

Scenario 2: canale di comunicazione basato sulla pubblicità

Questa sezione descrive i casi che utilizzano un canale di comunicazione basato sulla pubblicità, in cui il dispositivo di risposta pubblicizza Ranging Capability Request direttamente, senza una richiesta iniziale.

Scenario 2.a: l'iniziatore supporta una versione più recente, il risponditore supporta una versione precedente della specifica.

La versione precedente impostata nella pubblicità Ranging Capability Response viene utilizzata per il resto della comunicazione.

Scenario 2.b: l'iniziatore supporta una versione precedente, il risponditore supporta una versione più recente della specifica.

La versione più recente della pubblicità Ranging Capability Response deve essere compatibile con le versioni precedenti, in modo che il dispositivo iniziatore possa leggere il messaggio anche se utilizza una versione più recente. Il dispositivo iniziatore invia quindi il messaggio Ranging Configuration utilizzando la versione precedente supportata. Questa è la versione utilizzata per il resto della comunicazione.

Per garantire la compatibilità con le versioni precedenti di Ranging Capability Response, tutti i nuovi campi aggiunti alla versione successiva di questa specifica nel payload del messaggio Ranging Capability Response devono essere aggiunti alla fine del payload e nessuno dei campi esistenti può essere modificato. Durante l'analisi della configurazione, se la dimensione indicata è maggiore del previsto, i campi aggiuntivi devono essere ignorati da qualsiasi dispositivo che può comprendere solo la versione precedente della specifica.

Frammentazione

Questa specifica è indipendente dal canale di comunicazione, pertanto non definisce come frammentare il payload del messaggio nei casi in cui un singolo messaggio è troppo grande per essere inserito in un pacchetto di trasferimento del canale di comunicazione utilizzato. Il modulo Ranging prevede di ricevere ogni messaggio nella sua forma completa. La responsabilità della frammentazione spetta all'implementatore del canale di comunicazione OOB.

Specifiche della tecnologia di misurazione della distanza

Questa sezione contiene dettagli specifici della tecnologia di misurazione della distanza.

Specifiche della banda ultralarga (UWB)

Questa sezione descrive i dettagli specifici dell'ultra wideband.

ID configurazione

I dati di configurazione OOB scambiati per la tecnologia UWB non contengono un insieme completo di parametri configurabili disponibili richiesti dalla tecnologia UWB per avviare una sessione di misurazione della distanza UWB. Questo perché alcuni parametri vengono selezionati implicitamente dall'ID configurazione scelto.

Ogni ID configurazione è un insieme di parametri di configurazione UWB predefiniti documentati in UwbRangingParams. Il dispositivo di risposta invia un elenco di tutti gli ID configurazione supportati nell'ambito del messaggio di risposta alla funzionalità e l'iniziatore seleziona uno degli ID configurazione supportati da utilizzare. In questo modo, durante la configurazione OOB viene scambiato un insieme più piccolo di parametri di configurazione. Inoltre, limita la quantità di possibili combinazioni di parametri che possono essere utilizzati per la misurazione con UWB, il che rende possibile il test solo delle combinazioni di parametri consentite.

Richiesta di funzionalità dopo ogni sessione UWB

Dopo aver interrotto una sessione UWB esistente e prima di avviarne una nuova, il dispositivo iniziatore deve richiedere le funzionalità del dispositivo risponditore e impostare nuovamente i parametri di configurazione, perché l'indirizzo UWB può ruotare non appena termina la sessione di misurazione della distanza corrente.

Specifiche del rilevamento del canale BLE (CS)

Questa sezione descrive i dettagli specifici del sounding del canale.

Legame richiesto tra i dispositivi

Per il funzionamento della misurazione della distanza tramite il rilevamento del canale è necessario un accoppiamento esistente tra il dispositivo iniziatore e quello di risposta. Questa specifica non fornisce un modo per creare un accoppiamento tra i dispositivi. L'utente delle API Ranging deve stabilire questo accoppiamento tra i dispositivi.

Azione richiesta da parte del rispondente per l'assistenza clienti

In UWB, entrambi i dispositivi devono chiamare in modo esplicito le API di avvio e interruzione del rilevamento della distanza UWB. Al contrario, per CS è necessario solo il dispositivo iniziatore per avviare la misurazione CS chiamando lo stack Bluetooth (BT). Il resto dell'inizializzazione sul lato del risponditore avviene in banda tramite Bluetooth. Ciò significa che, alla ricezione del messaggio Ranging Configuration o del messaggio Stop Ranging per CS, il lato del risponditore non deve fare nulla se il Bluetooth è attivato. Il dispositivo di risposta potrebbe utilizzare questi messaggi come trigger per aggiornare la UI o, ad esempio, far lampeggiare i LED del dispositivo.