Android 16 ha introdotto il modulo Ranging. Questa specifica di protocollo e payload definisce la sequenza di messaggi e il payload della comunicazione out-of-band (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. Android 17 introduce la versione 3 di questa specifica.
Questa pagina descrive come i fornitori di dispositivi non Android possono implementare questa specifica in modo che i loro dispositivi siano compatibili con i dispositivi Android.
Un'implementazione di questa specifica nel Packet Description Language (PDL) di Google è disponibile su GitHub. Da questa implementazione, il compilatore PDL può generare codice di serializzazione e deserializzazione per i messaggi definiti in questa specifica. Questa specifica supporta una serie di linguaggi di destinazione, tra cui C++, Rust e Java.
Novità della versione 3
La versione 3 della specifica OOB introduce le seguenti modifiche:
- Notifica di movimento: un messaggio che il dispositivo dell'inserzionista utilizza per notificare al dispositivo di avvio una modifica del movimento.
- Configurazione della distanza: include un nuovo campo
Motion supportper comunicare all'iniziatore di notificare al rispondente eventuali cambiamenti nel movimento periferico da parte del rispondente. - Aggiungi il supporto della nuova tecnologia Wi-Fi PD in Funzionalità di misurazione della distanza e Configurazione della misurazione della distanza.
- Ritiro dei campi
Supported BandwidtheSupported number of Receive chainsinWi-Fi NAN RTT Ranging Capability.
Endianness
Se non diversamente specificato, tutti i campi numerici multi-byte nei messaggi sono in ordine little-endian.
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 |
Motion Notification |
0x8 |
Lo scambio di messaggi inizia con l'invio di Ranging
Capability Request dal dispositivo iniziatore al dispositivo risponditore. Il dispositivo di risposta risponde
inviando Ranging Capability Response, come mostrato nella Figura 1:
Figura 1. Scambio di messaggi OOB utilizzando un canale di comunicazione basato sulla connessione.
Il dispositivo di risposta inizia a misurare la distanza immediatamente dopo aver ricevuto il messaggio Ranging
Configuration. Il dispositivo di risposta smette di misurare la distanza dopo aver ricevuto o
rilevato il messaggio Stop Ranging.
Il dispositivo di risposta compila le funzionalità
solo delle tecnologie di misurazione della distanza richieste nel messaggio Ranging Capability Request.
Il dispositivo iniziatore prevede di ricevere una sola risposta a qualsiasi messaggio di richiesta
che invia. Il dispositivo di risposta non deve fare queste ipotesi, in modo da poter
rispondere a qualsiasi richiesta in qualsiasi ordine. In questo modo si verifica che il dispositivo di risposta possa
rispondere a più messaggi Ranging Capability Request consecutivi o a qualsiasi
altro messaggio fuori ordine dal dispositivo iniziatore.
Transizione tecnologica
La versione OOB consente ai dispositivi di passare dinamicamente da una tecnologia di misurazione all'altra durante una sessione. Per semplificare questa procedura, l'iniziatore può:
- Invia più messaggi
Ranging Configurationper avviare nuove tecnologie. - Invia più messaggi
Stop Rangingper interrompere le tecnologie attive.
L'ordine di questi messaggi varia a seconda dello schema di transizione supportato dal risponditore:
- Interruzione prima della creazione:l'iniziatore può passare a una nuova tecnologia solo
interrompendo la prima con un messaggio
Stop Rangingprima di avviare la seconda con un messaggioRanging Configuration. - Make-before-break:l'iniziatore può avviare una nuova tecnologia utilizzando un messaggio
Ranging Configurationprima di interrompere le tecnologie esistenti con un messaggioStop Ranging.
Il risponditore deve implementare il supporto per uno di questi schemi di transizione in
conformità con il valore del campo supported technology transitioning
nel relativo Ranging Capability Response.
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 |
| Wi-Fi PD | 0x4 |
| RFU | 0x5 - 0xFF |
Questi ID vengono utilizzati nelle tabelle di questa pagina in cui è richiesto l'ID della tecnologia di misurazione della distanza. Per i campi contenenti il bitfield della tecnologia di misurazione, 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 messaggio
Ogni messaggio è composto da un'intestazione e da un payload.
Figura 3. Formato del messaggio.
Intestazione
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. Per ulteriori informazioni su come viene utilizzato il controllo delle versioni tra dispositivi con versioni diverse, vedi 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 |
|
| 1 | uint8 | ID messaggio |
|
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 misurazione della distanza
Dimensioni (dimensioni dell'intestazione non incluse): 2 byte
Description: Sent by the initiator device to initiate the message exchange.
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 della distanza richieste |
|
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 rilevamento 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.
Il payload del messaggio Ranging Capability Response comune è riepilogato 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 della distanza che seguono nel resto del payload. |
|
| 2 | array di byte | Byte di capacità della tecnologia di misurazione. | Blocchi ripetuti di struct definiti per tecnologia. |
| Variabile | uint8 | Indica il supporto per la transizione tecnologica. |
|
| Variabile | uint16 | Indica il tipo di dispositivo del rispondente. |
|
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 0MSB == 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 1MSB == 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 0MSB == 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):
|
| 18 | uint8 | Durata minima dello slot supportata | Indica la durata dello slot più breve supportata in millisecondi. Ad esempio, se il dispositivo restituisce 1 ms, si presume che supporti anche durate degli slot di 2 ms o superiori. Valori consentiti (in ms):
|
| 19 | uint8 | Bitfield del ruolo del dispositivo UWB supportato | Bitfield dei ruoli UWB supportati. Ad esempio, se entrambi supportano il valore del campo finale è 0x3.
|
Il payload del messaggio BLE CS Ranging Capability Response è riassunto 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.
|
| 3 | uint8*6 | Indirizzo del 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à RTT NAN Wi-Fi (inclusi i campi ID tecnologia e Dimensioni). |
| 2 | uint8 | Bitfield delle funzionalità supportate | Campo di bit delle funzionalità supportate.
|
| 3 | uint8 | Supporta la misurazione periodica |
|
| 4 | uint8 | Larghezza di banda supportata | DEPRECATO: queste informazioni aiutano a derivare
l'accuratezza della misurazione della distanza ottenibile 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 della distanza.
|
| 5 | uint8 | Numero supportato di catene di ricezione | DEPRECATO:queste informazioni aiutano a derivare l'accuratezza della misurazione della distanza ottenibile 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 della distanza.
|
Il payload del messaggio BLE RSSI Ranging Capability Response è riassunto 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 del dispositivo | L'indirizzo del dispositivo utilizzato per BLE RSSI; in ordine big-endian |
Il payload del messaggio Wi-Fi PD Ranging Capability Response è riepilogato nella tabella seguente:
| Ottetto | Tipo di dati | Descrizione | Valore |
|---|---|---|---|
| 0 | uint8 | ID tecnologia di misurazione della distanza | 0x4 - Wi-Fi PD |
| 1 | uint8 | Dimensioni | Le dimensioni dei byte delle funzionalità di Wi-Fi PD (inclusi i campi ID tecnologia e Dimensioni) in byte |
| 2 | uint8 | Funzionalità supportate | Bitmap
|
| 3 | uint8 | Modalità PASN | Bitmap
|
| 4 | uint8*6 | Indirizzo del dispositivo | L'indirizzo del dispositivo utilizzato per Wi-Fi PD, in ordine big-endian. |
| 10 | uint8*2 | Intervallo minimo di misurazione della distanza 802.11mc | Intervallo minimo di misurazione supportato nel formato big-endian per 11mc |
| 12 | uint8*2 | Intervallo minimo di misurazione della distanza 802.11az | Intervallo minimo di misurazione supportato nel formato big-endian per 11az |
| 14 | uint8 | Tipo di preambolo massimo |
Ciò presuppone che tutti i tipi di preambolo inferiori siano supportati. |
| 15 | uint8 | Larghezza massima del canale |
Ciò presuppone che tutte le larghezze di banda del canale inferiori siano supportate. |
| 16 | uint8*2 | Frequenza dei canali supportati |
|
Payload del messaggio di configurazione del ranging
Dimensioni (dimensioni dell'intestazione non incluse): variabili (parte comune di 4 byte più le dimensioni di ogni byte della tecnologia di rilevamento inclusa).
Descrizione: questo messaggio viene inviato dall'iniziatore e contiene le configurazioni con cui ogni tecnologia di misurazione della distanza può iniziare a misurare. Il dispositivo di risposta deve tentare di 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 è riepilogato nella tabella seguente:
| Ottetto | Tipo di dati | Descrizione | Valore |
|---|---|---|---|
| 0 | uint8*2 | Bitfield del set di configurazione delle tecnologie di misurazione | Bitfield delle tecnologie di misurazione della distanza per le quali questo messaggio contiene dati di configurazione e per le quali devono essere impostati i parametri di configurazione.
|
| 2 | uint8*2 | Bitfield | RFU. Deve essere impostato sullo stesso valore del campo Bitfield del set di configurazione delle tecnologie di misurazione della distanza. |
| 4 | array di byte | Byte di configurazione delle tecnologie di misurazione della distanza | Blocchi ripetuti di struct definiti per tecnologia |
| Variabile | uint8 | Supporto per il movimento | Motion Notification ha richiesto
|
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 per la 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):
|
| 13 | uint8 | Durata dello spazio selezionato | Durata dello slot selezionato in millisecondi. Valori consentiti (in ms):
|
| 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 |
|
| varia | uint8 | Modalità dispositivo selezionata |
|
Il payload del messaggio BLE CS Ranging Configuration è riassunto 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:
|
| 3 | uint8*6 | Indirizzo del 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 dispositivo |
|
| varia | uint8 | Utilizzare la misurazione periodica |
|
Il payload del messaggio BLE RSSI Ranging Configuration è riassunto 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 del dispositivo | L'indirizzo del dispositivo utilizzato per BLE RSSI; in ordine big-endian |
Il payload del messaggio Wi-Fi PD Ranging Configuration è riepilogato nella tabella seguente:
| Ottetto | Tipo di dati | Descrizione | Valore |
|---|---|---|---|
| 0 | uint8 | ID tecnologia di misurazione della distanza | 0x4 - Wi-Fi PD |
| 1 | uint8 | Dimensioni | Dimensioni della configurazione Wi-Fi PD (inclusi i campi ID tecnologia e Dimensioni) in byte |
| 2 | uint8 | Funzionalità |
|
| 3 | uint8*6 | Indirizzo MAC | Indirizzo MAC dell'iniziatore |
| 9 | uint8*2 | Intervallo di misurazione | Intervallo di misurazione in ms |
| 11 | uint8 | Preambolo selezionato |
|
| 12 | uint8 | Larghezza del canale selezionato |
|
| 13 | uint8 | Canale selezionato |
|
| 14 | uint8 | Modalità PASN selezionata |
|
| 15 | array di byte | Chiave dell'identità del dispositivo | Array fisso di 16 byte Nota: questo campo è valido solo per la modalità PASN autenticata e non deve essere impostato per la modalità PASN non autenticata |
| 31 | uint8 | Lunghezza della password | Lunghezza della password. Nota:questo campo è valido solo per la modalità PASN autenticata e non deve essere impostato per la modalità PASN non autenticata. |
| varia | array di byte | Password | Password come array di byte.
Nota:questo campo è valido solo per la modalità PASN autenticata e non deve essere impostato per la modalità PASN non autenticata. |
Payload del messaggio di risposta alla configurazione del ranging
Dimensioni (dimensioni dell'intestazione non incluse): 2 byte
Descrizione: questo messaggio viene inviato dal risponditore in risposta al messaggio
Ranging Configuration. Questo messaggio è facoltativo; è richiesto 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 della distanza impostato correttamente | Bitfield delle tecnologie di misurazione che sono state impostate correttamente. Il campo di bit imposta il bit della tecnologia di ranging su 1 se la tecnologia è stata richiesta e impostata correttamente e su 0 in caso contrario.
|
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 misurazione per arrestare il campo di bit | Bitfield delle tecnologie di misurazione della distanza 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.
|
Stop Ranging Response message payload
Dimensioni (dimensioni dell'intestazione non incluse): 2 byte
Descrizione: questo messaggio viene inviato dal risponditore in 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 | Bitfield delle tecnologie di misurazione della distanza interrotte correttamente | 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'arresto è andato a buon fine, altrimenti su 0.
|
Payload del messaggio di notifica di movimento
Dimensioni (dimensioni dell'intestazione non incluse): 1 byte
Descrizione:il dispositivo di risposta invia questo messaggio per informare il dispositivo di avvio di eventuali modifiche al suo stato di movimento.
| Ottetto | Tipo di dati | Descrizione | Valore |
|---|---|---|---|
| 0 | uint8 | Movimento |
|
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
(il dispositivo che avvia la comunicazione o quello che risponde) utilizza una versione precedente rispetto all'altro
dispositivo. Ranging Capability Request è il primo messaggio inviato dal dispositivo
iniziatore.
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.
L'iniziatore supporta la versione precedente, il rispondente supporta la versione più recente della specifica
Il dispositivo di risposta rileva che il dispositivo di avvio non è in grado di utilizzare la versione più recente, quindi invia messaggi solo utilizzando la versione precedente richiesta inizialmente dal dispositivo di avvio.
Per garantire la compatibilità con le versioni precedenti dei messaggi, tutti i nuovi campi aggiunti alla versione successiva di questa specifica devono essere accodati 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 della banda ultralarga.
ID configurazione
I dati di configurazione OOB scambiati per UWB non contengono un insieme completo di parametri configurabili disponibili richiesti da 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. Ciò consente di scambiare un insieme più piccolo di parametri di configurazione
durante la configurazione OOB. Inoltre, limita il numero 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 sondaggio sul canale.
Crittografia dei link richiesta tra i dispositivi
Per il funzionamento della misurazione della distanza tramite il rilevamento del canale è necessario un legame esistente tra il dispositivo iniziatore e quello risponditore. Questa specifica non fornisce un modo per creare un accoppiamento tra i dispositivi. Devi stabilire questo accoppiamento tra i dispositivi quando utilizzi le API Ranging.
Azione richiesta dalla parte del rispondente per l'assistenza clienti
Nella tecnologia UWB, entrambi i dispositivi devono chiamare in modo esplicito le API di avvio e interruzione della misurazione della distanza UWB. Al contrario, per CS è necessario solo il dispositivo iniziatore per
avviare la misurazione CS chiamando lo stack BT. Il resto dell'inizializzazione sul lato del risponditore avviene in banda tramite BT. Ciò significa che, dopo aver ricevuto il messaggio Ranging Configuration o il messaggio Stop Ranging per CS, il lato del risponditore non deve fare nulla se BT è abilitato. Il
dispositivo di risposta potrebbe utilizzare questi messaggi come trigger per aggiornare la UI o, ad
esempio, far lampeggiare i LED del dispositivo.