Bluetooth® LE SDK 7.3.0.0 GA
Gecko SDK Suite 4.4
26 febbraio 2025
Gecko SDK Suite Hardware e Software Bluetooth
Silicon Labs è un fornitore leader di tecnologie hardware e software Bluetooth utilizzate in prodotti come sport e fitness, elettronica di consumo, beacon e applicazioni per la smart home. L'SDK core è uno stack avanzato compatibile con Bluetooth 5.4 che fornisce
Tutte le funzionalità principali, insieme a diverse API per semplificare lo sviluppo. Le funzionalità principali offrono sia la modalità standalone, che consente allo sviluppatore di creare ed eseguire la propria applicazione direttamente sul SoC, sia la modalità NCP, che consente l'utilizzo di una MCU host esterna.
Queste note di rilascio riguardano le versioni dell'SDK:
7.3.0.0 GA rilasciata il 26 febbraio 2025
7.2.0.0 GA rilasciata il 23 ottobre 2024
7.1.2.0 GA rilasciata il 14 agosto 2024
7.1.1.0 GA rilasciata il 2 maggio 2024
7.1.0.0 GA rilasciata il 10 aprile 2024
7.0.1.0 GA rilasciata il 14 febbraio 2024
7.0.0.0 GA rilasciato il 13 dicembre 2023
CARATTERISTICHE PRINCIPALI
Bluetooth
- Il nuovo componente bluetooth_feature_connection_analyzer fornisce la funzionalità per acquisire e analizzare l'RSSI delle trasmissioni su una connessione Bluetooth.
Multiprotocollo
- Supporto per l'ascolto simultaneo (RCP) – MG21 e MG24.
- Zigbee NCP + OpenThread RCP multiprotocollo simultaneo (CMP): qualità di produzione.
- Supporto Bluetooth multiprotocollo dinamico + Zigbee e OpenThread multiprotocollo simultaneo (CMP) su SoC.
Avvisi di compatibilità e utilizzo
Per informazioni sugli aggiornamenti e gli avvisi di sicurezza, consultare il capitolo sulla sicurezza delle note sulla versione della piattaforma Gecko installate con questo SDK o nella scheda DOCUMENTI TECNICI su https://www.silabs.com/developers/bluetooth-low-energySilicon Labs consiglia vivamente di abbonarsi agli avvisi di sicurezza per informazioni aggiornate. Per istruzioni e note sull'utilizzo delle funzionalità di Secure Vault, o se non si ha familiarità con l'SDK Bluetooth di Silicon Labs, consultare la sezione Utilizzo di questa versione.
Compilatori compatibili:
IAR Embedded Workbench per ARM (IAR-EWARM) versione 9.40.1.
- L'utilizzo di wine per la compilazione con l'utilità della riga di comando IarBuild.exe o la GUI di IAR Embedded Workbench su macOS o Linux potrebbe causare errori fileviene utilizzato a causa di collisioni nell'algoritmo di hashing di wine per la generazione di short file nomi.
- Si consiglia ai clienti su macOS o Linux di non creare con IAR al di fuori di Simplicity Studio. I clienti che lo fanno dovrebbero verificare attentamente che sia corretto filevengono utilizzati.
GCC (The GNU Compiler Collection) versione 12.2.1, fornita con Simplicity Studio.
Nuovi articoli
1.1 Nuove funzionalità
Aggiunto nella versione 7.3.0.0
Client GATT solo per scambio MTU ATT
Aggiunto il componente bluetooth_feature_gatt_client_att_mtu_request_only. Questo componente fornisce un client GATT minimo per avviare automaticamente una procedura di scambio MTU ATT quando la connessione GATT è aperta. Questo componente non fornisce l'API client GATT. Utilizzare l'API server GATT sl_bt_gatt_server_set_max_mtu per impostare la dimensione massima dell'MTU ATT nello stack host BLE.
Componenti per ruoli di connessione specifici
Aggiunti i nuovi componenti bluetooth_feature_connection_role_central e bluetooth_feature_connection_role_peripheral. Questi componenti forniscono supporto per un ruolo di connessione specifico. Quando un'applicazione include bluetooth_feature_connection, l'applicazione dovrebbe includere anche uno o entrambi i componenti specifici del ruolo, in base alle esigenze dell'applicazione. Se l'applicazione include solo bluetooth_feature_connection, entrambi i ruoli di connessione saranno supportati per compatibilità con le versioni precedenti.
Migliore ottimizzazione del codice in Bluetooth Security Manager
Il gestore della sicurezza Bluetooth ora elimina automaticamente la macchina a stati centrale o periferica se il componente bluetooth_feature_connection_role_central o bluetooth_feature_connection_role_peripheral non è incluso, rispettivamente, nell'applicazione.
Aggiunto nella versione 7.2.0.0
Nuova opzione scanner
Aggiunta una nuova opzione scanner SL_BT_SCANNER_IGNORE_BONDING da utilizzare con il comando sl_bt_scanner_set_parameters_and_filter. Se l'applicazione non necessita delle informazioni di bonding nei report pubblicitari, può impostare questa opzione scanner per evitare ricerche non necessarie dei bonding.
Grande dimensione dell'elenco di accettazione
Aumentata la dimensione massima dell'elenco di accettazione a 127 voci.
Filtraggio degli eventi HCI
Link Layer in modalità HCI utilizza il filtraggio degli eventi fornito dall'applicazione per filtrare gli eventi. Questo può essere utilizzato per limitare il traffico di eventi HCI inviato allo stack host.
Aggiunto nella versione 7.1.0.0
Impostazione della potenza di trasmissione della pubblicità periodica
L'impostazione della potenza TX su un apparecchio pubblicitario viene applicata anche alla pubblicità periodica.
Aggiunto nella versione 7.0.0.0
Analizzatore di connessione Bluetooth
Il nuovo componente bluetooth_feature_connection_analyzer fornisce la funzionalità per acquisire e analizzare l'RSSI delle trasmissioni su una connessione Bluetooth.
1.2 Nuove API
Aggiunto nella versione 7.0.1.0
ID # | Descrizione |
1245616 | Introduci nuove configurazioni della libreria C ESL: ESL_TAG_POWER_DOWN_ENABLE e ESL_TAG_TIMEOUT_DI_SPEGNIMENTO_MIN. Il timeout di spegnimento può essere personalizzato nell'ESL Tag exampil progetto utilizzando questi. La funzionalità può anche essere disattivata completamente. |
Aggiunto nella versione 7.0.0.0
Comando sl_bt_connection_analyzer_start: inizia ad analizzare la connessione di un altro dispositivo e riporta le misurazioni RSSI.
Comando sl_bt_connection_analyzer_stop: interrompe l'analisi della connessione Bluetooth di un altro dispositivo.
Evento sl_bt_evt_connection_analyzer_report: attivato quando i pacchetti trasmessi su una connessione vengono catturati.
Evento sl_bt_evt_connection_analyzer_completed: attivato quando l'operazione di analisi di una connessione viene completata.
Comando sl_bt_connection_get_scheduling_details: Ottieni i parametri e i dettagli di pianificazione del prossimo evento di connessione di una connessione.
Comando sl_bt_connection_get_median_rssi: Ottieni il valore RSSI misurato su una connessione.
Comando sl_bt_sm_resolve_rpa: trova l'indirizzo identificativo di un dispositivo collegato tramite un indirizzo privato risolvibile (RPA).
Evento sl_bt_evt_connection_set_parameters_failed: attivato quando il dispositivo peer ha rifiutato una richiesta di aggiornamento del parametro di connessione L2CAP.
ID # | Descrizione |
1203776 | Introdurre un nuovo ID evento della libreria ESL C: ESL_LIB_EVT_PAWR_CONFIG. Una configurazione PAwR è ora soggetta a un controllo di integrità preliminare da parte della libreria ESL C prima che la configurazione venga impostata: se il controllo fallisce, la configurazione viene rifiutata. |
1196297 | Aggiunto supporto a HADM per un numero arbitrario di canali fino a 80. |
1187941 | 'bt_abr_host_initiator' ora ha la funzione per salvare il registro jsonlfiles in una cartella selezionata utilizzando l'argomento del comando '-d'. Nel caso in cui il parametro sia vuoto o sia un percorso non valido per una directory, utilizzerà la directory di lavoro corrente e informerà l'utente. |
1158040 | Aggiungi metriche di qualità all'iniziatore HADM visualizzando la probabilità della distanza calcolata sull'interfaccia utente. |
1152853 | Nuova opzione del canale di comunicazione aggiunta a NCP-host exampfile: SPI su comunicazione co-processore (CPC). |
1108849 | Script Python create_bl_fileIntrodotto s.py per unire gli script .bat e .sh in uno solo. Nuove funzionalità rispetto ai vecchi script: – argomenti di comando aggiuntivi e di supporto per selezionare la configurazione richiesta – modalità interattiva: nel caso in cui alcuni degli strumenti o filemancano, questo script ti aiuterà a configurarlo – generare GBL compressi (entrambi i metodi di compressione lzma e lz4) – gestione della logica del dispositivo per dispositivi serie 1 e serie 2 |
Miglioramenti
2.1 Articoli modificati
Modificato nella versione 7.0.1.0
ID # | Descrizione |
1231551 | Il parametro 'start_time_us' di sl_bt_connection_analyzer_start() è stato modificato da intero senza segno a intero con segno perché il suo valore potrebbe essere negativo (indicando un orario nel passato). |
1245597 | BLE RCP exampora il controllo del flusso hardware è abilitato per impostazione predefinita. |
1246269 | ESL migliorato Tag consumo energetico medio in stato sincronizzato fino all'11% con i parametri ESL AP PAwR predefiniti. |
Modificato nella versione 7.0.0.0
ID # | Descrizione |
1203109 | Logica di rilevamento migliorata per gli ESL che non dispongono di una configurazione GATT valida secondo le specifiche del servizio ESL. La nuova logica ora impedisce una serie di rilevamenti di falsi positivi e la conseguente esclusione di ESL valide dalla rete. |
1144612 | Aggiornamento della libreria di terze parti cJSON da GitHub: https://github.com/DaveGamble/cJSON @commit: b45f48e600671feade0b6bd65d1c69de7899f2be (master) |
1193924 | Migrazione dell'SDK BLE example per utilizzare l'API legacy_scanner o l'API extend_scanner invece dell'API dello scanner deprecata. |
1177424 | Aprendo la Libreria dei componenti in Studio e selezionando uno qualsiasi dei componenti che provengono da app/bluetooth ora viene mostrata una sezione "Documentazione" nelle sezioni "Dipendenze" e "Dipendenti" con il contenuto ospitato su docs.silabs.com per quel componente. |
2.2 API modificate
Modificato nella versione 7.1.0.0
Evento sl_bt_evt_system_resource_exhausted: il nuovo parametro 'num_message_allocation_failures' viene aggiunto all'elenco dei parametri per segnalare una situazione di esaurimento delle risorse, ovvero che il sistema ha esaurito gli elementi del messaggio interno pre-allocati e che la creazione di un messaggio interno non è riuscita.
Comando sl_bt_advertiser_set_tx_power: la funzionalità è stata estesa in modo che la potenza TX si applichi anche alla pubblicità periodica.
Modificato nella versione 7.0.0.0
Nessuno.
2.3 Comportamento previsto
Modificato nella versione 7.0.0.0
Nessuno.
Problemi risolti
Risolto nella versione 7.3.0.0
ID # | Descrizione |
1378000 | È stato risolto un problema nel task scheduler del Link Layer che, in determinati scenari, impediva l'esecuzione delle attività in ordine cronologico. |
Risolto nella versione 7.2.0.0
ID # | Descrizione |
1348090 | Risolto un problema PAwR per cui Link Layer non gestiva correttamente i dati dei sottoeventi impostati che venivano inviati troppo tardi. |
1358600 | Risolto un problema che causava il blocco del dispositivo se la memoria del dispositivo si esauriva esattamente nel momento in cui veniva disconnesso. |
Risolto nella versione 7.1.2.0
ID # | Descrizione |
1279821 | Risolto un problema nel Link Layer per cui l'inserzionista periodico non includeva il valore della potenza TX nel pacchetto pubblicitario periodico quando configurato dall'host. |
1282707 | Se il dispositivo centrale ha perso le chiavi di bonding e la periferica ha abilitato le conferme di bonding per consentire il ri-bonding della connessione, le funzionalità supportate dal client, le impostazioni e gli abbonamenti alle notifiche e alle indicazioni non verranno più cancellati. |
1288445 | Risolto un problema nel Link Layer per cui PAwR non notificava correttamente all'host le trasmissioni non riuscite. |
1295837 | Risolto un problema che potrebbe causare assert durante le nuove connessioni periferiche. Questo problema si verifica solo nelle versioni Bluetooth SDK 7.1.1 e 8.0.0. |
1296939 | È stato risolto un problema nel Link Layer per cui la mancata inclusione del componente Connection in determinati progetti poteva causare un hard fault. |
1297876 | Scansione ottimizzata sui canali primari durante la ricezione di pubblicità estesa con puntatore ausiliario lungo. |
1330263 | È stato risolto un problema nel Link Layer che impediva all'inserzionista PAwR di accettare le impostazioni dei dati dei sottoeventi dall'host. |
Risolto nella versione 7.1.0.0
ID # | Descrizione |
1247634 | Risolto un problema per cui il server GATT potrebbe non rispondere a una richiesta ATT se la memoria per il messaggio di risposta non può essere allocata. Questo problema può verificarsi quando il dispositivo esegue la scansione e la pubblicità in parallelo alla connessione GATT in un ambiente affollato in cui molti dispositivi eseguono la pubblicità e la scansione contemporaneamente. Questo caso d'uso può causare l'esaurimento frequente della memoria dello stack Bluetooth e si traduce in un errore del server GATT se la dimensione del buffer configurata per lo stack (SL_BT_CONFIG_BUFFER_SIZE) è troppo piccola per il caso d'uso dell'applicazione. |
1252462 | Risolto un problema con lo scanner per cui i pacchetti pubblicitari estesi codificati non venivano ricevuti dopo aver stabilito una connessione con PHY non codificato. |
1254794 | Risolto il problema per cui un pacchetto danneggiato veniva inviato all'avvio della crittografia, durante lo streaming simultaneo di dati in un ambiente rumoroso. |
1256359 | Utilizzo di memoria ridotto nell'elaborazione dei messaggi ATT. Ora una richiesta ATT, una risposta o un messaggio di aggiornamento dello stato vengono recapitati al livello BGAPI senza allocazioni di memoria aggiuntive. |
1257056 | Migliorata la stabilità della libreria C ESL in caso di perdite di collegamento impreviste. |
1257110 | È stato risolto il problema segnalato dai clienti relativo al flag del linker mancante in msys2/mingw64. |
1258764 | È stato risolto un problema nello scheduler di connessione compatibile con PAwR che causava un offset indesiderato nel campo offset finestra del pacchetto di richiesta di connessione. |
ID # | Descrizione |
1262944 | Risolto un problema che impediva al componente di salto di frequenza adattivo di seguire accuratamente la configurazione del parametro di raffreddamento. |
1267946 | Risolto un problema di compilazione di "bt_abr_ncp_initiator" per le schede personalizzate. |
1268312 | È stato risolto un problema nel pianificatore di connessioni compatibile con PAwR che causava la sovrapposizione di alcune connessioni con il pacchetto PAwR Sync Indication. |
1275210 | È stato risolto un problema che impediva il corretto funzionamento delle connessioni basate su PAwR dopo un'ora di funzionamento con la sola attività PAwR in esecuzione. |
Risolto nella versione 7.0.1.0
ID # | Descrizione |
1222271 | È stato risolto un problema nel livello di collegamento Bluetooth per cui PAwR bloccava il task scheduler durante il tentativo di inviare una richiesta di connessione subito dopo l'esecuzione di un'altra attività. |
1231551 | È stato risolto un problema nel Bluetooth Link Layer che calcolava in modo errato il numero di canali per l'aggiornamento con offset di tempo firmato nella funzionalità di analisi della connessione. |
1232169 | Le applicazioni ABR possono ora essere create per i componenti BG24 e MG24. |
1233996 | Risolto un problema di conformità GATT quando il componente client GATT non era presente nell'applicazione. Il problema era che lo stack Bluetooth rispondeva a un ATT_HANDLE_VALUE_IND con un errore quando il server GATT remoto inviava un'indicazione GATT non richiesta. Questo problema è stato risolto e ora lo stack Bluetooth risponderà con un ATT_HANDLE_VALUE_IND con ATT_HANDLE_VALUE_CFM.
Questo problema non si verifica quando nell'applicazione è presente il componente client GATT. |
1236361 | È stato risolto un problema nel livello di collegamento Bluetooth che causava un hard-fault del dispositivo quando la creazione della connessione in sospeso veniva annullata appena prima che il pacchetto di indicazione della connessione fosse trasmesso. |
1240181 | È stato risolto un problema nel livello di collegamento Bluetooth che causava la presenza di byte extra e lunghezza errata in un pacchetto pubblicitario legacy-directed (ADV_DIRECT_IND). |
1245534 | È stato risolto un problema nello stack host Bluetooth per la funzionalità Privacy che poteva causare il fallimento dell'associazione se il dispositivo remoto modificava il suo indirizzo privato risolvibile (RPA) e l'RPA veniva risolto nuovamente prima del completamento dell'associazione. |
1248834 | È stato risolto un problema nel livello di collegamento Bluetooth che poteva causare il blocco del meccanismo di buffering dei pacchetti quando altre attività BLE, come la scansione, venivano eseguite contemporaneamente all'attività di pubblicità PAwR. |
1249259 | È stato risolto un problema nel livello di collegamento Bluetooth per cui il canale non mappato non veniva inizializzato per l'algoritmo di selezione canale n. 1 nella funzionalità di analisi della connessione, il che causava un ritardo variabile nella cattura del pacchetto dopo l'avvio del processo di analisi. |
1243489 | Risolte potenziali perdite di memoria nell'implementazione della libreria di chiavi ESL. |
1241153 | Risolto un problema nel componente Simple Communication Interface (UART) che occasionalmente causava la perdita di dati nella comunicazione tra host NCP (x86/x64) e destinazione NCP (EFR32), causando l'ESL AP Python example si blocca senza apparente motivo durante l'implementazione di massa di ESL. |
1253610 | È stato risolto un problema che poteva potenzialmente causare il blocco dell'AP ESL in un tentativo di connessione infinito a ESL pubblicitari non sincronizzati nelle vicinanze, associati ad altri punti di accesso. |
1231407 | Corretta una condizione di cancellazione non corretta all'avvio di bt_app_ota_dfu. Ora la lettura della memoria flash e la fase di cancellazione hanno i loro stati, quindi è possibile distinguere quando la cancellazione viene realmente eseguita o quando l'applicazione OTA DFU viene avviata senza cancellazione. |
1197438 | Risolto un problema nell'impostazione del controllo del flusso nel test NCP Host examplui. |
Risolto nella versione 7.0.0.0
ID # | Descrizione |
1077663 | È stato risolto un problema che poteva causare la risposta positiva di alcuni comandi Bluetooth senza effettivamente eseguirli se venivano utilizzati un RTOS e il componente di avvio Bluetooth su richiesta e l'applicazione inviava un comando Bluetooth mentre lo stack Bluetooth era arrestato. |
1130635 | È stato risolto un problema che poteva causare un arresto anomalo di FreeRTOS se veniva utilizzata la funzionalità di avvio su richiesta Bluetooth e l'attività timer di FreeRTOS era stata configurata con una priorità inferiore rispetto alle attività Bluetooth. |
1164357 | Aggiornato il codice di errore da insufficient_encryption a insufficient_authentication come specificato nella specifica Bluetooth quando il client GATT tenta di accedere all'attributo GATT che richiede sicurezza e la connessione non è vincolata o crittografata. |
ID # | Descrizione |
1170640 | È stata corretta una condizione di competizione nel client GATT per cui lo scambio MTU ATT poteva essere impedito se l'applicazione utente richiamava un comando del client GATT che a sua volta avviava una procedura GATT con il server GATT remoto nel contesto della gestione dell'evento sl_bt_evt_connection_opened in modalità SoC. |
1180413 | È stato risolto un problema che poteva causare l'inversione della priorità dei thread e ridurre l'affidabilità della connessione Bluetooth con FreeRTOS se l'attività timer di FreeRTOS era stata configurata con una priorità inferiore rispetto alle attività Bluetooth. |
1192858 | Gestione migliorata dei report pubblicitari sull'interfaccia HCI. Ora è possibile configurare il numero massimo di rapporti pubblicitari in coda. Ciò migliora le prestazioni in caso di connessione HCI lenta. |
1196365 | Risolto un problema riscontrato con DTM quando veniva presentato il componente timer watchdog. |
1196429 | Stabilimento di connessione ottimizzato in una configurazione DMP. In alcuni casi il pacchetto non è stato elaborato abbastanza velocemente, il che ha causato la perdita di connessione. |
1198175 | Corretto calcolo ampliamento finestra scanner PAwR dopo pacchetto subevento perso. Aggiungere calcolo ampliamento finestra slot risposta PAwR al dispositivo inserzionista. La correzione è disponibile in Bluetooth SDK 6.2.0 e versioni successive. |
1206647 | È stato risolto un bug nel livello di collegamento Bluetooth causato dalla gestione errata di un errore in caso di errore nella trasmissione del pacchetto di indicazione della connessione da parte della centrale. |
1209154 | Risolto un bug che poteva impedire alla modalità demo di funzionare più di una volta in una sessione ESL AP. L'AP Pyhon sampil codice file ora non consente di modificare la modalità mentre l'applicazione EFR Connect è connessa in modalità demo ed è ora possibile interrogare lo stato corrente della demo tramite l'interfaccia CLI. |
1212515 | Risolto un problema nella modalità RCP che causava un errore del comando HCI LE_Set_Periodic_Advertising_Subevent_Data quando i dati per più sottoeventi venivano impostati contemporaneamente con determinate lunghezze. Risolto un altro problema nella modalità RCP che consentiva di riservare indefinitamente un handle di connessione inutilizzabile quando l'host non attendeva l'evento HCI Connection Complete prima di chiamare un altro comando LE_Create_Connection. |
1215158 | La procedura di richiesta e impostazione dei dati degli eventi secondari PAwR ora segue rigorosamente le specifiche principali. I dati forniti dall'host verranno inviati nell'ordine indicato e i dati che arriveranno troppo tardi non verranno inviati nel successivo intervallo pubblicitario periodico. |
1216550 | Corretto un bug nel comando sl_bt_gatt_server_send_user_read_response per cui il server GATT potrebbe aggiungere più di ATT MTU – 4 byte come valore caratteristico nella risposta di lettura all'opcode ATT_READ_BY_TYPE_REQ. La documentazione di questo comando è anche corretta in quanto il numero massimo di byte in risposta all'opcode ATT_READ_BY_TYPE_REQ è ATT MTU – 4. |
1218112 | Risolta una race condition tra la terminazione della connessione e la procedura di aggiornamento della mappa dei canali che poteva causare un doppio buffer libero. |
1223155 | Risolto un problema di violazione dell'accesso alla memoria nello stack host durante l'elaborazione dell'evento HCI_LE_Read_Remote_Features_Complete se l'handle di connessione nell'evento non è valido. |
1218866 | Bluetooth RAIL DMP – SoC vuoto FreeRTOS/Micrium OS Sample App sono ora disponibili per xG28 (BRD4400A/B/C, BRD4401A/B/C). |
1214140 | BLE ESL esampi file ora supportano le schede BRD4402B e BRD4403B. |
1212633 | Corretto iop_create_bl_fileErrore nello script s.sh su MacOS. |
1209154 | Risolto un bug che poteva impedire alla modalità demo ESL di funzionare più di una volta in una sessione AP. L'AP Python sampil codice del file ora non consente di cambiare modalità mentre l'applicazione EFR Connect è connessa in modalità demo, mentre è ora possibile interrogare lo stato attuale della demo tramite l'interfaccia CLI. |
1205333 | Eliminata la necessità di modificare manualmente il tipo di controllo del flusso UART dopo aver creato il progetto ESL AP NCP per numerose schede supportate. |
1205317 | Il codice operativo 0x1F specifico del fornitore Silabs per la funzione di salto dell'intervallo PAwR sperimentale ESL è stato aggiunto al documento Readme ESL AP. |
1192305 | Aggiunto un ritardo configurabile al componente In-Place OTA DFU prima di chiudere la connessione con il dispositivo centrale. Ciò risolve i problemi della procedura con il trasferimento OTA sul posto e l'ultima versione EFR Connect v2.7.1 o successiva. |
1225207 | Problema risolto: il dereferenziamento NULL può verificarsi in ESL C lib che porta all'arresto anomalo di ESL AP durante la configurazione di reti di grandi dimensioni. |
1223186 | Corretto app_timer affinché il sistema operativo applichi il limite massimo del valore richiesto in base alla frequenza del timer del sistema operativo per funzionare allo stesso modo della variante bare metal. Documentazione estesa che descrive le limitazioni sulla risoluzione e menziona i parametri di configurazione della frequenza del timer del sistema operativo che possono essere impostati per modificare la frequenza del timer (e la risoluzione). |
1203408 | La DFU OTA dell'applicazione potrebbe entrare in uno stato errato se l'applicazione invia un evento sl_bt_evt_gatt_server_user_write_request_id. |
1208252 | L'iniziatore ora chiude la connessione all'uscita. |
1180678 | Miglioramenti della stabilità. |
Problemi noti nella versione corrente
I problemi in grassetto sono stati aggiunti rispetto alla versione precedente. Se hai perso una versione, le note sulla versione recente sono disponibili su https://www.silabs.com/developers/bluetooth-low-energy nella scheda Documenti tecnici.
ID # | Descrizione | Soluzione alternativa |
361592 | L'evento sync_data non riporta la potenza TX. | Nessuno |
368403 |
Se si imposta l'intervallo CTE su 1, una richiesta CTE deve essere inviata in ogni intervallo di connessione. Ma viene inviato solo ogni secondo intervallo di connessione. |
Nessuno |
641122 |
Il componente dello stack Bluetooth non fornisce una configurazione per il percorso dell'antenna RF. |
Questo è un problema specifico per BGM210P. Una soluzione consiste nell'aggiornare manualmente la configurazione in sl_bluetooth_config.h in modalità di modifica del testo. Se viene utilizzato l'OTA con Apploader, includi il componente bluetooth_feature_ota_config nel progetto dell'applicazione. Chiamare il comando sl_bt_ota_set_rf_path() per impostare il percorso RF per la modalità OTA. |
650079 | LE 2M PHY su EFR32[B|M]G12 e EFR32[B|M]G13 non funziona con gli smartphone che utilizzano il chip Mediatek Helio a causa di un problema di interoperabilità. | Non esiste alcuna soluzione alternativa. Per lo sviluppo e il test dell'applicazione, la disconnessione può essere evitata disabilitando 2M PHY con sl_bt_connection_set_preferred_phy() o sl_bt_connection_set_default_preferred_phy(). |
682198 | Lo stack Bluetooth presenta un problema di interoperabilità su 2M PHY con un PC Windows. | Non esiste alcuna soluzione alternativa. Per lo sviluppo e il test dell'applicazione, la disconnessione può essere evitata disabilitando 2M PHY con sl_bt_connection_set_preferred_phy() o sl_bt_connection_set_default_preferred_phy(). |
730692 | Sui dispositivi EFR4M|BG7 si osserva un tasso di errore del pacchetto del 32-13% quando l'RSSI è compreso tra -25 e -10 dBm. Il PER è nominale (come da scheda tecnica) sia al di sopra che al di sotto di questo intervallo. | Nessuno |
756253 | Il valore RSSI su una connessione Bluetooth restituita dall'API Bluetooth non è corretto sui dispositivi EFR32M|B1, EFR32M|B12, EFR32M|B13 e EFR32M|B21. Sui dispositivi EFR32M|B21. È di circa 8~10 dBm superiore al valore effettivo, secondo una misurazione. | Installare il componente "RAIL Utility, RSSI" nel progetto dell'applicazione. Questo componente fornisce un offset RSSI predefinito per il chip applicato a livello RAIL e può aiutare a ottenere misurazioni RSSI più accurate. |
845506 | Quando è incluso il componente Bluetooth_feature_afh per AFH, l'inizializzazione della funzione abilita sempre AFH. | Per includere il componente ma non abilitare AFH all'avvio del dispositivo, modificare il valore del parametro da 1 a 0 nella chiamata di funzione di sl_btctrl_init_afh() in sl_bt_stack_init.c. |
1031031 | La modifica della configurazione nell'applicazione bt_aoa_host_locator provoca l'arresto anomalo dell'applicazione. | Nessuno |
1227955 | amazon_aws_soc_mqtt_over_ble e amazon_aws_soc_gatt_server exampi file non vengono pubblicizzati dopo l'avvio. | Aumenta configTIMER_TASK_STACK_DEPTH a 600 o superiore in config/FreeRTOSConfig.h nel progetto. |
Articoli obsoleti
Deprecato nella versione 7.0.0.0
Comando sl_bt_connection_get_rssi
Elementi rimossi
Rimosso dalla versione 7.0.0.0
ID # | Descrizione |
1219750 | Script di visualizzazione HADM basato su Python rimosso. In futuro i clienti dovranno utilizzare la GUI di Studio HADM. |
Gateway multiprotocollo e RCP
7.1 nuovi oggetti
Aggiunto nella versione 7.0.0.0
Ascolto simultaneo, viene rilasciata la possibilità per gli stack Zigbee e OpenThread di operare su canali 802.15.4 indipendenti quando si utilizza un RCP EFR32xG24 o xG21. L'ascolto simultaneo non è disponibile per la combinazione 802.15.4 RCP/Bluetooth RCP, la combinazione Zigbee NCP/OpenThread RCP o per il system-on-chip (SoC) Zigbee/OpenThread. Verrà aggiunto a questi prodotti in una versione futura.
L'estensione del fornitore della CLI OpenThread è stata aggiunta alle app host OpenThread dei contenitori multiprotocollo. Ciò include i comandi coex cli.
MAI miglioramenti
Modificato nella versione 7.0.0.0
La combinazione multiprotocollo Zigbee NCP/OpenThread RCP è ora di qualità di produzione. Questo sampl'applicazione non è supportata sui dispositivi EFR Serie 1.
7.3 Problemi risolti
Risolto nella versione 7.3.0.0
ID # | Descrizione |
1275378 | È stato risolto un problema per cui la chiamata a emberRadioSetSchedulerPriorities() prima di emberInit() poteva causare un arresto anomalo (altro riferimento: 1381882). |
1361436 | È stato risolto un problema che impediva all'app dmp_gp_proxy (con CLI aggiunta) di unirsi a una rete in tempo. |
1363050 | L'inizializzazione dello stack Zigbee non attiva più la radio (o RCP per gli stack host) prima che le API dello stack vengano richiamate dall'applicazione. Questo impedisce operazioni multi-PAN indesiderate sul canale 11 (il canale predefinito) quando si utilizza una configurazione RCP con supporto multi-PAN. |
1365665 | Risolto un problema per cui l'host segnalava la ricezione di un pacchetto con un checksum non valido sull'endpoint 12. (Altro riferimento: 1366154) |
1392787 | È stato risolto un problema che impediva il riavvio di Zigbeed durante l'esecuzione di un'azione di ripristino del nodo di backup e ripristino del Trust Center. |
1405226 | Risolto il problema di migrazione del progetto e inclusa la regola di aggiornamento del progetto OT per riflettere le modifiche più recenti dell'SDK. Nota che quando i clienti aggiornano il loro progetto Multiprotocollo, fileLe applicazioni come app.c dovranno essere trasferite manualmente per riflettere le modifiche più recenti dell'SDK. |
Risolto nella versione 7.2.2.0
ID # | Descrizione |
1328799 | Il soft reset attivato dal comando Spinel RESET ora cancella i buffer dell'RCP 15.4. |
1337101 | Le operazioni di trasmissione 15.4 incomplete (Tx in attesa di un ack, Tx di un ack in risposta a un messaggio, ecc.) non vengono più considerate prematuramente come fallite in caso di interruzione radio dovuta a DMP. Ciò consente di dare a tale operazione la possibilità di essere riprogrammata dopo l'interruzione o di fallire in modo permanente tramite RAIL (eventi di errore dello stato dello scheduler).
(Altro riferimento: 1339032) |
1337228 | In Zigbeed, l'API tick halCommonGetInt32uMillisecondTick() è stata aggiornata per utilizzare un clock MONOTONIC, in modo da non essere influenzata dal protocollo NTP in un sistema host. (Altro riferimento: 1339032) |
1346785 | Risolta una condizione di competizione che poteva causare la disattivazione dell'ascolto simultaneo sulla RCP 802.15.4 quando entrambi i protocolli trasmettevano simultaneamente. (Altro riferimento: 1349176) |
1346849 | Aggiungendo il componente rail_mux a un progetto, ora verrà compilato automaticamente con le varianti della libreria stack associata. (Altro riferimento: 1349102) |
Risolto nella versione 7.1.2.0
ID # | Descrizione |
1184065 | Ingombro RAM ridotto per zigbee_ncp-ot_rcp-spi e zigbee_ncp-ot_rcp_uart su MG13 e MG21. |
1282264 | Risolto un problema che avrebbe potuto interrompere le operazioni di trasmissione radio cancellando prematuramente il fifo di trasmissione causando underflow. |
1292537 | L'applicazione DMP Zigbee-BLE NCP ora viene visualizzata correttamente nell'interfaccia utente di Simplicity Studio. (Altro riferimento: 1292540) |
1230193 | Risolto il problema relativo al tipo di nodo errato durante l'accesso alla rete sul dispositivo finale. (Altro riferimento: 1298347) |
1332330 | Risolto un problema per cui un RCP 15.4+BLE operante in un ambiente con traffico di rete intenso poteva occasionalmente riscontrare una condizione di competizione che impediva l'invio di messaggi a CPCd fino al riavvio del dispositivo. (Altro riferimento: 1333156) |
Risolto nella versione 7.1.0.0
ID # | Descrizione |
1022972 | Aggiunto plugin di coesistenza a Zigbee-OpenThread NCP/RCP sampl'applicazione. |
1231021 | Evitare un'asserzione in OTBR che è stata osservata durante l'unione di oltre 80 dispositivi Zibee ripristinando l'RCP anziché passando errori di trasmissione non gestiti al sub mac. |
1249346 | È stato risolto un problema per cui l'RCP poteva rimuovere erroneamente dalla coda i pacchetti destinati all'host, provocando un errore di analisi nell'OTBR e una terminazione imprevista. |
Risolto nella versione 7.0.1.0
ID # | Descrizione |
1213701 | zigbeed non consentiva la creazione di una voce della tabella delle corrispondenze di origine per un bambino se la coda indiretta MAC ha già dati in sospeso per quel bambino. Questo comportamento potrebbe portare al fallimento delle transazioni a livello di applicazione tra il bambino e qualche altro dispositivo a causa della mancanza di APS Ack o di risposta a livello di app, in particolare l'interruzione e la terminazione imprevista degli aggiornamenti ZCL OTA destinati al dispositivo bambino. |
1244461 | La voce della tabella delle corrispondenze di origine per il bambino potrebbe essere rimossa nonostante i messaggi in sospeso. |
Risolto nella versione 7.0.0.0
ID # | Descrizione |
1081828 | Problema di throughput con Zigbee/BLE DMP basati su FreeRTOSample applicazioni. |
1090921 | Z3GatewayCpc ha riscontrato problemi nella creazione di una rete in un ambiente rumoroso. |
1153055 | È stata causata un'asserzione sull'host quando si è verificato un errore di comunicazione durante la lettura della versione NCP da zigbee_ncp-ble_ncp-uart sampl'app. |
1155676 | L'RCP 802.15.4 scartava tutti i pacchetti unicast ricevuti (dopo l'attacco MAC) se più interfacce 15.4 condividevano lo stesso ID nodo a 16 bit. |
1173178 | L'host ha segnalato erroneamente centinaia di pacchetti ricevuti con mfglib nella configurazione Host-RCP. |
1190859 | Errore EZSP durante l'invio di pacchetti casuali mfglib nella configurazione Host-RCP. |
ID # | Descrizione |
1199706 | I sondaggi di dati provenienti dai dispositivi secondari dimenticati non impostavano correttamente un frame in sospeso sull'RCP per accodare un comando Lascia e Rientra al figlio precedente. |
1207967 | Il comando "mfglib send random" inviava pacchetti extra su Zigbeed. |
1208012 | La modalità mfglib rx non aggiornava correttamente le informazioni sui pacchetti durante la ricezione sull'RCP. |
1214359 | Il nodo coordinatore si è bloccato quando 80 o più router hanno tentato di connettersi simultaneamente nella configurazione Host-RCP. |
1216470 | Dopo aver inoltrato una trasmissione per la maschera di indirizzo 0xFFFF, un RCP Zigbee che funge da dispositivo genitore lascerebbe impostato il flag di dati in sospeso per ciascun figlio. Ciò ha fatto sì che ogni bambino restasse sveglio aspettandosi i dati dopo ogni sondaggio e richiedeva qualche altra transazione di dati in sospeso su ciascun dispositivo finale per cancellare eventualmente questo stato. |
7.4 Problemi noti nella versione corrente
I problemi in grassetto sono stati aggiunti rispetto alla versione precedente. Se hai perso una versione, le note sulla versione recente sono disponibili su https://www.silabs.com/developers/gecko-software-development-kit.
ID # | Descrizione | Soluzione alternativa |
937562 | Il comando Bluetoothctl 'advertise on' non riesce con l'app rcp-uart-802154-blehci su Raspberry Pi OS 11. | Usa l'app btmgmt invece di bluetoothctl. |
1074205 | Il CMP RCP non supporta due reti sullo stesso ID PAN. | Utilizza ID PAN diversi per ogni rete. Il supporto è pianificato in una versione futura. |
1122723 | In un ambiente frenetico, la CLI potrebbe non rispondere nell'app z3-light_ot-ftd_soc. | Nessuna soluzione nota. |
1124140 | z3-light_ot-ftd_soc sampl'app non è in grado di formare la rete Zigbee se la rete OT è già attiva. | Avvia prima la rete Zigbee e poi la rete OT. |
1170052 | CMP Zigbee NCP + OT RCP e DMP Zigbee NCP + BLE NCP potrebbero non essere compatibili con componenti RAM da 64 KB o inferiori in questa versione corrente. (Altro riferimento: 1393057) | Le unità RAM da 64 KB non sono consigliate per le app NCP + RCP. |
1209958 | L'RCP ZB/OT/BLE su MG24 può smettere di funzionare dopo pochi minuti quando si eseguono tutti e tre i protocolli. | Verrà affrontato in una versione futura. |
1221299 | Le letture RSSI di Mfglib differiscono tra RCP e NCP. | Verrà affrontato in una versione futura. |
1334477 | L'avvio e l'arresto dello stack BLE più volte potrebbero impedire allo stack BLE di riavviare nuovamente la pubblicità sui dispositivi EFR della serie 64 con RAM bassa (1 kB) nei dispositivi DMP Zigbee-BLEampl'applicazione. | N / A |
7.5 Articoli obsoleti
Nessuno
7.6 Elementi rimossi
Rimosso nella versione 7.0.0.0
La macro "NONCOMPLIANT_ACK_TIMING_WORKAROUND" è stata rimossa. Tutte le app RCP ora supportano per impostazione predefinita un tempo di risposta di 192 µsec per gli ack non avanzati mentre utilizzano ancora un tempo di consegna di 256 µsec per gli ack avanzati richiesti da CSL.
Utilizzo di questa versione
Questa versione contiene quanto segue
- Libreria stack Bluetooth di Silicon Labs
- Bluetooth Sample applicazioni
Per ulteriori informazioni sull'SDK Bluetooth vedere https://docs.silabs.com/bluetooth/latest/ . Se non hai familiarità con Bluetooth, consulta UG103.14: Fondamenti di Bluetooth LE.
8.1 Installazione e utilizzo
L'SDK Bluetooth viene fornito come parte di Gecko SDK (GSDK), la suite di SDK di Silicon Labs. Per iniziare rapidamente con GSDK, installa Simplicity Studio 5, che configurerà il tuo ambiente di sviluppo e ti guiderà attraverso l'installazione di GSDK. Simplicity Studio 5 include tutto il necessario per lo sviluppo di prodotti IoT con dispositivi Silicon Labs, tra cui un lanciatore di risorse e progetti, strumenti di configurazione software, IDE completo con toolchain GNU e strumenti di analisi. Le istruzioni di installazione sono fornite nella Guida dell'utente di Simplicity Studio 5 in linea.
In alternativa, Gecko SDK può essere installato manualmente scaricando o clonando l'ultima versione da GitHub. Vedere https://github.com/SiliconLabs/gecko_sdk per ulteriori informazioni.
Simplicity Studio installa GSDK per impostazione predefinita in:
- (Windows): C:\Utenti\ \SimplicityStudio\SDKs\gecko_sdk
- (MacOS): /Utenti/ /SimplicityStudio/SDKs/gecko_sdk
La documentazione specifica per la versione dell'SDK viene installata con l'SDK. Ulteriori informazioni possono essere trovate spesso negli articoli della knowledge base (KBA). I riferimenti API e altre informazioni su questa versione e su quelle precedenti sono disponibili su https://docs.silabs.com/.
8.2 Informazioni sulla sicurezza
Integrazione del Vault sicuro
Quando vengono implementate su dispositivi Secure Vault High, le chiavi sensibili come la Long Term Key (LTK) sono protette utilizzando la funzionalità Secure Vault Key Management. La tabella seguente mostra le chiavi protette e le relative caratteristiche di protezione della memoria.
Chiave incartata | Esportabile / Non esportabile |
Appunti |
Chiave remota a lungo termine (LTK) | Non esportabile | |
Chiave locale a lungo termine (solo legacy) | Non esportabile | |
Chiave di risoluzione dell'identità remota (IRK) | Esportabile | Deve essere esportabile per futuri motivi di compatibilità |
Chiave di risoluzione dell'identità locale | Esportabile | Deve essere esportabile perché la chiave è condivisa con altri dispositivi. |
Le chiavi incapsulate contrassegnate come "non esportabili" possono essere utilizzate ma non possono esserlo viewed o condiviso in fase di esecuzione.
Le chiavi incapsulate contrassegnate come "esportabili" possono essere utilizzate o condivise in fase di esecuzione, ma rimangono crittografate durante l'archiviazione in flash.
Per ulteriori informazioni sulla funzionalità di gestione delle chiavi di Secure Vault, vedere AN1271: archiviazione sicura delle chiavi.
Consulenza sulla sicurezza
Per abbonarti agli avvisi di sicurezza, accedi al portale clienti di Silicon Labs, quindi seleziona Account Home. Fare clic su HOME per accedere alla home page del portale, quindi fare clic sul riquadro Gestisci notifiche. Assicurati che "Avvisi di avviso software/sicurezza e avvisi di modifica prodotto (PCN)" sia selezionato e che tu sia abbonato almeno alla tua piattaforma e al tuo protocollo. Fare clic su Salva per salvare eventuali modifiche.
La figura seguente è un exampon:
8.3 Supporto
I clienti del kit di sviluppo hanno diritto alla formazione e al supporto tecnico. Usa il Bluetooth LE di Silicon Labs web pagina per ottenere informazioni su tutti i prodotti e servizi Bluetooth di Silicon Labs e per iscriversi al supporto del prodotto.
È possibile contattare l'assistenza di Silicon Laboratories all'indirizzo http://www.silabs.com/support.
Semplicità Studio
Accesso con un clic a MCU e strumenti wireless, documentazione, software, librerie di codici sorgente e altro. Disponibile per Windows, Mac e Linux!
![]() |
![]() |
![]() |
![]() |
www.silabs.com/IoT | www.silabs.com/semplicità | www.silabs.com/qualità | www.silabs.com/community |
Disclaimer
Silicon Labs intende fornire ai clienti la documentazione più recente, accurata e approfondita di tutte le periferiche e i moduli disponibili per gli implementatori di sistemi e software che utilizzano o intendono utilizzare i prodotti Silicon Labs. I dati di caratterizzazione, i moduli e le periferiche disponibili, le dimensioni della memoria e gli indirizzi di memoria si riferiscono a ciascun dispositivo specifico e i parametri "tipici" forniti possono variare e variano in diverse applicazioni. Esempio di applicazioneampI file qui descritti sono solo a scopo illustrativo. Silicon Labs si riserva il diritto di apportare modifiche senza ulteriore preavviso alle informazioni, alle specifiche e alle descrizioni del prodotto qui contenute e non fornisce garanzie circa l'accuratezza o la completezza delle informazioni incluse. Senza preavviso, Silicon Labs può aggiornare il firmware del prodotto durante il processo di produzione per motivi di sicurezza o affidabilità. Tali modifiche non altereranno le specifiche o le prestazioni del prodotto. Silicon Labs non avrà alcuna responsabilità per le conseguenze dell'uso delle informazioni fornite in questo documento. Questo documento non implica né concede espressamente alcuna licenza per progettare o fabbricare circuiti integrati. I prodotti non sono progettati o autorizzati per essere utilizzati all'interno di dispositivi FDA di Classe III, applicazioni per le quali è richiesta l'approvazione pre-immissione in commercio della FDA o sistemi di supporto vitale senza lo specifico consenso scritto di Silicon Labs. Un “Sistema di supporto vitale” è qualsiasi prodotto o sistema destinato a supportare o sostenere la vita e/o la salute che, in caso di guasto, può ragionevolmente causare lesioni personali significative o morte. I prodotti Silicon Labs non sono progettati o autorizzati per applicazioni militari. I prodotti Silicon Labs non devono in nessun caso essere utilizzati in armi di distruzione di massa comprese (ma non limitate a) armi nucleari, biologiche o chimiche, o missili in grado di trasportare tali armi. Silicon Labs declina ogni garanzia espressa e implicita e non sarà responsabile per eventuali lesioni o danni correlati all'uso di un prodotto Silicon Labs in tali applicazioni non autorizzate.
Informazioni sui marchi Silicon Laboratories Inc.®, Silicon Laboratories®, Silicon Labs®, SiLabs® e il logo Silicon Labs®, Bluegiga®, Bluegiga Logo®, EFM®, EFM32®, EFR, Ember®, Energy Micro, il logo Energy Micro e le loro combinazioni, "i microcontrollori più ecologici al mondo", Redpine Signals®, WiSeConnect, n-Link, EZLink®, EZRadio®, EZRadioPRO®, Gecko®, Gecko OS, Gecko OS Studio, Precision32®, Simplicity Studio®, Telegesis, il logo Telegesis®, USBXpress®, Zentri, il logo Zentri e Zentri DMS, Z-Wave® e altri sono marchi commerciali o marchi registrati di Silicon Labs. ARM, CORTEX, Cortex-M3 e THUMB sono marchi commerciali o marchi registrati di ARM Holdings. Keil è un marchio registrato di ARM Limited. Wi-Fi è un marchio registrato della Wi-Fi Alliance. Tutti gli altri prodotti o marchi menzionati nel presente documento sono marchi commerciali dei rispettivi titolari.
Silicon Laboratories Inc.
400 Ovest Cesar Chavez
Austin, Texas 78701
U.S.A.
www.silabs.com
Documenti / Risorse
![]() |
SILICON LABS Gecko SDK Suite Hardware e software Bluetooth [pdf] Guida utente 7.3.0.0, 7.2.0.0, 7.1.2.0, Gecko SDK Suite Hardware e Software Bluetooth, Suite Hardware e Software Bluetooth, Hardware e Software Bluetooth, Software |