SILICON LABS SDK 7.4.1.0 GA Программное обеспечение стека протоколов Zigbee
Информация о продукте
Технические характеристики
- Версия 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, или посетите вкладку TECH DOCS на сайте Silicon Labs. webсайт.
- Будьте в курсе, подписавшись на информационные бюллетени по безопасности.
Часто задаваемые вопросы
- Вопрос: Как проверить правильность fileиспользуются с совместимыми компиляторами?
- Отвечать: Вы можете убедиться в правильности fileиспользуются путем проверки версии GCC 12.2.1, поставляемой с Simplicity Studio.
- Вопрос: Где я могу найти информацию об обновлениях безопасности и уведомлениях?
- Отвечать: Обновления безопасности и уведомления см. в главе «Безопасность» примечаний к выпуску платформы Gecko или посетите вкладку TECH DOCS на сайте Silicon Labs. webсайт.
Silicon Labs является предпочтительным поставщиком OEM-производителей, разрабатывающих сетевые технологии Zigbee в своих продуктах. Платформа Silicon Labs Zigbee — это наиболее интегрированное, полное и многофункциональное решение Zigbee из доступных.
SDK EmberZNet от Silicon Labs содержит реализацию спецификации стека Zigbee от Silicon Labs.
- Эти примечания к выпуску охватывают версии SDK:
- 7.4.1.0 выпущен 14 февраля 2024 г.
- 7.4.0.0 выпущен 13 декабря 2023 г.
КЛЮЧЕВЫЕ ХАРАКТЕРИСТИКИ
Зигби
- Соответствие Zigbee R23
- Соответствие Zigbee Smart Energy 1.4a – производство
- Соответствие Zigbee GP 1.1.2 – Альфа
- Поддержка MG27 – производство
- Улучшенная поддержка частей Secure Vault.
- Поддержка Sleepy в приложениях NCP SPI (не CPC) – Alpha
Мультипротокол
- Поддержка одновременного прослушивания (RCP) – MG21 и MG24
- Параллельный многопротокольный протокол (CMP) Zigbee NCP + OpenThread RCP – производство
- Поддержка динамического многопротокольного Bluetooth + параллельного многопротокольного (CMP) Zigbee и OpenThread на SoC
Уведомления о совместимости и использовании
Информацию об обновлениях безопасности и уведомлениях см. в главе «Безопасность» примечаний к выпуску платформы Gecko, установленной вместе с этим SDK, или на вкладке TECH DOCS по адресу: 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 в macOS или Linux может привести к неправильным результатам. fileиспользуется из-за коллизий в алгоритме хеширования Wine для генерации коротких file имена.
- Пользователям macOS или Linux не рекомендуется использовать IAR за пределами Simplicity Studio. Клиенты, которые делают это, должны тщательно проверить правильность fileс используются.
GCC (Коллекция компиляторов GNU) версии 12.2.1, входящая в состав Simplicity Studio.
Версия протокола EZSP для этого выпуска — 0x0D.
Новые товары
Этот выпуск Gecko SDK (GSDK) будет последним с объединенной поддержкой всех устройств EFM и EFR, за исключением исправлений для этой версии по мере необходимости. С середины 2024 года мы представим отдельные SDK:
- Существующий Gecko SDK продолжит поддерживать устройства серий 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 Direct Device (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». Пользователи также могут обратиться к UG305: Руководство пользователя по динамическому многопротоколу для получения дополнительной информации.
Улучшения
Изменено в выпуске
Изменения в документации API emberCounterHandler
В предыдущих версиях обратному вызову обработчика счетчика для уровней EmberCounterTypes MAC и APS, касающихся пакетов RX и TX, не передавался правильный идентификатор целевого узла или аргументы данных, а документация API, касающаяся поведения определенных счетчиков, которые использовали эти параметры, была неясной или вводящей в заблуждение.
Хотя сигнатура emberCounterHandler() не изменилась, способ заполнения ее параметров немного изменился.
- Комментарии вокруг перечислений EmberCounterType в ember-types.h были расширены для ясности.
- Параметр Node ID обработчика счетчиков для счетчиков, связанных с передачей, теперь проверяет, указывает ли режим адреса назначения на действительный короткий идентификатор перед его использованием. (Если нет, адрес назначения не заполняется, а вместо него используется значение-заполнитель EMBER_UNKNOWN_NODE_ID.)
- Параметр Node ID обработчика счетчиков для счетчиков, связанных с приемом, теперь отражает идентификатор исходного узла, а не идентификатор узла назначения.
- Счетчик повторов *не* передается в качестве параметра данных для счетчиков EMBER_COUNTER_MAC_TX_UNICAST_ SUCCESS/FAILED, как описано в разделе ember-types. h в предыдущих версиях, но в предыдущих версиях он никогда не заполнялся должным образом, поэтому его значение в предыдущих выпусках всегда было равно 0. Это поведение было разъяснено в описании этих типов EmberCounterTypes. Однако количество повторов для повторных попыток уровня APS продолжает заполняться в параметре данных для типов счетчиков EMBER_COUNTER_APS_TX_UNICAST_SUCCESS/FAILED, чтобы соответствовать предыдущим выпускам.
- Все счетчики, которые заполняют идентификатор узла или параметр данных для обратного вызова, были проверены, чтобы гарантировать, что они передают ожидаемые данные, адрес или EMBER_UNKNOWN_NODE_ID, если идентификатор узла ожидался, но не мог быть получен из пакета, как описано в пересмотренном документе. Документация type.h.
- Обработчик счетчика для EMBER_COUNTER_MAC_TX_UNICAST_RETRY теперь правильно отражает идентификатор узла назначения уровня MAC и несколько повторных попыток в своем идентификаторе узла назначения и параметрах данных.
- Обработчик счетчика для EMBER_COUNTER_PHY_CCA_FAIL_COUNT теперь предоставляет информацию об идентификаторе узла назначения через параметр Node ID о предполагаемом целевом уровне MAC сообщения, передачу которого не удалось передать.
Обновленный Кодекс зеленой энергии
Код сервера Green Power обновлен различными улучшениями, включая:
- Добавлен дополнительный код проверки для входящих команд с недопустимой конечной точкой при получении на сервере GP.
- Добавлен код для обработки случая, когда больше нет места для создания сообщений о зеленой энергии.
- Приемник теперь удаляет конфигурацию сопряжения с действием «Удалить сопряжение» в некоторых случаях согласно разделу спецификации A.3.5.2.4.1.
- Приемник теперь сохраняет существующий список групп записи перед его удалением при обработке конфигурации сопряжения с действием расширения.
- Команда запроса перевода возвращает «НЕ НАЙДЕНО» в качестве кода ошибки, если таблица перевода пуста или индекс превышает несколько записей в таблице.
- Изменена версия конечной точки 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.
- Значения перечисления sl_zb_sec_man_derived_key_type теперь представляют собой 16-битную битовую маску для прямой поддержки определенных производных ключей, которые объединяют несколько производных типов.
Исправленные проблемы
Исправлено в релизе
МНЕ БЫ # | Описание |
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, отклоненные по причинам доступа/разрешения, должны возвращать статус EMBER_ZDP_NOT_AUTHORIZED, а не статус EMBER_ZDP_NOT_PERMITTED согласно спецификациям Zigbee. |
1243523 | Zigbee Direct: повышена стабильность подключения BLE к ZVD. |
1249455 | Исправлена проблема, из-за которой спящее конечное устройство переходило в спящий режим при получении трансляции до получения подтверждения. |
1252295 | Исправьте опечатку в макросе каталога компонентов SL_CATALOG_ZIGBEE_OTA_STORAGE_COMMON_PRESENT. |
Исправлено в релизе
МНЕ БЫ # | Описание |
1019348 | Исправлены требования к зависимостям для компонента Zigbee ZCL Cli, чтобы его можно было удалить, когда он не нужен. |
1024246 | Обновлено описание функций emberHaveLinkKey() и sl_zb_sec_man_have_link_key(). |
1036503 | Добавлено описание, рекомендующее использование ядра Micrium для DMP.ampле приложения. |
1037661 | Исправлена проблема, из-за которой приложение не могло установить профессиональный стек или листовой стек. |
1078136 | Исправлен периодический сбой при изменении событий из контекста прерывания. |
1081548 |
Напоминаем пользователям, что несинхронизированные передачи CSL Zigbee подлежат приоритетному использованию протокола в радиопланировщике. В приложениях SleepyToSleepy BLE может и будет прерывать передачу Zigbee CSL, что прекращает передачу. Вытеснение планировщика более распространено для несинхронизированного CSL, учитывая, что может использоваться потенциально длинная последовательность кадров пробуждения. Пользователи, желающие настроить приоритеты передачи, могут использовать для этого компонент «Настройка и тестирование DMP». Пользователи также могут обратиться к UG305: Руководство пользователя по динамическому многопротоколу для получения дополнительной информации.
Исправлена проблема в 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. |
МНЕ БЫ # | Описание |
1154616 | Добавлено исключение для условия инициализации сети в случае «Переключение роли с устройства Sleepy End на устройство Non Sleepy End». |
1157289 | Исправлена проблема, которая могла привести к сбою теста BDB DN-TLM-TC-02B. |
1157426 | Исправлена проблема сборки при сборке zigbee_simple_app с помощью компонента green_power_adapter. |
1157932 | Добавлено условие для проверки отсутствия поля «время перехода» и установлено значение по умолчанию 0xFFFF для этого отсутствующего поля. |
1166340 | Исправлена проблема, из-за которой emberAfGpdfSend не отправлял заданное количество повторных передач. |
1167807 | Исправлена проблема, из-за которой устройства, выступающие в качестве центров управления безопасностью в распределенных сетях, неправильно очищали свои ключи временных ссылок каждый раз при присоединении нового устройства. |
1169504 | Исправлена проблема, приводившая к сбросу спящего устройства при принудительном пробуждении. |
1169966 | Исправлена отсутствующая проверка возвращаемого значения в коде выделения буфера. |
1171477,
172270 |
При запуске mfglib 1 сообщения не передаются, а принимаются, поэтому отображаемое сообщение терминала «отправка mfglib завершена» неверно и изменено на «Принято %d пакетов за последние %d мс». |
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 | Исправлена проблема, из-за которой структура CommissioningGpd устанавливалась перед вызовом обратного вызова пользователя emberAfGreenPowerServerPairingStatusCallback. |
1194966 | Исправлена проблема, из-за которой поля endpoint и proxyInvolved не устанавливались с помощью действия «Выход из ввода в эксплуатацию». |
1196698 | Исправлен ложный бит ожидания кадра, установленный, когда никаких ожидающих данных не было. |
1199958 | Добавлен код для обработки случая, когда больше нет места для создания сообщений о зеленой энергии. |
1202034 | Исправлена проблема, из-за которой переменная стека sl_zb_sec_man_context_t инициализировалась неправильно, что приводило к сбою присоединения с помощью кода установки. |
1206040 |
Вызов emberRemoveChild() во время попытки безопасного повторного подключения конечного устройства потенциально может привести к дополнительному уменьшению дочернего счетчика, что потенциально может привести к тому, что дочерний счетчик станет равным -1 (255), препятствуя присоединению/повторному присоединению конечных устройств из-за указанного отсутствия. мощности в Маяке. |
1207580 |
Функции поиска дочерних таблиц в стеке непоследовательны в использовании 0x0000 вместо 0xFFFF для возвращаемого значения идентификатора узла, представляющего недействительные/пустые записи, что приводит к проблемам с проверкой неиспользуемых записей в API, таких как emberRemoveChild(). |
1210706 | Индекс назначения и PHY, указанные в структуре EmberExtraCounterInfo как часть emberCounterHandler(), могли быть неправильными для типов счетчиков одноадресной рассылки MAC TX. |
1211610
1212525 |
Исправлена проблема, из-за которой приложения Dynamic Multiprotocol аварийно завершали работу после включения компонента обновления безопасного хранилища ключей. |
1211847 | Хотя сигнатура emberCounterHandler() не изменилась, способ заполнения ее параметров немного изменился. Изменения, связанные с этим API, описаны в разделе 2 выше. |
1212449 |
Исходящие маяки были неправильно классифицированы на уровне MAC, что привело к тому, что emberCounterHandler() не смог перехватить эти пакеты с помощью типа счетчика EMBER_COUNTER_MAC_TX_BROADCAST и вместо этого подсчитал маяки с помощью типа счетчика EMBER_COUNTER_MAC_TX_UNICAST_SUCCESS. Это потенциально приводило к ненадежным значениям параметра dest EmberNodeId, передаваемого в структуру EmberCounterInfo. |
МНЕ БЫ # | Описание |
1214866 | Отправка пакетов опроса данных в определенных конфигурациях с высоким трафиком может привести к сбою шины. |
1216552 | Исправлена проблема, приводившая к выдаче подтверждения в условиях загруженного трафика. |
1216613 | Исправлена проблема, приводившая к неправильному значению радиуса группового применения в таблице прокси. |
1222509 | Маршрутизатор/координатор отправляет запрос на выход и повторное присоединение к конечному устройству, не являющемуся дочерним, но MAC-адрес назначения равен 0xFFFF вместо соответствия адресу назначения NWK. |
1223842 | Исправлена проблема с созданием файла sl_comComponent_catalog.h, в котором оставался нежелательный код, что приводило к сбою компиляции. |
756628 | Изменен вызов обратного вызова приложения emberAfMacFilterMatchMessageCallback, чтобы он вызывался только для сообщений ZLL, проверенных стеком. |
816088 | Конфигурация EMBER перенесена из zigbeed_configuration.h в zigbeed. slcp. |
829508 | Чтобы избежать состояния гонки, в emberSetLogicalAndRadioChannel была добавлена дополнительная проверка, чтобы вернуть неудачный результат, если нижние уровни заняты или не в состоянии изменить канал. |
Известные проблемы в текущей версии
Проблемы, выделенные жирным шрифтом, были добавлены с момента предыдущего выпуска. Если вы пропустили какой-либо выпуск, последние примечания к выпуску доступны по адресу https://www.si-labs.com/developers/zigbee-emberznet во вкладке Техническая документация.
МНЕ БЫ # | Описание | Обходной путь |
Н/Д | ·В этом выпуске не поддерживаются следующие приложения/компоненты: Поддержка 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.
ОЙЕР в /protocol/ZigBee/app/framework/plugin/network-creator/config/network-creator-config.h file. Напримерample, измените на . |
295498 | При приеме UART иногда теряются байты при большой нагрузке в случае динамического многопротокольного использования Zigbee+BLE. | Используйте аппаратное управление потоком или уменьшите скорость передачи данных. |
312291 |
ЭМХАЛ: Функции halCommonGetIntxxMilli SecondTick на хостах 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 (последовательный порт 0) на платформах NCP, когда включен подключаемый модуль диагностики и периферийное устройство виртуального UART. | Поскольку Serial 0 уже инициализирован в NCP, клиенты могут включить emberAfNcpInitCallback в Zigbee NCP Framework и вызвать соответствующие диагностические функции (halGetExtendedResetInfo, halGetExtendedResetString, halPrintCrashSummary, halPrintCrashDetails и halPrintCrashData) в этом обратном вызове для печати этих данных в Serial 0 для viewзапись в журнал захвата Network Analyser.
Для бывшегоampЧтобы узнать, как использовать эти функции, обратитесь к коду, включенному в emberAfMainInit() a-main-soc.c, когда определен EXTENDED_RESET_INFO. |
МНЕ БЫ # | Описание | Обходной путь |
486369 |
Если DynamicMultiProtocolLightSoc, образующий новую сеть, имеет дочерние узлы, оставшиеся от сети, которую он покинул, emberAfGetChildTableSize возвращает ненулевое значение в startIdentifyOnAllChildNodes, вызывая сообщения об ошибках Tx 66 при обращении к «призрачным» дочерним элементам. | По возможности массово удалите часть перед созданием новой сети или программно проверьте дочернюю таблицу после выхода из сети и удалите всех дочерних элементов с помощью emberRemoveChild перед формированием новой сети. |
495563 |
Присоединение к SPI NCP Sleepy End Device SampПриложение le не выполняет короткий опрос, поэтому попытка присоединения завершается неудачей в состоянии обновления ключа связи TC. | Перед попыткой подключения устройство, желающее присоединиться, должно находиться в режиме короткого опроса. Этот режим можно принудительно включить с помощью плагина End Device Support. |
497832 |
В анализаторе сети команда поддержки приложений Zigbee для кадра запроса ключа проверки ошибочно ссылается на часть полезных данных, которая указывает адрес источника кадра как адрес назначения. |
Нет известного обходного пути |
519905
521782 |
В очень редких случаях Spi-NCP может не запустить связь с загрузчиком с помощью команды CLI «bootload» плагина ota-client. |
Перезапустите процесс загрузки |
620596 |
NCP SPI Exampфайл для BRD4181A (EFR32xGMG21)
Определенный по умолчанию PIN-код nWake не может использоваться в качестве PIN-кода пробуждения. |
Измените контакт по умолчанию для nWake с PD03 на контакт EM2/3 с поддержкой пробуждения в плагине NCP-SPI. |
631713 |
Конечное устройство Zigbee будет неоднократно сообщать о конфликтах адресов, если вместо «Zigbee PRO Leaf Library» используется плагин «Zigbee PRO Stack Library». | Используйте «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. Эта функция включает в себя значения Silab смещения RSSI по умолчанию, измеренные для каждой детали. При необходимости это смещение можно изменить после радиочастотного тестирования всего продукта. |
758965 |
Компоненты кластера ZCL и таблица обнаружения команд ZCL не синхронизированы. Таким образом, при включении или отключении компонента кластера ZCL реализованные команды не будут включаться/отключаться на соответствующей вкладке команд ZCL Advanced Configuration. | Вручную включите/отключите обнаружение нужных команд ZCL в расширенном конфигураторе ZCL. |
765735 | Обновление OTA не выполняется на Sleepy End Device с включенным запросом страницы. | Используйте запрос блокировки вместо запроса страницы. |
845649 |
Удаление интерфейса командной строки: основной компонент не удаляет вызовы интерфейса командной строки EEPROM к 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 | Нет известного обходного пути |
МНЕ БЫ # | Описание | Обходной путь |
1039767 |
Проблема переполнения очереди повторных попыток сети маршрутизатора Zigbee в случае использования многопоточной RTOS. |
Zigbee Stack не является потокобезопасным. В результате вызов API стека Zigbee из другой задачи не поддерживается в среде ОС и может перевести стек в «нерабочее» состояние. Обратитесь к следующему примечанию к приложению для получения дополнительной информации и обходного пути с использованием обработчика событий.
https://www.silabs.com/documents/public/application- примечания/an1322-динамический-многопротокольный-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 (как для v1, так и для v2), запускаемые при запуске, могут выполнять несогласованные вызовы стирания флэш-страницы, что приводит к утверждениям во время em_msc. Процедура MSC_ErasePage c. | Обходной путь: поместите следующую строку кода в начало функции 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 безопасности:
- mberGetKey()
- emberGetKeyTableEntry()
- emberSetKeyTableEntry()
- mberHaveLinkKey()
- emberAddOrUpdateKeyTableEntry()
- emberAddTransientLinkKey()
- emberGetTransientKeyTableEntry()
- emberGetTransientLinkKey()
- уголекHmacAesHash()
Используйте 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() в файлах app.c se14-comms-hub, se14-ihd и se14-meter-gas.
- Удалена настройка значения 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 или для системы на кристалле Zigbee/OpenThread (SoC). Он будет добавлен к этим продуктам в будущих выпусках.
- Расширение поставщика OpenThread CLI было добавлено в хост-приложения OpenThread многопротокольных контейнеров. Сюда входят команды coex cli.
Улучшения
Изменено в выпуске
- Комбинация мультипротоколов Zigbee NCP/OpenThread RCP теперь является продуктивным качеством.
Исправленные проблемы
Исправлено в релизе
МНЕ БЫ # | Описание |
1213701 |
zigbeed не позволял создавать запись таблицы соответствия источника для дочернего элемента, если в косвенной очереди MAC уже есть данные, ожидающие обработки для этого дочернего элемента. Такое поведение может привести к сбою транзакций уровня приложения между дочерним устройством и каким-либо другим устройством из-за отсутствия APS Ack или ответа уровня приложения, в первую очередь к сбою и неожиданному прекращению обновлений ZCL OTA, нацеленных на дочернее устройство. |
1244461 | Запись исходной таблицы соответствия для дочернего существа может быть удалена, несмотря на ожидающие сообщения. |
Исправлено в релизе
МНЕ БЫ # | Описание |
1081828 | Проблема с пропускной способностью Zigbee/BLE DMP на базе FreeRTOSampле приложений. |
1090921 | У Z3GatewayCpc возникли проблемы с формированием сети в шумной среде. |
1153055 | Утверждение на хосте было вызвано, когда произошел сбой связи при чтении версии NCP из файла zigbee_ncp-ble_ncp-uart.ampле приложение. |
1155676 | RCP 802.15.4 отбрасывал все полученные одноадресные пакеты (после подтверждения 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.
МНЕ БЫ # | Описание | Обходной путь |
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 сampПриложение le не может сформировать сеть Zigbee, если сеть OT уже работает. | Сначала запустите сеть Zigbee, а затем сеть OT. |
1170052 |
CMP Zigbee NCP + OT RCP и DMP Zigbee NCP + BLE NCP могут не подходить для частей ОЗУ объемом 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
- Зигби Сampле Приложения
Дополнительные сведения о 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 включает в себя все необходимое для разработки продуктов Интернета вещей с использованием устройств Silicon Labs, включая средство запуска ресурсов и проектов, инструменты настройки программного обеспечения, полную интегрированную среду разработки с набором инструментов GNU и инструменты анализа. Инструкции по установке приведены в онлайн-руководстве пользователя Simplicity Studio 5.
Кроме того, Gecko SDK можно установить вручную, загрузив или клонировав последнюю версию с GitHub. Видеть https://github.com/Sili-conLabs/gecko_sdk для получения более подробной информации.
Simplicity Studio по умолчанию устанавливает GSDK в:
- (Windows): C:\Пользователи\ \SimplecityStudio\SDK\gecko_sdk
- (MacOS): /Пользователи/ /SimplicityStudio/SDK/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. |
- Завернутые ключи, помеченные как «Неэкспортируемые», можно использовать, но нельзя viewредактируется или передается во время выполнения.
- Обернутые ключи, помеченные как «Exportable», могут использоваться или совместно использоваться во время выполнения, но остаются зашифрованными при хранении во флэш-памяти.
- Пользовательским приложениям никогда не потребуется взаимодействовать с большинством этих клавиш. Существующие API для управления ключами таблицы ключей ссылок или временными ключами по-прежнему доступны пользовательскому приложению и теперь направляются через компонент Zigbee Security Manager.
- Некоторые из этих ключей в будущем могут стать недоступными для экспорта в пользовательское приложение. Пользовательским приложениям рекомендуется не полагаться на экспорт ключей без крайней необходимости.
- Дополнительные сведения о функциях управления ключами безопасного хранилища см. в документе AN1271: безопасное хранилище ключей.
Советы по безопасности
Чтобы подписаться на советы по безопасности, войдите на клиентский портал Silicon Labs и выберите «Домашняя страница учетной записи». Щелкните ГЛАВНАЯ, чтобы перейти на домашнюю страницу портала, а затем щелкните плитку Управление уведомлениями. Убедитесь, что установлен флажок «Уведомления о программном обеспечении/рекомендациях по безопасности и уведомления об изменении продукта (PCN)» и что вы подписаны как минимум на свою платформу и протокол. Нажмите Сохранить, чтобы сохранить изменения.
Поддерживать
Клиенты Development Kit имеют право на обучение и техническую поддержку. Используйте кремниевые лаборатории Zigbee web страницу, где можно получить информацию обо всех продуктах и услугах Silicon Labs Zigbee, а также подписаться на поддержку продуктов.
Вы можете связаться со службой поддержки Silicon Laboratories по адресу http://www.silabs.com/support.
Студия Простоты
Доступ в один клик к MCU и беспроводным инструментам, документации, программному обеспечению, библиотекам исходного кода и многому другому. Доступно для Windows, Mac и Linux!
Отказ от ответственности
Silicon Labs намерена предоставлять клиентам самую последнюю, точную и подробную документацию по всем периферийным устройствам и модулям, доступным для системных и программных реализаторов, использующих или намеревающихся использовать продукты Silicon Labs. Данные по характеристикам, доступные модули и периферийные устройства, размеры памяти и адреса памяти относятся к каждому конкретному устройству, а «типичные» параметры могут различаться и различаются в разных приложениях. Приложение exampФайлы, описанные здесь, предназначены только для иллюстративных целей. Silicon Labs оставляет за собой право вносить изменения без дополнительного уведомления в информацию о продукте, технические характеристики и описания, приведенные здесь, и не дает гарантий относительно точности или полноты включенной информации. Без предварительного уведомления Silicon Labs может обновлять прошивку продукта в процессе производства по соображениям безопасности или надежности. Такие изменения не повлияют на технические характеристики или характеристики продукта. Silicon Labs не несет ответственности за последствия использования информации, представленной в этом документе. Этот документ не подразумевает и прямо не предоставляет какую-либо лицензию на проектирование или изготовление каких-либо интегральных схем. Продукты не предназначены и не разрешены для использования в каких-либо устройствах класса III FDA, приложениях, для которых требуется предварительное одобрение 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®, USBXpress®, Zentri, логотип Zentri и Zentri DMS, Z-Wave® и другие являются товарными знаками или зарегистрированными товарными знаками Silicon Labs. ARM, CORTEX, Cortex-M3 и THUMB являются товарными знаками или зарегистрированными товарными знаками ARM Holdings. Keil является зарегистрированным товарным знаком ARM Limited. Wi-Fi является зарегистрированным товарным знаком Wi-Fi Alliance. Все остальные продукты или бренды, упомянутые здесь, являются товарными знаками их соответствующих владельцев.
КОНТАКТ
- Силикон Лабораториз Инк.
- 400 Вест Сезар Чавес
- Остин, Техас 78701
- США
- www.silabs.com
Документы/Ресурсы
![]() |
SILICON LABS SDK 7.4.1.0 GA Программное обеспечение стека протоколов Zigbee [pdf] Руководство пользователя SDK 7.4.1.0 GA Программное обеспечение стека протоколов Zigbee, SDK 7.4.1.0 GA, Программное обеспечение стека протоколов Zigbee, Программное обеспечение стека протоколов, Программное обеспечение стека |