Pull to refresh

Comments 19

Заглавная картинка вводит в когнитивный диссонанс, статья про Bluetooth, а на картинке Zigbee.
Добрый день, да, LifeControl на Zigbee, но хаб и датчик растения – BLE. Сделал неуместное обобщение, поменяю картинку, чтобы никого не вводить в заблуждение.

Спасибо за ваш труд по переводу книги) В этой книге не рассказывается про два алгоритма выбора каналов в BLE. Если будет «свободное время», то было бы интересно почитать и разобраться в этих алгоритмах. Судя по всему, вы плотно работаете со стандартом Bluetooth и различными его плюшками, протоколами и тд и тп, и во многих вещах разбираетесь )))))

А можете посоветовать какой-нибудь микроконтроллер с встроенным BLE? Желательно с прицелом на IoT

Большой популярностью пользуются нордики различных серий. Мне нравится Dialog Semi: очень разнообразная линейка. Например, у DA14695 на борту свежий BLE, cortex M33 для приложений, специальное ядро с низким потреблением для опроса сенсоров ( чтобы основное не будить лишний раз), зарядное для батарей, несколько конфигурируемый линий питания, контроллер дисплея, etc etc и все занедорого. Правда корпус не очень дружелюбный.

А то, что DA все однократно программируемые? Это многих отпугивает. Как оно в разработке?

Не все, мой текущий, например, выполняет код из флешки, подключённой по QSPI. В разработке — вполне норм. Для меня на данный момент образец боли это CYW54907 от Cypress

Они все могут выполнять код из внешней SPI flash + могут иметь немного встроенной. Но, как я понял, загрузчик является OTP. Содержимое внешней flash является просто дампом или зашифровано?
Можно зашифровать, включив secure boot. OTP в первую очередь для хранения параметров. Тут 0xAF может рассказать, он глубоко погружался в тему

Загрузчик у них хранится вообще в ROM, которая зашита диалогом. Стартует он по хард ресету и ищет скрипт конфигурации, который может находиться либо в otp, либо во flash, либо вообще отсутствовать. Соответственно, единственная точка управления загрузкой — этот скрипт. В нём могут храниться пары регистр-значение, всякие калибровочные значения, а так же адрес вторичного загрузчика во флэше. Всё это в определённом формате.


Некоторые области OTP также используются для хранения ключей расшифровки прошивки налету, ключей проверки подписи загрузочного образа и пользовательских ключей. Доступ к этим областям можно ограничить специальным каналом дма.


Также есть пользовательская область OTP, её можно использовать как угодно, например для хранение кода самописного загрузчика.


Таким образом, otp может являться только вторичным загрузчиком.


Что касается шифрования образа — это делается утилитами, предоставляемого диалогом SDK. Можно и без них, но я лично так не делал. Затем зашифрованный образ зашивается во флэш и делается соответствующая (неотменяемая) запись в otp, разрешающая secure boot. После чего образ проверяется ROM загрузчиком, после каждого ребута. И если что-то не сошлось мы получаем кирпич, вместо контроллера.


Также на продакшн можно отключить дебаггер, завершить скрипт конфигурации и запретить доступ к отп каким либо иным способом, кроме защищённого канала DMA.
Тогда, в отличие от первого случая, будет абсолютный кирпич)

можете посоветовать какой-нибудь микроконтроллер с встроенным BLE?

cc2642r1f, cc2652r1f ,nRF5340


Чем BLE Pairing отличается от BLE Bonding?

При пейринге ключи шифрования не сохраняются. Отключили девайс - при следующем подключении пейрим снова.

При бондинге ключи сохраняются, соответственно не нужно повторять процедуру пейринга каждый раз.

Получается для работы bonding(га) нужна энергонезависимая память. Так?

Сколько бит ключи шифрования в BLE?

Получается для работы bonding(га) нужна энергонезависимая память. Так?

Необязательно, но желательно. Видел реализации, в которых ключи хранились в RAM. Смысла в них немного, но они имеют место быть. Все зависит от разработчиков конкретного устройства.

Сколько бит ключи шифрования в BLE?

128

Нативного нет, но реализаций море. Из готового и широко известного можно попробовать Nordic Uart Service

Ртось не нужна. Пример - софтдевайс от нордика.
BLE-стек обычно распространяется в виде блоба.

Sign up to leave a comment.

Articles

Change theme settings