• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

BLE модуль JDY-10 на чипе TLSR8266

pvvx

Активный участник сообщества
BLE модуль JDY-10 на чипе TLSR8266
JDY-10_1.jpg
JDY-10_2.jpg
Использует AT команды.
В прошивке UART-V2.5 находятся такие команды:
AT+DEFAULT
AT+RESET
AT+PWMPU
AT+NAME
AT+SVRUUID
AT+MAC
AT+STARTEN
AT+CHRUUID
AT+NEIN
AT+PWMEND
AT+VER
AT+ADVINT
AT+ADVEN
AT+POWE
AT+PWMFR
AT+BAUD
AT+SLEEP
AT+CLSS
AT+DISC
AT+PIO

Приложена FullFlash прошивки (512 килобайт):
 

Вложения

pvvx

Активный участник сообщества
На этом чипе, на али, есть масса готовых устройств. Фитнес-Часы, всякие RGB лампы и контроллеры светодиодных лент...
Пример:
hackaday.io#project#168376-jackyled-ble-rgb-led-strip-controller.gif
И не понятно что там хакают на JACKYLED BLE RGB LED Strip Controller :)
Аналогично не ясно, зачем к данному BLE SoC прикручивать ещё какой-то Atmega? Своих мозгов у TLSR8266 хватает и так, Telink SDK есть, программаторы есть, ...
michalmonday/supremeDuck - аналогичный пример есть и в Telink SDK :rolleyes:
Вот ещё тупейшие проекты с 90% лишних деталей и данным модулем:
Метеостанция - Конструктор домашней автоматизации и умной квартиры - почему датчики не подключить сразу к модулю? :confused:
 

pvvx

Активный участник сообщества
При опции [inline]AT+ADVINT6[/inline] интервал составляет 3 секунды ровно и среднее потребление модуля в [inline]AT+SLEEP[/inline] 0.097 мА = 97 мкА:
upload_2019-11-21_19-27-48.png

На Android терминалки с UUID данной AT прошивки работают...
 

pvvx

Активный участник сообщества
Как поменять прошивку в модуле JDY-10.
1. Соединяем DM(PB5) и DP(PB4) пины к разъему USB.
2. Скачиваем BDT утилиту: Burning and Debugging Tool [Telink wiki]
3. Включаем USB и питание модуля. В Windows 10 появится USB устройство: "Поддержка USB принтера".
4. Запускаем BDT утилиту и выставляем в ней:
upload_2019-11-22_13-57-47.png

5. Открываем файл прошивки (для примера JDY-10-V2.5.bin):
upload_2019-11-22_13-58-17.png

6. Записываем прошивку в модуль:
upload_2019-11-22_13-59-18.png

* Приложена прошивка JDY-10-V2.5:
 

Вложения

pvvx

Активный участник сообщества
Для подключения только по UART к модулю JDY-10 на али есть такие переходники:
JDY-10-RS.jpg
 

pvvx

Активный участник сообщества
При опции [inline]AT+ADVINT6[/inline] интервал составляет 3 секунды ровно и среднее потребление модуля в [inline]AT+SLEEP[/inline] 0.097 мА = 97 мкА:
Попробовал сам собрать в JDY-10 из кусков SDK Telink программу по типу передачи маячка Eddystone с с передачей замера питания и прочими сервисами типа SSP.
При интервале маячка в 3 сек среднее потребление вышло 41 мкА (+-100 nA). Не ясно почему в AT получается 97 мкА при том-же интервале...
В промежутке между передачей (sleep c таймером) - около 12..15 мкА.
 

pvvx

Активный участник сообщества
Более точно не измерить, т.к. шумит. Судить можно только при большой выборке и осреднении... В данных диапазонах включение электролита в питание увеличивает шум в несколько раз.
 

pvvx

Активный участник сообщества
Есть уверенность, что это не предел. Причины:
  1. Нет четкого описания по процедурам управления питанием в режимах sleep в документации к SDK Telink.
  2. Ещё не ‘реверсил’ функции управления питанием. Не смотрел даже выключается ли там в sleep встроенная SPI Flash…
  3. Прошивка не оптимизировалась по скорости исполнения и порядка процедур для активного периода работы в момент просыпания для приема/передачи маяка и опроса на соединение...
 

pvvx

Активный участник сообщества
Документация по самому чипу не блещет описанием потребления в разных модификациях sleep/sleep при разных активирующих источниках типа таймера, пинов, UART, USB и т.д.
Есть только общие сведения при неизвестно каких опциях, напряжении питания и температуре:
 Suspend mode current: 20uA (IO wakeup)/22uA (Timer wakeup)
 Deep sleep mode current: 0.7uA

Сторонних замеров так-же пока нет.
Но уже имеющегося достаточно, чтобы показать несостоятельность и непрактичность BLE к примеру на SoC ESP32…

Следующий вопрос – как сделать питание для BLE устройства от АКБ в 12В с КПД хотя-бы в 70%?
 

pvvx

Активный участник сообщества
Да, и есть проблемс с ADC у TLSR8266 для определения напряжения питания. Встроенного делителя и/или коммутатора на VCC у него нет (у TLSR8269 есть и то и другое для анализа питания чипа и внешний вход с подключаемым делителем и т.д.).
Опорное ref ADC 1.3В (что тоже не точно как выяснилось при тестах ADC - скорее всего 1.25).
Входной ток (утечка) ADC большой. Делитель для такого тока с резисторами жрет много - больше чем весь маяк :)
Метод включения пина на OUT "1" или встроенной притяжки к VCC и замера этого её ещё не проверял... Питание внешних датчиков прямо от пина прекрасно работают :)
 

pvvx

Активный участник сообщества
USB Sniffer на TLSR8266 (JDY-10)
Прикидывается "CC2540 USB dongle".
upload_2019-11-28_3-17-35.png
Работает почему-то только на Win7 (запустил в VirtualWin7 на Win10).

upload_2019-11-28_3-14-32.png
Инсталлятор SmartRF Packet Sniffer
Прошивка для модуля с TLSR8266 (12MHz кварц!):
 

Вложения

pvvx

Активный участник сообщества
Запустилось и на Win10x64. Причина - древняя прога не работает на контроллерах USB3+ :( Подавай только USB2.0.
 

pvvx

Активный участник сообщества
Точнее помогло это:
upload_2019-11-28_4-9-26.png
Иначе программа "Packet Sniffer" только видела USB устройство, но работать с ним отказывалась в Win10x64. А с этой опцией работает (не понятно почему) и при втыкании в любой контроллер USB на мамке...
 

pvvx

Активный участник сообщества
Один китайский док на JDY-10 гласит (с их прошивкой “AT”):
Средний ток:
  • Режим пробуждения – 90 uA
  • Режим приостановки - 14 мкА
Другой док на JDY-10:
Средний электрический ток:
  • Режим пробуждения – 90 uA
  • Режим приостановки - 14 мкА
  • Режим глубокого сна – 1 uA
Ничего подобного в реальности не наблюдается.

В собственных прошивках с использованием процедур из Telink SDK при активности пробуждения по GPIO модуль потребляет чуть более 2 uA.

Что не согласуется ни с чем. К примеру док от Telink на сам чип TLSR8266:
upload_2019-12-12_11-57-31.png

Это всё подтверждает, что без нормального power-profiler выяснить реальное потребление своей программы невозможно. Вся документация врет.
 

pvvx

Активный участник сообщества
"Специалист" измеряет потребление модуля RYB080I (TI CC2640R2F, от 500 рупь):
Даже сигнальные провода к модулю не отключил. :) :)
Любой BLE чип без проблем работает от подключенных внешних TX/RX и подобному...
К примеру TLSR работает от подключенного сигнала SWS от программатора и без всяких питаний :)
Да и потребление импульсное и такой тестер не годится.
Горе специалисты в youtube....
 

pvvx

Активный участник сообщества
Сегодня влажность меньше (а может модуль подсох - долго не трогал его) и среднее при "сне до кнопки" 1.78 uA.
6-ти значный тестер подтверждает, т.к. модуль спит и не дергается.

На INA226 измерение при шкале 8 мА 16 бит (шунт 100 Ом) – аналогично –> 1.78 uA при усреднении:
upload_2019-12-12_12-49-48.png
Показана разница отключения провода питания после 10 секунды.
Ток модуля во время сна представляет из себя шум (утечки кристалла, разъемы, кондеры, сам стабилизатор питания). Среднее и есть 1.78 uA, если не дышать на модуль. :)
Если подуть на модуль, то средний ток из-за повышения температуры и влажности (проводники платы и пайки) поднимается за 5 uA запросто...
 
Сверху Снизу