СИЛІКОН-ЛОГО

SILICON LABS SDK 7.4.1.0 GA Zigbee Protocol Stack Software

SILICON-LABS-SDK-7-4-1-0 -Zigbee-Protocol-Stack-Software-PRODUCT

Інформація про продукт

Технічні характеристики

  • Версія Zigbee EmberZNet SDK: 7.4.1.0
  • Версія Gecko SDK Suite: 4.4 – 14 лютого 2024 р
  • Постачальник: Кремнієві лабораторії
  • Ключові характеристики: Багатопротокольна підтримка Zigbee і OpenThread на SoC
  • Сумісні компілятори: GCC версія 12.2.1
  • Версія протоколу EZSP: 0x0D

Інструкція з використання продукту

Примітки щодо сумісності та використання

  • Для отримання оновлень безпеки та повідомлень дивіться розділ «Безпека» приміток до випуску платформи Gecko, встановлених із цим SDK, або відвідайте вкладку ТЕХНІЧНА ДОКУМЕНТАЦІЯ на сайті Silicon Labs webсайт.
  • Будьте в курсі новин, підписавшись на поради щодо безпеки.

FAQ

  • Питання: Як перевірити правильність files використовуються з сумісними компіляторами?
  • відповідь: Ви можете переконатися, що це правильно files використовуються, перевіряючи GCC версії 12.2.1, що надається разом із Simplicity Studio.
  • Питання: Де я можу знайти інформацію про оновлення безпеки та повідомлення?
  • відповідь: Для отримання оновлень безпеки та повідомлень див. розділ «Безпека» приміток до випуску платформи Gecko або відвідайте вкладку «ТЕХНІЧНА ДОКУМЕНТАЦІЯ» на сайті Silicon Labs. webсайт.

Silicon Labs є постачальником, який вибирають OEM-виробники, які розробляють мережу Zigbee у своїх продуктах. Платформа Silicon Labs Zigbee — це найбільш інтегроване, повне та багатофункціональне рішення Zigbee.
Silicon Labs EmberZNet SDK містить реалізацію Silicon Labs специфікації стеку Zigbee.

  • Ці примітки до випуску стосуються версії SDK:
  • 7.4.1.0 випущено 14 лютого 2024 року
  • 7.4.0.0 випущено 13 грудня 2023 р

ОСНОВНІ ХАРАКТЕРИСТИКИ

Zigbee

  • Відповідність Zigbee R23
  • Відповідність Zigbee Smart Energy 1.4a – виробництво
  • Відповідність Zigbee GP 1.1.2 – Альфа
  • Опора MG27 – виробництво
  • Покращена підтримка частин Secure Vault
  • Підтримка Sleepy у програмах NCP SPI (не CPC) – Альфа

Багатопротокольність

  • Підтримка одночасного прослуховування (RCP) – MG21 і MG24
  • Одночасний мультипротокольний (CMP) Zigbee NCP + OpenThread RCP – виробництво
  • Підтримка Dynamic Multiprotocol Bluetooth + Concurrent Multiprotocol (CMP) Zigbee і OpenThread на SoC

Примітки щодо сумісності та використання

Щоб отримати інформацію щодо оновлень системи безпеки та повідомлень, перегляньте розділ «Безпека» приміток до випуску платформи Gecko, встановлених із цим SDK, або на вкладці «ТЕХНІЧНА ДОКУМЕНТАЦІЯ» за адресою https://www.silabs.com/developers/zigbee-emberznet. Silicon Labs також наполегливо рекомендує вам підписатися на рекомендації щодо безпеки, щоб отримувати актуальну інформацію. Щоб отримати інструкції або якщо ви новачок у Zigbee EmberZNet SDK, перегляньте розділ Використання цього випуску.

Сумісні компілятори

  • IAR Embedded Workbench для ARM (IAR-EWARM) версія 9.40.1.
  • Використання Wine для збирання за допомогою утиліти командного рядка IarBuild.exe або IAR Embedded Workbench GUI на macOS або Linux може призвести до неправильної files використовується через колізії в алгоритмі хешування Wine для генерації коротких file імена.
  • Користувачам macOS або Linux не рекомендується створювати IAR за межами Simplicity Studio. Клієнти, які роблять це, повинні ретельно перевірити правильність files використовуються.

GCC (Колекція компіляторів GNU) версії 12.2.1, надається разом із Simplicity Studio.
Версія протоколу EZSP для цього випуску – 0x0D.

Нові предмети

Цей випуск Gecko SDK (GSDK) буде останнім із комбінованою підтримкою всіх пристроїв EFM і EFR, за винятком патчів до цієї версії за потреби. Починаючи з середини 2024 року ми представимо окремі SDK:

  • Існуючий Gecko SDK продовжить підтримувати пристрої Series 0 і 1.
  • Новий SDK призначений спеціально для пристроїв серії 2 і 3.

Gecko SDK продовжуватиме підтримувати всі пристрої серії 0 і 1 без змін у довгостроковій підтримці, обслуговуванні, якості та швидкодії, передбачених нашою політикою програмного забезпечення.
Новий SDK стане відгалуженням Gecko SDK і почне пропонувати нові функції, які допоможуть розробникам розвиватисяtage передових можливостей наших продуктів серії 2 і 3.
Це рішення узгоджується з відгуками клієнтів, що відображає наше прагнення підвищити якість, забезпечити стабільність і покращити продуктивність для виняткової взаємодії з нашим програмним SDK.

Нові компоненти

Нове у випуску 

  • Додано компоненти «zigbee_direct_security_p256» і «zigbee_direct_security_curve25519», щоб користувачі могли налаштувати певний параметр безпеки Zigbee Direct.
  • Користувачам дозволено ввімкнути декілька компонентів «zigbee_direct_security» у програмі прямого пристрою Zigbee (ZDD). У цьому випадку фактичний параметр безпеки залежить від конфігурації віртуального пристрою Zigbee (ZVD).

Нові API
Нове у випуску 

  • Додано новий API sl_zigbee_token_factory_reset для скидання токенів Zigbee NVM3 до значень за замовчуванням.
  • Додано API bool sl_zigbee_sec_man_link_key_slot_available(EmberEUI64 eui), який повертає true, якщо таблиця ключів посилань може додати або оновити запис із цією адресою (таблиця не заповнена).
  • Додано новий API bool sl_zb_sec_man_compare_key_to_value (sl_zb_sec_man_context_t* context, sl_zb_sec_man_key_t* key), який повертає true, якщо ключ, на який посилається контекст, має те саме значення, що й ключ, наданий в аргументі.

Підтримка нової платформи
Нове у випуску 

  • У цьому випуску додано підтримку стека Zigbee для таких нових частин: EFR32MG24A010F768IM40 і EFR32MG24A020F768IM40.

Нова документація
Нове у випуску 7.4.0.0

  • Оновлено опис компонента Zigbee Secure Key Storage, щоб відобразити додавання Zigbee Secure Key Storage Upgrade (що додає зворотну сумісність із існуючими проектами).
  • Додано нову примітку до програми для взаємодії з групою компонентів Zigbee Security Manager (AN1412: Zigbee Security Manager).

Запланована поведінка

Нагадуємо користувачам, що несинхронізовані передачі CSL Zigbee підлягають пріоритету протоколу в радіопланувальнику. У програмах SleepyToSleepy BLE може і буде випереджати передачу Zigbee CSL, яка завершить передачу. Випередження планувальника є більш поширеним для несинхронізованого CSL, враховуючи, що може використовуватися потенційно довга послідовність кадрів пробудження. Користувачі, які бажають налаштувати пріоритети передачі, можуть використовувати для цього компонент DMP Tuning and Testing. Користувачі також можуть переглянути UG305: Dynamic Multiprotocol User's Guide для отримання додаткової інформації.

Покращення

Змінено у випуску
Зміни в документації API emberCounterHandler

У попередніх версіях зворотній виклик обробника лічильників для рівнів MAC і APS EmberCounterTypes щодо пакетів RX і TX не передавався належним ідентифікатором цільового вузла або аргументами даних, а документація API щодо поведінки певних лічильників, які використовували ці параметри, була незрозумілою або вводила в оману.
Хоча підпис emberCounterHandler() не змінився, спосіб заповнення його параметрів дещо змінився.

  • Коментарі навколо переліків EmberCounterType у ember-types.h було розширено для ясності.
  • Параметр «Ідентифікатор вузла» для обробника лічильників для лічильників, пов’язаних із TX, тепер перевіряє, чи вказує режим адреси призначення дійсний короткий ідентифікатор перед його використанням. (Якщо ні, адреса призначення не заповнюється, а замість нього використовується значення заповнювача EMBER_UNKNOWN_NODE_ID.)
  • Параметр «Ідентифікатор вузла» для обробника лічильників для лічильників, пов’язаних з RX, тепер відображає ідентифікатор вузла джерела, а не ідентифікатор вузла призначення.
  • Лічильник повторних спроб *не* передається як параметр даних для лічильників EMBER_COUNTER_MAC_TX_UNICAST_ SUCCESS/FAILED, як описано в ember-types. h у попередніх версіях, але він ніколи не заповнювався належним чином у попередніх версіях, тому його значення в попередніх випусках завжди було 0. Цю поведінку було уточнено в описі цих EmberCounterTypes. Однак кількість повторних спроб для повторних спроб рівня APS продовжує заповнюватися в параметрі даних для типів лічильників EMBER_COUNTER_APS_TX_UNICAST_SUCCESS/FAILED, щоб відповідати попереднім випускам.
  • Усі лічильники, які заповнюють ідентифікатор вузла або параметр даних для зворотного виклику, були перевірені, щоб переконатися, що вони передають очікувані дані, адресу або EMBER_UNKNOWN_NODE_ID, якщо ідентифікатор вузла очікувався, але не міг бути отриманий із пакета, як описано в переглянутому ember- типи.h документація.
  • Обробник лічильника для EMBER_COUNTER_MAC_TX_UNICAST_RETRY тепер правильно відображає ідентифікатор цільового вузла рівня MAC і кілька повторних спроб у його ідентифікаторі цільового вузла та параметрах даних.
  • Обробник лічильника для EMBER_COUNTER_PHY_CCA_FAIL_COUNT тепер надає інформацію про ідентифікатор вузла призначення через параметр ідентифікатора вузла про передбачувану ціль рівня MAC для повідомлення, яке не вдалося передати.

Оновлений код зеленого живлення
Код сервера Green Power оновлено різними вдосконаленнями, зокрема:

  • Додано більше коду перевірки для вхідних команд із недійсною кінцевою точкою під час отримання на сервері GP.
  • Додано код для обробки випадку, коли більше немає місця для побудови зелених повідомлень.
  • Приймач тепер скидає конфігурацію сполучення з дією видалення пари в деяких випадках відповідно до розділу специфікації A.3.5.2.4.1.
  • Приймач тепер зберігає наявний груповий список запису перед його видаленням під час обробки конфігурації сполучення з дією extend.
  • Команда запиту на переклад повертає «НЕ ЗНАЙДЕНО» як код помилки, якщо таблиця перекладу порожня або індекс перевищує кілька записів у таблиці.
  • Версію кінцевої точки GP у деяких програмах змінено з 1 на 0.

Використання CSMA у функції надсилання GPDF обмежено, оскільки пристрої Green Power є пристроями з мінімальною енергією і не використовують CSMA у більшості дизайнів. Замість цього кращим дизайном є надсилання кількох пакетів, використовуючи той самий бюджет енергії.
Вилучено використання прихованої кінцевої точки в опції плагіна Green Power Server. Натомість використовуйте одну з кінцевих точок програми.
Покращення коду плагіна оновлення ключа мережі

  • Період періодичного оновлення ключа мережі змінено на 1 рік.

Реструктуризовано деякі API, щоб уникнути непотрібного експорту ключів
Внесено зміни на користь використання ключових контекстів замість відкритих текстових ключових даних.

  • sl_zigbee_send_security_challenge_request тепер приймає аргумент sl_zb_sec_man_context_t замість EmberKeyData.
  • Значення enum sl_zb_sec_man_derived_key_type тепер є 16-бітовою бітовою маскою для прямої підтримки певних похідних ключів, які поєднують кілька похідних типів.

Вирішені проблеми

Виправлено у випуску 

ID № опис
1036893 Виправлено проблему, через яку компонент кластера OTA встановлював застарілий компонент інтерфейсу завантажувача як залежність.
1114905 Zigbee Direct: покращено обробку характеристики виходу з мережі.
1180937 Виправлено скидання WDT під час підключення Zigbee Direct ZDD до стороннього ZVD.
1223904 Виправлено проблему, через яку кінцевий пристрій некоректно перемикався на роботу в дуже навантаженому середовищі.
1224393 Оновлено код обробника запитів таблиці приймача Green Power, щоб оновити адресу призначення відповіді.
1228808 Виправлено проблему відображення макросів у документації gp-types.h.
1232297 Виправлено проблему, через яку emberSetOutgoingNwkFrameCounter і emberSetOutgoingApsFrameCounter не працювали на 64-розрядних хост-додатках (повертаючи EMBER_BAD_ARGUMENT).
1232359 Виправлено обчислення параметра gppTunnelingDelay у обробці команд клієнта green power.
 

1240392

Запити ZDO Bind/Unbind, відхилені через причини доступу/дозволу, мають повертати статус EMBER_ZDP_NOT_AUTHORIZED, а не статус EMBER_ZDP_NOT_PERMITTED відповідно до специфікацій Zigbee.
1243523 Zigbee Direct: покращена стабільність підключення BLE до ЗВД.
1249455 Виправлено проблему, через яку кінцевий пристрій у режимі сну переходив у режим сну під час отримання трансляції перед отриманням підтвердження.
1252295 Виправте помилку в макросі каталогу компонентів SL_CATALOG_ZIGBEE_OTA_STORAGE_COMMON_PRESENT.

Виправлено у випуску 

ID № опис
1019348 Виправлено вимоги до залежностей для компонента Zigbee ZCL Cli, щоб його можна було видалити, коли він не потрібен.
1024246 Оновлено опис функції для emberHaveLinkKey() і sl_zb_sec_man_have_link_key().
1036503 Додано опис, щоб рекомендувати використання ядра Micrium для DMPampдодатки.
1037661 Виправлено проблему, яка заважала програмі встановити професійний стек або листовий стек.
1078136 Виправлено періодичний збій під час зміни подій із контексту переривання
 

 

 

1081548

Нагадуємо користувачам, що несинхронізовані передачі CSL Zigbee підлягають пріоритету протоколу в радіопланувальнику. У програмах SleepyToSleepy BLE може і буде випереджати передачу Zigbee CSL, яка завершить передачу. Випередження планувальника є більш поширеним для несинхронізованого CSL, враховуючи, що може використовуватися потенційно довга послідовність кадрів пробудження. Користувачі, які бажають налаштувати пріоритети передачі, можуть використовувати для цього компонент DMP Tuning and Testing. Користувачі також можуть переглянути UG305: Dynamic Multiprotocol User's Guide для отримання додаткової інформації.

У CSL виправлено проблему, через яку нова послідовність кадрів пробудження, отримана одразу після попереднього кадру корисного навантаження, не записувалася належним чином. Це призведе до пропущеного кадру корисного навантаження.

1084111 Початкову підтримку SPI-NCP у режимі сну для плат на основі MG24 оновлено як частину цього випуску.
1104056 Додано підтримку керування мережею для роботи у вторинній мережі у випадку кількох мереж
1120515 Виправлено проблему, через яку канал не змінювався під час використання команди mfglib set-channel.
1141109 Виправлено проблему, через яку створювалися sampпрограма ncp-uart-gp-multi-rail пропускає заголовок files під час використання компонента адаптера Green Power із параметром -cp.
1144316 Оновлено опис деяких типів структур даних у документації gp-types.h.
1144884 Виправлено помилковий біт кадру, який очікує на розгляд, коли дані не очікуються.
1152512 Виправлено потенційний збій у low-mac-rail під час модифікації події в контексті ISR.
ID № опис
1154616 Додано виняток для умови ініціалізації мережі з випадком «Зміна ролі з кінцевого пристрою в режимі сну на пристрій, що не працює в режимі сну».
1157289 Виправлено проблему, яка могла спричинити помилку тесту BDB DN-TLM-TC-02B.
1157426 Виправлено проблему збірки під час створення zigbee_simple_app із компонентом green_power_adapter.
1157932 Додано умову для перевірки відсутності поля «час переходу» та встановлення значення за умовчанням 0xFFFF для цього відсутнього поля.
1166340 Виправлено проблему, через яку emberAfGpdfSend не надсилав заплановану кількість повторних передач.
1167807 Виправлено проблему, через яку пристрої, що діють як центри довіри в розподілених мережах, неправильно очищали свої тимчасові ключі посилань кожного разу, коли приєднувався новий пристрій.
1169504 Виправлено проблему, яка спричиняла скидання пристрою в режимі сну після примусового пробудження.
1169966 Виправлено відсутність перевірки повернутого значення в коді розподілу буфера.
1171477,

172270

З mfglib start 1 повідомлення не передаються, але приймаються, тому відображене термінальне повідомлення «mfglib send complete» є неправильним і змінюється на «RXed %d packets in the last %d ms».
1171935 Період періодичного оновлення ключа мережі змінено на 1 рік.
1172778 Додано відсутній виклик emberAfPluginGreenPowerServerUpdateAliasCallback до сервера Green Power.
1174288 Виправлено проблему, через яку процес керування мережею заявляв, якщо виклик зупинити поточне сканування.
1178393 Оновлено помилку документації.
1180445 У Smart Energy тепер OTA продовжує завантажуватись, якщо координатор досягає обмеженого робочого циклу.
1185509 Виправлено проблему в CSL, через яку нова послідовність кадрів пробудження, отримана одразу після попереднього кадру корисного навантаження, не записувалася належним чином. Це призведе до пропущеного кадру корисного навантаження.
1186107 Виправлено проблему, яка спричиняла невдале розшифрування отриманих GPDF для заміни вхідного GPDF у сповіщенні про введення в експлуатацію gp.
1188397 Виправлено проблему, яка викликала помилку компіляції під час увімкнення розширеного розміру таблиці звіту.
1194090 Виправлено статус помилки у відповіді за замовчуванням для команди «Режим введення в експлуатацію» – відповідно до розділу 3.3.4.8.2
1194963 Виправлено проблему, через яку memset структуру CommissioningGpd перед викликом зворотного виклику користувача emberAfGreenPowerServerPairingStatusCallback.
1194966 Виправлено проблему, через яку поля Endpoint і proxiesInvolved не встановлювалися в дії Exit Commissioning.
1196698 Виправлено помилковий біт кадру, який очікує на розгляд, коли дані не очікуються.
1199958 Додано код для обробки випадку, коли більше немає місця для побудови зелених повідомлень.
1202034 Виправлено проблему, через яку змінна стека sl_zb_sec_man_context_t не ініціалізувалася належним чином, що спричиняло помилку приєднання за допомогою коду встановлення.
 

1206040

Виклик emberRemoveChild() під час безпечної спроби повторного приєднання кінцевим пристроєм потенційно може призвести до додаткового зменшення підрахунку дочірніх елементів, потенційно призводячи до підрахунку дочірніх елементів на -1 (255), перешкоджаючи приєднанню/повторному приєднанню кінцевих пристроїв через вказану відсутність місткості в Beacon.
 

1207580

Функції пошуку дочірніх таблиць у стеку несумісні у використанні 0x0000 проти 0xFFFF для ідентифікатора вузла, що повертається, що представляє недійсні/порожні записи, що призводить до проблем із перевіркою невикористаних записів у API, як-от emberRemoveChild().
1210706 Цільовий і фізичний індекс, наданий у структурі EmberExtraCounterInfo як частина emberCounterHandler(), міг бути неправильним для типів лічильників MAC TX Unicast.
1211610

1212525

Виправлено проблему, через яку програми Dynamic Multiprotocol виходили з ладу після ввімкнення компонента Secure Key Storage Upgrade.
1211847 Хоча підпис emberCounterHandler() не змінився, спосіб заповнення його параметрів дещо змінився. Зміни навколо цього API пояснюються в розділі 2 вище.
 

1212449

Вихідні маяки були неправильно класифіковані на рівні MAC, що призвело до того, що emberCounterHandler() не зміг перехопити ці пакети за допомогою типу лічильника EMBER_COUNTER_MAC_TX_BROADCAST і натомість підраховував маяки за типом лічильника EMBER_COUNTER_MAC_TX_UNICAST_SUCCESS. Це потенційно призвело до ненадійних значень для параметра dest EmberNodeId, переданого до структури EmberCounterInfo
ID № опис
1214866 Надсилання пакетів опитування даних у певних конфігураціях із високим трафіком може призвести до збою шини.
1216552 Виправлено проблему, яка спричиняє твердження в умовах завантаженого руху.
1216613 Виправлено проблему, яка призводила до неправильного значення радіуса приведення групи в проксі-таблиці.
1222509 Маршрутизатор/координатор надсилає запит на вихід і повторне приєднання до кінцевого пристрою опитування, який не є дочірнім, але MAC-адреса має значення 0xFFFF, а не адреса призначення NWK.
1223842 Виправлено проблему з генерацією sl_component_catalog.h, через яку в ньому залишався небажаний код, що спричиняло помилку компіляції.
756628 Змінено виклик зворотного виклику програми emberAfMacFilterMatchMessageCallback, щоб він викликався лише для повідомлень ZLL, перевірених стеком.
816088 Конфігурацію EMBER перенесено з zigbeed_configuration.h до zigbeed. slcp.
829508 Щоб уникнути перегонів, до emberSetLogicalAndRadioChannel було додано додаткову перевірку, щоб повернути невдалий результат, якщо нижні рівні зайняті або не в стані змінити канал.

Відомі проблеми в поточному випуску

Проблеми, виділені жирним шрифтом, додано з попереднього випуску. Якщо ви пропустили випуск, останні примітки до випуску доступні за адресою https://www.si-labs.com/developers/zigbee-emberznet на вкладці Технічні документи.

ID № опис Обхідний шлях
N/A · Наступні програми/компоненти не підтримуються в цьому випуску: підтримка EM4 Ця функція буде ввімкнена в наступних випусках.
 

193492

Макрос перенесення emberAfFillCommandGlobalServerToClientConfigureRe не працює. Заповнення буфера створює некоректний пакет команд. Використовуйте команду CLI «zcl global send-me-a-report» замість API.
278063 Розумне тунелювання енергії plugins мають конфліктну обробку/використання індексу адресної таблиці. Немає відомого обхідного шляху
 

 

 

289569

 

 

Список вибору рівня потужності компонента створення мережі не пропонує повний діапазон підтримуваних значень для EFR32

Відредагуйте діапазон <-8..20>, указаний у коментарі CMSIS для EMBER_AF_PLUGIN_NETWORK_CREATOR_RADIO_P

OWER в

/protocol/ZigBee/app/framework/plugin/network-creator/config/network-creator-config.h file. наприкладample, змінити на <-26..20>.

295498 Прийом UART іноді пропускає байти під великим навантаженням у випадку динамічного мультипротокольного використання Zigbee+BLE. Використовуйте апаратний контроль потоку або зменште швидкість передачі.
 

 

312291

EMHAL: функції halCommonGetIntxxMillisecondTick на хостах Linux наразі використовують функцію отримання meofday, яка не гарантовано буде монотонною. Якщо системний час змінюється, це може спричинити проблеми зі стеком.  

Змініть ці функції, щоб натомість використовувати clock_gettime із джерелом CLOCK_MONOTONIC.

338151 Ініціалізація NCP із низьким значенням буфера пакетів може призвести до пошкодження пакетів. Використовуйте зарезервоване значення 0xFF для кількості буферів пакетів, щоб уникнути занадто низького значення за замовчуванням
387750 Проблема з форматами запиту таблиці маршрутів на кінцевому пристрої. Досліджуваний
400418 Ініціатор touchlink не може зв’язуватися з цільовим кінцевим пристроєм, не встановленим на заводі. Немає відомого обхідного шляху.
 

424355

За певних обставин ініціатор контактної лінії контактної лінії кінцевого пристрою, не встановлений на заводі, не може отримати відповідь з інформацією про пристрій.  

Досліджуваний

 

465180

Пункт «Увімкнути керування часом виконання» оптимізації блокування радіочастот співіснування може блокувати правильну роботу Zigbee. Додатковий елемент керування оптимізацією блокувальника «Вибір Wi-Fi» слід залишити «вимкненим».
 

 

480550

Кластер OTA має вбудований метод фрагментації, тому він не повинен використовувати фрагментацію APS. Хоча, якщо шифрування APS увімкнено, корисне навантаження ImageBlockResponses збільшується до розміру, при якому активується фрагментація APS. Це може призвести до збою процесу OTA.  

 

Немає відомого обхідного шляху

 

 

 

 

481128

Детальні відомості про причину скидання та збої мають бути доступні за замовчуванням через віртуальний UART (Serial 0) на платформах NCP, коли ввімкнено плагін діагностики та периферійний пристрій віртуального UART. Оскільки Serial 0 уже ініціалізовано в NCP, клієнти можуть увімкнути emberAfNcpInitCallback у Zigbee NCP Framework і викликати відповідні діагностичні функції (halGetExtendedResetInfo, halGetExtendedResetString, halPrintCrashSummary, halPrintCrashDetails і halPrintCrashData) у цьому зворотному виклику, щоб надрукувати ці дані на Serial 0 для viewу журналі захоплення Network Analyzer.

Для колишньогоampЩоб дізнатися, як використовувати ці функції, зверніться до коду, включеного в a-main-soc.c emberAfMainInit(), коли визначено EXTENDED_RESET_INFO.

ID № опис Обхідний шлях
 

 

486369

Якщо DynamicMultiProtocolLightSoc, який формує нову мережу, має дочірні вузли, що залишилися від мережі, яку він покинув, emberAfGetChildTableSize повертає ненульове значення в startIdentifyOnAllChildNodes, викликаючи повідомлення про помилку Tx 66 під час звернення до «примарних» дітей. Масово видаліть частину, якщо можливо, перед створенням нової мережі або програмно перевірте дочірню таблицю після виходу з мережі та видаліть усіх дочірніх таблиць за допомогою emberRemoveChild перед формуванням нової мережі.
 

495563

Приєднання SPI NCP Sleepy End Device SampДодаток не виконує короткий опитування, тому спроба приєднання не вдається в стані Оновити ключ посилання TC. Пристрій, який бажає приєднатися, має бути в режимі короткого опитування перед спробою приєднатися. Цей режим може бути примусово активований плагіном End Device Support.
 

 

497832

У Network Analyzer розбивка команд підтримки програми Zigbee для кадру запиту перевірки ключа помилково посилається на частину корисного навантаження, яка вказує адресу джерела кадру як адресу призначення.  

 

Немає відомого обхідного шляху

519905

521782

Spi-NCP дуже рідко може не запустити зв’язок завантажувача за допомогою команди CLI «bootload» плагіна ota-client.  

Перезапустіть процес завантаження

 

620596

NCP SPI Exampфайл для BRD4181A (EFR32xGMG21)

Визначений за замовчуванням PIN-код nWake не можна використовувати як PIN-код пробудження.

 

Змініть PIN-код за замовчуванням для nWake з PD03 на PIN-код EM2/3 із підтримкою пробудження в плагіні NCP-SPI.

 

631713

Кінцевий пристрій Zigbee неодноразово повідомлятиме про конфлікти адрес, якщо використовується плагін «Бібліотека стеку Zigbee PRO» замість «Бібліотека Zigbee PRO Leaf». Використовуйте «бібліотеку Zigbee PRO Leaf Library» замість плагіна «Zigbee PRO Stack Library».
 

670702

Неефективність плагіна звітування може призвести до значної затримки залежно від частоти запису даних і розміру таблиці, що може заважати коду додатка клієнта, включаючи час подій. Якщо ви часто записуєте, перевірте умови звітування та надсилайте звіти вручну, а не за допомогою плагіна.
 

708258

Неініціалізоване значення в groups-server.c за допомогою addEntryToGroupTable() може створити помилкове зв’язування та спричинити надсилання повідомлень звіту про групу. Додайте «binding.clusterId = EMBER_AF_INVALID_CLUSTER_ID;» після «binding.type

= EMBER_MULTICAST_BINDING;"

 

 

757775

 

Усі деталі EFR32 мають унікальне зміщення RSSI. Крім того, дизайн плати, антени та корпус можуть впливати на RSSI.

При створенні нового проекту встановіть RAIL Utility, компонент RSSI. Ця функція включає в себе стандартний RSSI Offset Silabs, виміряний для кожної деталі. Це зміщення можна змінити, якщо необхідно, після радіочастотного тестування вашого повного продукту.
 

 

758965

Компоненти кластера ZCL і таблиця виявлення команд ZCL не синхронізовані. Таким чином, під час увімкнення або вимкнення компонента кластера ZCL реалізовані команди не будуть увімкнені/вимкнені на відповідній вкладці команд розширеного конфігуратора ZCL. Вручну ввімкніть/вимкніть виявлення для потрібних команд ZCL у розширеному конфігураторі ZCL.
765735 Оновлення OTA не вдається виконати на кінцевому пристрої в режимі сну з увімкненим запитом сторінки. Використовуйте запит на блокування замість запиту сторінки.
 

845649

 

Видалення CLI: основний компонент не усуває виклики EEPROM cli до sl_cli.h.

Видаліть файл eeprom-cli.c file який викликає sl_cli.h. Крім того, виклики sl_cli.h, а також sl_cli_command_arg_t в ota-storage-simple-eeprom можна закоментувати.
 

857200

ias-зона-сервер. c дозволяє створювати прив’язки з адресою CIE «0000000000000000» і не дозволяє подальші прив’язки. Немає відомого обхідного шляху
1019961 Згенерована марка Z3Gatewayfile жорсткі коди «gcc» як CC Немає відомого обхідного шляху
ID № опис Обхідний шлях
 

 

 

1039767

 

 

 

Проблема переповнення черги повторних спроб мережі маршрутизатора Zigbee у випадку використання багатопотокової RTOS.

Стек Zigbee не є потокобезпечним. Як наслідок, виклик API стеку Zigbee з іншого завдання не підтримується в середовищі ОС і може перевести стек у «неробочий» стан. Зверніться до наведеної нижче примітки до програми, щоб отримати додаткові відомості та обхідний шлях за допомогою обробника подій.

https://www.silabs.com/documents/public/application- notes/an1322-dynamic-multiprotocol-bluetooth-zigbee-sdk- 7x.pdf .

1064370 Z3Switch sampФайлова програма за умовчанням увімкнула лише одну кнопку (екземпляр: btn1), що призводить до невідповідності в описі кнопки в проекті file. Обхідний шлях: інсталюйте примірник btn0 вручну під час створення проекту Z3Switch.
1161063 Z3Light і потенційно інші програми повідомляють про неправильні значення версії кластера. Вручну оновіть атрибут версії кластера до відповідної версії.
1164768,

1171478,

1171479

ПОМИЛКА: ezspErrorHandler 0x34 неодноразово повідомлявся під час режиму отримання mfglib Щоб зменшити кількість повідомлень про помилки, які друкуються, налаштуйте EMBER_AF_PLUGIN_GATEWAY_MAX_WAIT_FOR_EV

ENT_TIMEOUT_MS у програмі хоста до 100, тому чергу зворотних викликів звільняється швидше.

1252460 Процедури відновлення SimEEPROM (для версії 1 і версії 2), які запускаються під час запуску, можуть виконувати виклики стирання флеш-сторінки зі зміщенням, що призводить до твердження під час em_msc. підпрограма c MSC_ErasePage. Обхідний шлях: розмістіть такий рядок коду вгорі функції MSC_ErasePage() у em_msc.c: початкова адреса = (uint32_t*)((uint32_t)startAddress &

~(FLASH_PAGE_SIZE-1));

Застарілі елементи

Застаріло у випуску 
У версії GSDK 7.4.0.0, включаючи цей патч, параметр «-v» у Z3Gateway для хост-додатку Linux для створення інтерфейсу Telnet із портом 4900 або 4901 застарів. Альтернативним рекомендованим способом створення інтерфейсу Telnet є використання утиліт Linux, таких як «socat».

Застаріло у випуску 
Видалено такі застарілі API безпеки:

  • emberGetKey()
  • emberGetKeyTableEntry()
  • emberSetKeyTableEntry()
  • emberHaveLinkKey()
  • emberAddOrUpdateKeyTableEntry()
  • emberAddTransientLinkKey()
  • emberGetTransientKeyTableEntry()
  • emberGetTransientLinkKey()
  • emberHmacAesHash()

Використовуйте API, надані Zigbee Security Manager, для доступу до сховища ключів і хешування HMAC.

Видалені елементи

Видалено у випуску

  • Вилучено повторювані загальнодоступні API у загальнодоступному заголовку file gp-types.h.
  • Компонент zigbee_end_device_bind видалено. Цей компонент використовувався для координатора для посередництва повторних запитів прив’язки для кінцевих пристроїв. Цю додаткову функцію було видалено з R22 базової специфікації Zigbee.
  • Видалено setPacketBufferCount() у af-host.c і непотрібну перевірку EZSP_CONFIG_PACKET_BUFFER_COUNT: у command-handlers.c.
  • Видалено аргумент memoryAllocation, оскільки немає необхідності ділити на дві фази під час ініціалізації NCP.
  • Видалено emberAfNcpInitCallback() у програмах se14-comms-hub, se14-ihd і se14-meter-gas app.c.
  • Видалено значення параметра EZSP_CONFIG_RETRY_QUEUE_SIZE під час ініціалізації ncp у ncp-configuration.c

Багатопротокольний шлюз і RCP

Нові предмети
Додано у випуску

  • Випущено можливість одночасного прослуховування, можливість для стеків Zigbee і OpenThread працювати на незалежних каналах 802.15.4 при використанні EFR32xG24 або xG21 RCP.
  • Одночасне прослуховування недоступне для комбінації 802.15.4 RCP/Bluetooth RCP, комбінації Zigbee NCP/OpenThread RCP або для системи на кристалі (SoC) Zigbee/OpenThread. Його буде додано до цих продуктів у майбутньому випуску.
  • Розширення OpenThread CLI від постачальника додано до хост-програм OpenThread багатопротокольних контейнерів. Це включає команди coex cli.

Покращення
Змінено у випуску

  • Мультипротокольна комбінація Zigbee NCP/OpenThread RCP тепер є високоякісною.

Вирішені проблеми
Виправлено у випуску

ID № опис
 

1213701

zigbeed не дозволив створити запис таблиці відповідності джерела для дочірнього елемента, якщо непряма черга MAC містить дані, які вже очікують на розгляд для цього дочірнього елемента. Така поведінка може призвести до збою транзакцій рівня додатків між дочірнім пристроєм та іншим пристроєм через відсутність підтвердження APS або відповіді рівня додатка, зокрема до збою та несподіваного завершення оновлень ZCL OTA, націлених на дочірній пристрій.
1244461 Запис таблиці відповідності джерела для дочірньої істоти може бути видалено, незважаючи на очікувані повідомлення.

Виправлено у випуску

ID № опис
1081828 Проблема з пропускною здатністю з Zigbee/BLE DMP на основі FreeRTOSampле додатків.
1090921 Z3GatewayCpc мав проблеми з формуванням мережі в галасливому середовищі.
1153055 Затвердження на хості було викликано через помилку зв’язку під час читання версії NCP із zigbee_ncp-ble_ncp-uart sampпрограми.
1155676 802.15.4 RCP відкидав усі отримані одноадресні пакети (після підтвердження MAC), якщо кілька інтерфейсів 15.4 спільно використовували той самий 16-бітний ідентифікатор вузла.
1173178 Хост помилково повідомив про сотні пакетів, отриманих за допомогою mfglib у налаштуваннях Host-RCP.
1190859 Помилка EZSP під час надсилання випадкових пакетів mfglib у налаштуваннях Host-RCP.
1199706 Опитування даних із забутих дочірніх пристроїв не належним чином встановлювало кадр очікування на RCP для постановки в чергу команди «Вийти та приєднатися» до колишнього дочірнього пристрою.
1207967 Команда «mfglib send random» надсилала додаткові пакети на Zigbeed.
1208012 Режим mfglib rx не оновлював інформацію про пакет належним чином під час отримання на RCP.
1214359 Вузол-координатор вийшов з ладу, коли 80 або більше маршрутизаторів намагалися приєднатися одночасно до налаштування Host-RCP.
 

1216470

Після ретрансляції широкомовної розсилки для маски адреси 0xFFFF Zigbee RCP, що діє як батьківський пристрій, залишить прапорець даних, що очікують, встановлений для кожного дочірнього пристрою. Це призвело до того, що кожен дочірній елемент не спав, очікуючи даних після кожного опитування, і вимагала ще деяка незавершена транзакція даних для кожного кінцевого пристрою, щоб остаточно очистити цей стан.

Відомі проблеми в поточному випуску

Проблеми, виділені жирним шрифтом, додано з попереднього випуску. Якщо ви пропустили випуск, останні примітки до випуску доступні на https://www.si-labs.com/developers/gecko-software-development-kit.

ID № опис Обхідний шлях
811732 Підтримка власних маркерів недоступна під час використання Zigbeed. Підтримка планується в майбутньому випуску.
937562 Команда Bluetoothctl 'advertise on' не працює з програмою rcp-uart-802154-blehci на Raspberry Pi OS 11. Використовуйте програму btmgmt замість bluetoothctl.
1022972 Coex не працює на ZB NCP + OT RCP. Підтримка планується для майбутнього випуску.
1074205 CMP RCP не підтримує дві мережі з одним ідентифікатором PAN. Використовуйте різні ідентифікатори PAN для кожної мережі. Підтримка планується в майбутньому випуску.
1122723 У напруженому середовищі інтерфейс командної команди може перестати реагувати в програмі z3-light_ot-ftd_soc. Немає відомого обхідного шляху.
1124140 z3-light_ot-ftd_soc sampПрограма le не може створити мережу Zigbee, якщо мережа OT уже працює. Спочатку запустіть мережу Zigbee, а потім мережу OT.
 

1170052

CMP Zigbee NCP + OT RCP і DMP Zigbee NCP + BLE NCP можуть не підходити до частин RAM 64 КБ і менше в цьому поточному випуску.  

Частини розміром 64 КБ наразі не підтримуються для цих програм.

 

1209958

ZB/OT/BLE RCP на Bobcat і Bobcat Lite може перестати працювати через кілька хвилин під час виконання всіх трьох протоколів  

Буде розглянуто в майбутньому випуску

1221299 Показання Mfglib RSSI відрізняються між RCP і NCP. Буде розглянуто в майбутньому випуску.
1231021 OTBR може підтверджувати, коли 80+ пристроїв zigbee підключаються одночасно. Додано виправлення, яке може вирішити проблему. Буде повністю розглянуто в майбутньому випуску.

Застарілі елементи

  • Жодного

Видалені елементи
Видалено у випуску

  • Макрос «NONCOMPLIANT_ACK_TIMING_WORKAROUND» видалено. Усі додатки RCP тепер за замовчуванням підтримують час обробки 192 мкс для нерозширених підтверджень, але все ще використовують час обробки 256 мкс для розширених підтверджень, необхідних для CSL.

Використання цього випуску
Цей випуск містить наступне:

  • Стек Zigbee
  • Фреймворк додатків Zigbee
  • Зігбі Сample Додатки

Для отримання додаткової інформації про Zigbee та EmberZNet SDK див. UG103.02: Основи Zigbee.
Якщо ви вперше користуєтеся, див. QSG180: Короткий посібник Zigbee EmberZNet для SDK 7.0 і новіших версій, щоб отримати інструкції щодо налаштування середовища розробки, створення та перепрошивки якampпрограму та посилання на документацію, що вказують на наступні кроки.

Встановлення та використання

Zigbee EmberZNet SDK надається як частина Gecko SDK (GSDK), набору SDK Silicon Labs. Щоб швидко розпочати роботу з GSDK, інсталюйте Simplicity Studio 5, яка налаштує ваше середовище розробки та проведе вас через встановлення GSDK. Simplicity Studio 5 містить усе необхідне для розробки продуктів IoT за допомогою пристроїв Silicon Labs, включаючи засіб запуску ресурсів і проектів, інструменти конфігурації програмного забезпечення, повну IDE із набором інструментів GNU та інструменти аналізу. Інструкції зі встановлення наведено в онлайн-посібнику користувача Simplicity Studio 5.
Крім того, Gecko SDK можна встановити вручну, завантаживши або клонувавши останню версію з GitHub. Подивитися https://github.com/Sili-conLabs/gecko_sdk для отримання додаткової інформації.

Simplicity Studio встановлює GSDK за замовчуванням у:

  • (Windows): C:\Користувачі\ \SimplicityStudio\SDKs\gecko_sdk
  • (MacOS): /Користувачі/ /SimplicityStudio/SDKs/gecko_sdk

Документація, що стосується версії SDK, інсталюється разом із SDK. Додаткову інформацію часто можна знайти в статтях бази знань (KBA). Посилання на API та іншу інформацію про цей і попередні випуски доступні на https://docs.silabs.com/.

Інформація про безпеку

Безпечна інтеграція сховища
Для програм, які вирішили безпечно зберігати ключі за допомогою компонента Secure Key Storage на частинах Secure Vault-High, у наступній таблиці показано захищені ключі та їхні характеристики захисту зберігання, якими керує компонент Zigbee Security Manager.

Загорнутий ключ Підлягає експорту / не підлягає експорту Примітки
Ключ мережі Можна експортувати
Ключ посилання Центру безпеки Можна експортувати
Перехідний ключ посилання Можна експортувати Індексована таблиця ключів, збережена як змінний ключ
Ключ посилання на програму Можна експортувати Індексована таблиця ключів
Безпечний ключ EZSP Можна експортувати
Ключ шифрування ZLL Можна експортувати
Попередньо налаштований ключ ZLL Можна експортувати
Проксі-ключ GPD Можна експортувати Індексована таблиця ключів
Ключ приймача GPD Можна експортувати Індексована таблиця ключів
Внутрішній/заповнювач ключ Можна експортувати Внутрішній ключ для використання Zigbee Security Manager
  • Запаковані ключі, позначені як «Не експортовані», можна використовувати, але не можна viewed або спільний доступ під час виконання.
  • Запаковані ключі, позначені як «Експортовані», можна використовувати або ділитися під час виконання, але залишаються зашифрованими, зберігаючи у флеш-пам’яті.
  • Додаткам користувача ніколи не потрібно взаємодіяти з більшістю цих ключів. Існуючі API для керування ключами таблиці ключів посилань або тимчасовими ключами все ще доступні для програми користувача та тепер направляються через компонент Zigbee Security Manager.
  • У майбутньому деякі з цих ключів можуть стати недоступними для експорту в програму користувача. Користувацьким програмам рекомендується не покладатися на експорт ключів, окрім випадків крайньої необхідності.
  • Щоб отримати додаткові відомості про функції керування ключами безпечного сховища, перегляньте AN1271: безпечне зберігання ключів.

Консультації з питань безпеки
Щоб підписатися на рекомендації щодо безпеки, увійдіть на портал для клієнтів Silicon Labs і виберіть Головна сторінка облікового запису. Клацніть ДОМОВИЙ, щоб перейти на домашню сторінку порталу, а потім клацніть плитку Керування сповіщеннями. Переконайтеся, що позначено «Повідомлення про програмне забезпечення/безпеку та повідомлення про зміну продукту (PCN)», і що ви підписані як мінімум на свою платформу та протокол. Натисніть «Зберегти», щоб зберегти зміни.

SILICON-LABS-SDK-7-4-1-0-GA-Zigbee-Protocol-Stack-Software-FIG-1

Підтримка
Клієнти Development Kit мають право на навчання та технічну підтримку. Використовуйте Silicon Laboratories Zigbee web сторінку, щоб отримати інформацію про всі продукти та послуги Silicon Labs Zigbee, а також підписатися на підтримку продукту.
Ви можете зв’язатися зі службою підтримки Silicon Laboratories за адресою http://www.silabs.com/support.

Студія простоти
Доступ одним кліком до MCU та бездротових інструментів, документації, програмного забезпечення, бібліотек вихідного коду тощо. Доступно для Windows, Mac і Linux!

SILICON-LABS-SDK-7-4-1-0-GA-Zigbee-Protocol-Stack-Software-FIG-2

Відмова від відповідальності
Silicon Labs має намір надавати клієнтам найновішу, точну та поглиблену документацію щодо всіх периферійних пристроїв і модулів, доступних для розробників системи та програмного забезпечення, які використовують або мають намір використовувати продукти Silicon Labs. Характеристики даних, доступні модулі та периферійні пристрої, розміри пам’яті та адреси пам’яті відносяться до кожного конкретного пристрою, а надані «типові» параметри можуть змінюватися і змінюються в різних програмах. Додаток прampописані тут лише для ілюстрації. Silicon Labs залишає за собою право без додаткового повідомлення вносити зміни в інформацію про продукт, специфікації та описи, наведені тут, і не надає гарантій щодо точності чи повноти наданої інформації. Без попереднього повідомлення Silicon Labs може оновлювати мікропрограму продукту під час виробничого процесу з міркувань безпеки чи надійності. Такі зміни не впливають на технічні характеристики або продуктивність продукту. Silicon Labs не несе відповідальності за наслідки використання інформації, наданої в цьому документі. Цей документ не означає та не надає прямо жодної ліцензії на розробку чи виготовлення будь-яких інтегральних схем. Продукти не розроблені та не дозволені для використання в будь-яких пристроях FDA Class III, програмах, для яких потрібне схвалення FDA на ринку, або системах життєзабезпечення без спеціальної письмової згоди Silicon Labs. «Система життєзабезпечення» — це будь-який продукт або система, призначена для підтримки або підтримки життя та/або здоров’я, яка, якщо вона виходить з ладу, може призвести до значних тілесних ушкоджень або смерті. Продукти Silicon Labs не розроблені та не дозволені для використання у військових цілях. Продукти Silicon Labs за жодних обставин не можна використовувати у зброї масового знищення, включаючи (але не обмежуючись) ядерну, біологічну чи хімічну зброю, або ракети, здатні доставляти таку зброю. Silicon Labs відмовляється від усіх явних і непрямих гарантій і не несе відповідальності за будь-які травми чи збитки, пов’язані з використанням продукту Silicon Labs у таких неавторизованих програмах.

Примітка: Цей вміст може містити образливу термінологію, яка зараз застаріла. Silicon Labs замінює ці терміни інклюзивною мовою, де це можливо. Для отримання додаткової інформації відвідайте www.silabs.com/about-us/inclusive-lexicon-project.

Інформація про товарний знак
Silicon Laboratories Inc.®, Silicon Laboratories®, Silicon Labs®, SiLabs® і логотип Silicon Labs®, Bluegiga®, логотип Bluegiga®, EFM®, EFM32®, EFR, Ember®, Energy Micro, логотип Energy Micro та їх комбінації , «найбільш енергозберігаючі мікроконтролери у світі», Redpine Signals®, WiSeConnect , n-Link, ThreadArch®, EZLink®, EZRadio®, EZRadioPRO®, Gecko®, Gecko OS, Gecko OS Studio, Precision32®, Simplicity Studio®, Telegesis, Telegesis Logo®, USBXpress®, Zentri, логотип Zentri та Zentri DMS, Z-Wave® та інші є товарними знаками або зареєстрованими товарними знаками Silicon Labs. ARM, CORTEX, Cortex-M3 і THUMB є товарними знаками або зареєстрованими товарними знаками ARM Holdings. Keil є зареєстрованою торговою маркою компанії ARM Limited. Wi-Fi є зареєстрованою торговою маркою Wi-Fi Alliance. Усі інші продукти або торгові марки, згадані тут, є товарними знаками відповідних власників.

КОНТАКТ

  • Silicon Laboratories Inc.
  • 400 Західний Сезар Чавес
  • Остін, Техас 78701
  • США
  • www.silabs.com

Документи / Ресурси

SILICON LABS SDK 7.4.1.0 GA Zigbee Protocol Stack Software [pdfПосібник користувача
SDK 7.4.1.0 GA Zigbee Protocol Stack Software, SDK 7.4.1.0 GA, Zigbee Protocol Stack Software, Protocol Stack Software, Stack Software

Список літератури

Залиште коментар

Ваша електронна адреса не буде опублікована. Обов'язкові поля позначені *