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

BLE SoC PHY6202

pvvx

Активный участник сообщества
Средний ток за цикл ~22.5 мкА при 3.3В.
1706111197491.png
Помойка от Tuya по набору компонентов - средний CR2032 вытянет не более полугода, т.к. и рабочее напряжение компонентов ограничено до 2.5В.
Потом эту батарейку переставить в нормальный термометр (Xiaomi c впаянным кондером или в аналог THB2) и она отработает ещё от пол года.
 

pvvx

Активный участник сообщества
В отрицательной температуре TH-05 неработоспособен из-за падения напряжения у CR2032 от температуры и из-за экрана - ничего не будет видно.
Tuya - тут более нечего и сказать :)
 

pvvx

Активный участник сообщества
Sleep:
1706113637516.png
1706113652727.png
Разница в Average от некратности циклам (малое время измерения).
nRF Power Profiler II не умеет стартовать по триггеру... и его выбросы не дают точных замеров в Average.
 

pvvx

Активный участник сообщества
1706114009034.png
15 mA 🤪
1706114132864.png
Выброс при просыпании SoC и падения до 1 мА при приеме, после передачи :) :)
Это nRF :eek:
 

pvvx

Активный участник сообщества
Кто покупал такой? Что в нем внутри?
1706124331737.png
Тоже называется TH05, но экран другой.
Есть ещё ZTH05 - отличие только в прошивке?
(Всё это и подобное уже заказал чтобы глянуть и выкинуть... Но пока дойдут...
уже кто-то нашел
HT-05 c CHT8305 )
 

cool2000

Member
Тоже называется TH05, но экран другой.
Ага, есть такой.
Похоже, это THB2 с экраном. Сенсор CHT8310, контроллер экрана GNV1792S, нет дросселя.
Если нужны фото пп, завтра пришлю.

Доигрался с прошиванием THB2 и получил полукирпич.
Теперь невозможно войти в режим прошивки, и вместо cmd>>: выводит fct>>:.
По информации из Гидры виною служит записанное значение 00000000 по адресу 11002800.
Как оно там оказалось непонятно и как его теперь стереть, тоже непонятно.
 

pvvx

Активный участник сообщества
Доигрался с прошиванием THB2 и получил полукирпич.
Теперь невозможно войти в режим прошивки, и вместо cmd>>: выводит fct>>:.
Это решается.
Поиграл кнопками в PhyPlusKit и всё прошло :) какими - не помню, надо глядеть..
Наверно дать команду "reset" или "quit" - что-то подобное...

Опишите какая помогла - вставлю в программу программатора, если вылезет вместо cmd.
 

pvvx

Активный участник сообщества
Может быть лучше - у GNV1792S есть 3 штуки "power save mode".
На BL55028 команды "power save mode" в доке нет. Но пробовал - не работает.
 

pvvx

Активный участник сообщества
Доигрался с прошиванием THB2 и получил полукирпич.
Теперь невозможно войти в режим прошивки, и вместо cmd>>: выводит fct>>:.
По информации из Гидры виною служит записанное значение 00000000 по адресу 11002800.
Как оно там оказалось непонятно и как его теперь стереть, тоже непонятно.
Работает команда "er512".
 

cool2000

Member
Ещё в режиме fct есть недокументированная команда efkey, видимо что-то связанное с secure boot.
 

pvvx

Активный участник сообщества
@cool2000 - Встраиваю запись истории. Но беда с передачей. Не найти функции типа callback или другой, по которой возможно определить - передача Notify будет ещё возможна или нет (сводободны ресурсы?), предыдущие данные уже улетели или нет(?). Сейчас путем тупого запихивания блоков истории в Notify до ошибки выходит запихать всего 11 блоков.
Лог на приемной стороне:
22:54:05: Ответ на команду (35): 01000a040000b908b30fe10c
22:54:05: Ответ на команду (35): 0200f6030000ba08b30fe10c
22:54:05: Ответ на команду (35): 0300e2030000bb08b40fe10c
22:54:05: Ответ на команду (35): 0400ce030000bd08b50fe10c
22:54:05: Ответ на команду (35): 0500ba030000be08b70fe20c
22:54:05: Ответ на команду (35): 0600a6030000be08ba0fe20c
22:54:05: Ответ на команду (35): 070091030000be08c20fe10c
22:54:05: Ответ на команду (35): 08007d030000be08ba0fe00c
22:54:05: Ответ на команду (35): 090069030000bf08b30fe00c
22:54:05: Ответ на команду (35): 0a0055030000bf08b00fe10c
22:54:05: Ответ на команду (35): 0b0041030000c008b30fe20c

После 11 штук и HCI_bm_alloc() у Notify() переполняется.

А надо как-то знать, что пока не надо выуживать новый замер из истории в Flash, т.к. буфера Notify() уже забиты. И надо что-бы кто-то вызвал следующую итерацию, когда появится пустота в HCI_bm_alloc(). Иначе скорость передачи будет плачевная.
1706215525258.png
Вот в первом активном цикле данной пачки большинство и передаются, плевав на MTU и прочие. Т.е. как надо.
Далее уже идут согласования... Интервал соединения 30 мс, Latency 29 - это если ничего передавать, то сервер может не выходить на связь до (29+1) интервалов, но клиент всё равно должен ожидать приема в каждое событие интервала соединения со включением окна приема (т.е. каждые 30 мс без пропусков).
Если не забивать буфер у Notify под завязку, то скорость упадет до менее 1 пакета в интервал соединения.
А глубина памяти замеров на текущих прошивках - 30675 records.
На BT4.0 это будет более 30675*0.03 = 920.25 секунд. А можно выжать на 1M PHY BT4.2 к 1 минуте...
 

cool2000

Member
И надо что-бы кто-то вызвал следующую итерацию, когда появится пустота в HCI_bm_alloc().
Посмотрите код функции llProcessTxData0. Кажется, это то, что нужно. Она после обработки пакета вызывает HCI_NumOfCompletedPacketsEvent, который генерирует HCI_NUM_OF_COMPLETED_PACKETS_EVENT_CODE. И ещё есть переменные:
0x1fff091d D numComplPkts
0x1fff091e D numComplPktsLimit
 

cool2000

Member
После добавления TH-05, THB2(CHT8310) перестал корректно опрашиваться сенсор. Вместо значений температуры и влажности передаются 0. -DDEVICE=DEVICE_THB2 стоит. Пробовал обе версии с OTA и без.
 

pvvx

Активный участник сообщества
Я тестовую кашу уже кинул на гит. Но она не работоспособная, а для того, чтобы указать названия функций....
 

pvvx

Активный участник сообщества
После добавления TH-05, THB2(CHT8310) перестал корректно опрашиваться сенсор. Вместо значений температуры и влажности передаются 0. -DDEVICE=DEVICE_THB2 стоит. Пробовал обе версии с OTA и без.
Счас погляжу. Слишком много было добавлено....
Сначала надо перекинуть всё, что уже есть в Xiaomi термометрах, а потом всё скопом отладить :)
 

pvvx

Активный участник сообщества
Путаница с MID в инициализации сенсоров CHT.
01:22:56: Dev serial # C86413-59598215-00
Младший и старший байты в ID... и номер 8215... Путаница из-за переделки на универсальный ко всем пока известным датчикам и из-за неверных define...
Лучше нарисуйте конфигуратор настроек в HTML...
 
Сверху Снизу