Обсуждение СС2640R2F BLE5 модуль

nikolz

Well-known member
Добрый день, Всем
BLE протокол все больше внедряется в умный дом и не только
много чипов выпускают китайцы.
Они дешевые, но одна проблема - китайцы под кучей ограничений прячут то, что позаимствовали у других.
----------------------
Есть решения от ведущих мировых разработчиков. У них проблема всего дона - это цена.
Но последнее время опять же китайцы делают модули на этих чипах и цена их уже вполне приемлемая.
-------------------
предлагаю обсудить чипы ведущего мирового разработчика фирмы Ti.
В данном случае чип CC2640R2F.
Нет проблем со средой разработки и документацией. Никто ничего не прячет.
http://www.ti.com/product/CC2640R2F
upload_2019-12-24_9-28-32.png
------------------------
Практическое знакомство с CC2640R2F
----------------------------
https://aliexpress.ru/item/4000298551081.html?spm=a2g0o.productlist.0.0.32d35a25EL0NNG&algo_pvid=11aa358b-6300-4212-ad7a-311d95c7fbff&algo_expid=11aa358b-6300-4212-ad7a-311d95c7fbff-19&btsid=87030f86-1a45-4914-ab12-732caf2a50d1&ws_ab_test=searchweb0_0,searchweb201602_8,searchweb201603_53
-------------------------------
https://aliexpress.ru/item/4000105975874.html?spm=a2g0o.productlist.0.0.32d35a25EL0NNG&algo_pvid=11aa358b-6300-4212-ad7a-311d95c7fbff&algo_expid=11aa358b-6300-4212-ad7a-311d95c7fbff-17&btsid=87030f86-1a45-4914-ab12-732caf2a50d1&ws_ab_test=searchweb0_0,searchweb201602_8,searchweb201603_53
-------------------------
Приветствуется любая информация и опыт.
 

nikolz

Well-known member
данный чип хорошо использовать в системах безопасности,
например для обнаружения протечек.
при этом ток потребления чипа в режиме сна составит 0.1uA ,
что в 200 раз меньше, чем у ESP8266
и 100 раз меньше, чем у TLSR8266
и даже в 3 раза меньше, чем у NRF52840.
 

pvvx

Активный участник сообщества
данный чип хорошо использовать в системах безопасности,
например для обнаружения протечек.
при этом ток потребления чипа в режиме сна составит 0.1uA ,
что в 200 раз меньше, чем у ESP8266
и 100 раз меньше, чем у TLSR8266
и даже в 3 раза меньше, чем у NRF52840.
Замеры в студию.
У TLSR8266 по спецификации до 0.7 uA для алгоритмов датчика протечки в диапазоне -40℃~+85℃ (TLSR8266ET32) и -40℃~+125℃ (TLSR8266AT32). Поверено - ток значительно менее указанного при комнатной температуре.
У PHY62x6 по спецификации до 0.7 uA для алгоритмов датчика протечки в диапазоне -40 ℃~125℃. Поверено - ток значительно менее указанного при комнатной температуре.
Опыт гласит, что теперь на али все указанные модули имеют китайский чип со спиленной маркировкой (все JDY с чипом якобы от Ti или nRF) или перемаркированы - тогда дороже :) Перепрошить не удастся. А продавец будет всё равно прав - продан модуль (а не чип) с программой и она работает как значится для JDY-xx.

Берите тут CC2640R2F - наличие на складах
 

pvvx

Активный участник сообщества
А теперь почему данный чип никому не нужен:
1. Кроме как датчик протечки – вечный сон в deep-sleep и при активировании пина длительное просыпание с оповещением в эфир, на данном SoC ничего не сделать.
Причины сидят в следующем:
upload_2019-12-26_7-55-5.png
upload_2019-12-26_7-56-47.png
Т.е. забудьте что CPU может спать между замерами у типовых датчиков или чередовать частый маяк с режимом sleep...
Как итог - в реальном приложении будет жрать в 100..1000 раз больше, чем какой китайский BLE чип (1..1.5 us просыпания, из deep-sleep 0.5..1 ms, что примерно равно).

2. Проприетарный закрытый стек и прочее на втором ядре. Это чтобы вы не смогли сделать что вам надо, без Ti и не разрешенное Ti :p
 

nikolz

Well-known member
А теперь почему данный чип никому не нужен:
1. Кроме как датчик протечки – вечный сон в deep-sleep и при активировании пина длительное просыпание с оповещением в эфир, на данном SoC ничего не сделать.
Причины сидят в следующем:
Посмотреть вложение 8428
Посмотреть вложение 8429
Т.е. забудьте что CPU может спать между замерами у типовых датчиков или чередовать частый маяк с режимом sleep...
Как итог - в реальном приложении будет жрать в 100..1000 раз больше, чем какой китайский BLE чип (1..1.5 us просыпания, из deep-sleep 0.5..1 ms, что примерно равно).

2. Проприетарный закрытый стек и прочее на втором ядре. Это чтобы вы не смогли сделать что вам надо, без Ti и не разрешенное Ti :p
есть еще один момент
это реализация голосового интерфейса.
Я например не нашел ни у TLSR ни у NRF примеров решения данной задачи, а у CC2640 такое решение есть
BLE-Stack: Bidirectional Audio Demo (Central/Peripheral) Двухсторонняя передача голоса через BLE-соединение. Частота сэмплирования 16 кГц, 16 бит. Компрессия 4:1 IMA-ADPCM. Пропускная способность 66,67 кбит/с.
-----------------
Какая альтернатива?
 

nikolz

Well-known member
pvvx,
относительно токов TLSR
на сайте компании указано не 0.7 а 1.7 :
upload_2019-12-26_11-0-20.png
как Вы говорите в таких случаях?
 

pvvx

Активный участник сообщества
pvvx,
относительно токов TLSR
на сайте компании указано не 0.7 а 1.7 :
Посмотреть вложение 8430
как Вы говорите в таких случаях?
Это указано обобщение для перечисленных чипов по худшему варианту и условиям. Смотрите конкретику на чип (в PDF или даташитах по SDK - там конкретнее в каких программных опциях...).
На сайте Ti я нашел, что указано потребление в 10A - как Вы говорите в таких случаях? :) :)
 

pvvx

Активный участник сообщества
есть еще один момент
это реализация голосового интерфейса.
Я например не нашел ни у TLSR ни у NRF примеров решения данной задачи, а у CC2640 такое решение есть
BLE-Stack: Bidirectional Audio Demo (Central/Peripheral) Двухсторонняя передача голоса через BLE-соединение. Частота сэмплирования 16 кГц, 16 бит. Компрессия 4:1 IMA-ADPCM. Пропускная способность 66,67 кбит/с.
-----------------
Какая альтернатива?
В SDK того-же Telink есть примеры передачи звука для "Ок google" пульта :) и прием на чип с дровами к USB (работает стандартный USB драйвер ввода звука со стороны windows - надо только подрубить чип-приемник).
Применено "Частота сэмплирования 16 кГц, 16 бит." - аналогичная фича и сжатие - именно для USB.
У PHY так-же, но чипы без USB - полное описание по звуку в API для SDK.
Прием ведется от аналогового или цифрового микрофона. Буферизация автоматическая (аппаратная).
Частота семплирования у всех ADC намного выше, но такой поток девать некуда...
 

nikolz

Well-known member
Это указано обобщение для перечисленных чипов по худшему варианту и условиям. Смотрите конкретику на чип (в PDF или даташитах по SDK - там конкретнее в каких программных опциях...).
На сайте Ti я нашел, что указано потребление в 10A - как Вы говорите в таких случаях? :) :)
не возражаю,
пусть будет в 7 раз.
Для устройств безопасности, типа протечки воды, газа, пожар , требуется фактически одноразовая работа.
При этом важно не потребление в режиме активности, а потребление в режиме сна.
Для этих устройств данный чип вне конкуренции .
 

nikolz

Well-known member
В SDK того-же Telink есть примеры передачи звука для "Ок google" пульта :) и прием на чип с дровами к USB (работает стандартный USB драйвер ввода звука со стороны windows - надо только подрубить чип-приемник).
Применено "Частота сэмплирования 16 кГц, 16 бит." - аналогичная фича и сжатие - именно для USB.
У PHY так-же, но чипы без USB - полное описание по звуку в API для SDK.
Частота семплирования у всех ADC намного выше, но такой поток девать некуда...
меня интересует возможность автономного обмена голосовыми сообщениями со смартфоном либо создание автономного говорящего устройства.
Есть варианты?
 

pvvx

Активный участник сообщества
не возражаю,
пусть будет в 7 раз.
Для устройств безопасности, типа протечки воды, газа, пожар , требуется фактически одноразовая работа.
При этом важно не потребление в режиме активности, а потребление в режиме сна.
Для этих устройств данный чип вне конкуренции .
Не уверен - у него низкий TX. На такие расстояния, что он обеспечивает - Проводами проще :p
 

pvvx

Активный участник сообщества
меня интересует возможность автономного обмена голосовыми сообщениями со смартфоном либо создание автономного говорящего устройства.
Есть варианты?
Это проблемы смартфона. Берете и изучаете какое SDK к смартам и принимаете BLE поток...
 

nikolz

Well-known member
Не уверен - у него низкий TX. На такие расстояния, что он обеспечивает - Проводами проще :p
я не настаиваю что это панацея от всех бед.
Но во многих случаях протянуть провода практически невозможно либо накладно
вот тогда и ставим с автономным питанием и сменой батарейки через лет надцать
 

pvvx

Активный участник сообщества
Чипы TLSR и PHY я проверил (и на питание). Дом железобетонный монолит. WiFi роутера типа ASUS RTU-56U имеет одинаковую доступность по дому. Где он заканчивает прием на смартах, там и и заканчивается связь с упомянутыми чипами BLE.
проблема в том что ни у TLSR ни NRF нет соотвествующих профилей в стеке BLE для работы с голосом.
или есть?
Всё есть - каждый застолбил своё... Проприетарщина... Чтобы чужое не работало. Берите профили Xiaomi - их дети чаще покупают :)

И где реальный замер тока у CC2640, когда он ничего не помнит между засыпаниями (его deep-sleep)?
 

nikolz

Well-known member
вот еще достоинства данного чипа:
цитата:
"Во-первых, это три (три, Карл!) процессорных ядра. Основное — Cortex-M3 на 48 МГц, при его работе суммарное энергопотребление будет около 2,5 мА в отсутствие активности по радио. Оно, в общем, такое же, как у всех прочих MCU на ARM.
Второе — это Cortex-M0 с проприетарной прошивкой (пользователей в неё напрямую не пускают), обслуживающий только радио. Его самостоятельность позволяет делать забавные вещи — например, спящий роутер, в котором в обычном режиме работает радио, а основное ядро просыпается только если это радио увидело в эфире преамбулу. Потребление в таком сне — 550 мкА, не очень мало, но в разы меньше, чем у полностью активного чипа.
Третье ядро — специализированный 16-битный Sensor Controller Hub, нечто с неафишируемой архитектурой и генератором прошивок. Это микропотребляющее ядро, отвечающее за значительную часть периферии, включая АЦП — можно, например, ловить различные события на аналоговых входах и при их наступлении будить основное ядро, а потом и радио, а потом и весь остальной мир. SC также умеет работать с сенсорными кнопками, таймерами, I²C, SPI и UART (sic!). Всё это — при выключенном основном ядре и с потреблением микроамперного масштаба.
Наконец, у всех чипов линейки есть встроенный DC/DC (sic!). Фокус в том, что радиочасть чипов питается пониженным напряжением — и в прежние годы приходилось либо ставить внешний DC/DC, либо мириться с потерями на встроенном LDO. CC13xx/CC26xx позволяют выбирать один из трёх вариантов — полностью внешнее питание, встроенный DC/DC или встроенный LDO. В случае с DC/DC внешних элементов — один дроссель.
Наконец, чтобы сделать всем совсем хорошо, в CC13xx и CC26xx по сравнению с прошлым поколением перепилили радиочасть — и энергопотребление на приёме и передаче (т.е. при активном радиоканале) уменьшилось в пару раз."
 

pvvx

Активный участник сообщества
вот еще достоинства данного чипа:
цитата:
"Во-первых, это три (три, Карл!) процессорных ядра. Основное — Cortex-M3 на 48 МГц, при его работе суммарное энергопотребление будет около 2,5 мА в отсутствие активности по радио. Оно, в общем, такое же, как у всех прочих MCU на ARM.
Второе — это Cortex-M0 с проприетарной прошивкой (пользователей в неё напрямую не пускают), обслуживающий только радио. Его самостоятельность позволяет делать забавные вещи — например, спящий роутер, в котором в обычном режиме работает радио, а основное ядро просыпается только если это радио увидело в эфире преамбулу. Потребление в таком сне — 550 мкА, не очень мало, но в разы меньше, чем у полностью активного чипа.
Третье ядро — специализированный 16-битный Sensor Controller Hub, нечто с неафишируемой архитектурой и генератором прошивок. Это микропотребляющее ядро, отвечающее за значительную часть периферии, включая АЦП — можно, например, ловить различные события на аналоговых входах и при их наступлении будить основное ядро, а потом и радио, а потом и весь остальной мир. SC также умеет работать с сенсорными кнопками, таймерами, I²C, SPI и UART (sic!). Всё это — при выключенном основном ядре и с потреблением микроамперного масштаба.
Наконец, у всех чипов линейки есть встроенный DC/DC (sic!). Фокус в том, что радиочасть чипов питается пониженным напряжением — и в прежние годы приходилось либо ставить внешний DC/DC, либо мириться с потерями на встроенном LDO. CC13xx/CC26xx позволяют выбирать один из трёх вариантов — полностью внешнее питание, встроенный DC/DC или встроенный LDO. В случае с DC/DC внешних элементов — один дроссель.
Наконец, чтобы сделать всем совсем хорошо, в CC13xx и CC26xx по сравнению с прошлым поколением перепилили радиочасть — и энергопотребление на приёме и передаче (т.е. при активном радиоканале) уменьшилось в пару раз."
Это всё относится к PHY чипам. Понижаете частоту одному ядру M0 и получаете те-же результаты. M3 жрет больше uА/МГц при прочих равных задачах по сравнению с M0. Пора бы уже знать.
Вот только у PHY 130 килобайт RAM... Для lowpower (от утечек) в sleep отключаются раздельными банками.
 

nikolz

Well-known member
Это всё относится к PHY чипам. Понижаете частоту одному ядру M0 и получаете те-же результаты. M3 жрет больше uА/МГц при прочих равных задачах по сравнению с M0. Пора бы уже знать.
Вот только у PHY 130 килобайт RAM... Для lowpower (от утечек) в sleep отключаются раздельными банками.
Самокритика - дело полезное.
Вот Вам информация к размышлению:
Берем NRF
чип 51822 - ядро M0 (это прототип PHY)
читаем документацию потребление 275 uA/MHz
чип 52832 - ядро М4F
читаем документацию потребление 58 uA/MHz
чип 52840 - ядро М4F
читаем документацию потребление 52 uA/MHz
----------------------------
"Рядовой - Учите матчасть"
 

pvvx

Активный участник сообщества
Если рассмотреть задачи для BLE чипа, то в них:

Во первых – не нужна Float. Ни один профиль не содержит данные в float.

Во вторых – не требуется RAM более или менее чем необходимо для фильтрации данных от типовых датчиков. Оптимум наверно 64 килобайта под буфер для фильтра и него незя снимать питание в sleep. Остальной хлам в RAM тоже занимает немалое место. Но его можно “забывать” при каждом sleep. Объем RAM необходимой для решения задачи самой коммуникации чипа с внешним миром напрямую зависит от встроенных контроллеров. У STM, nRF, Ti, … контроллеры убогие и требуют DMA с буферами и жирными структурами описания уровня HAL в их SDK. Вот туда и уходит ВСЯ RAM и ничего вам не останется для решения примитивной задачи расчетов с данными от датчиков :p Ну и какой нафиг float в 1 кило оставшейся RAM у CC2640? Очередная кривочиповая разработка.
 

pvvx

Активный участник сообщества
Самокритика - дело полезное.
Вот Вам информация к размышлению:
Берем NRF
чип 51822 - ядро M0 (это прототип PHY)
читаем документацию потребление 275 uA/MHz
чип 52832 - ядро М4F
читаем документацию потребление 58 uA/MHz
чип 52840 - ядро М4F
читаем документацию потребление 52 uA/MHz
----------------------------
"Рядовой - Учите матчасть"
Поразмышляйте что такое технология в nm в производстве кристаллов чипов... :p
У вас в одном сравнении мкм и нм :) :)
Что с вас взять то - вы всегда неправы и ещё вешаете это на других.
 
Сверху Снизу