TL;DR: Да, можно программно изменить датчик для работы в сети Zigbee, достаточно по воздуху перезаписать прошивку
Многим пользователям умного дома известен квадратный датчик температуры и влажности от Xiaomi LYWSD03MMC. Его очевидные плюсы — это LCD экран, подключение к системе умного дома MiHome и конечно же цена. Его без преувеличения можно назвать если не самым, то точно одним из самых дешевых "умных" датчиков, которые имеют интерфесы для подключения к умному дому. В данном случае это популярный bluetooth, который позволяет подключиться к датчику со смартфона и увидеть показания. Поэтому он завоевал своё место в сердцах строителей умных домов как дешевое и надёжное беспроводное решение.
Однако, датчик помимо своих достоинств не был лишён и недостатков. Нерегулярные отправки данных в эфир, требование ключа для расшифровки, а также сложности в подключении к открытым системам управления умным домом, таким как HomeAssistant, OpenHab, и т.д. Возможно эти причины привели к созданию пользовательской прошивки https://github.com/atc1441/ATC_MiThermometer/, и затем её доработаной версии https://github.com/pvvx/ATC_MiThermometer/ которая существенно расширяла исходные возможности, такие как отправка нешифрованных пакетов в сеть, что позволяло подключать датчик без дополнительных усилий, настройка регулярности отправки данных в эфир, различные другие регулировки. Это ещё больше повысило популярность данного датчика.
Но у bluetooth на сегодняшний день есть достаточно неприятные ограничения в использовании в открытых системах умного дома. Датчики и управляемые устройства даже в рамках протокола bluetooth целиком ограничены экосистемой отдельного производителя. Если вы купили шлюз Xiaomi, вы не сможете подключить к нему датчики Tuya. Чайник Redmond не будет работать ни с чем, кроме своего родного шлюза. Или же как вариант использовать вместо шлюза смартфон с десятком приложений - по одному на каждый бренд - и ни о какой интеграции в единую систему речи уже не может идти. (Тут я могу порекламировать мою утилиту ble2mqtt для работы с некоторыми устройствами разных производителей, в т.ч. требующих подключения, и управлением по MQTT. Но в нём список поддерживаемых устройств ограничен и каждое новое устройство - это новое изобретение вендора). Частично эта проблема решается отдельными интеграциями для каждого отдельного бренда в Home Assistant, но ситуация далека от идеала.
Тут на помощь может придти сеть ZigBee, которая стандартизует не только физический уровень взаимодействия, но и работу всей сети целиком. А также стандартизует атрибуты устройств так, что датчик протечки любого производителя на уровне сети выглядит одинаково. (Тут надо сделать замечание, что ряд производителей отступает от этого правила, но это всё ещё не мешает держать и управлять всеми zigbee устройствами в одной сети с помощью централизованного механизма). Для управления сетью обычно используется отличный проект zigbee2mqtt или же встроенные в умный дом системы управления. Например, в Home Assistant есть возможность использовать как встроенный компонент Zigbee Home Automation , так и выше упомянутый zigbee2mqtt или HOMEd Zigbee с помощью компонента MQTT.
Как же подружить bluetooth датчик из заголовка статьи с зигби сетью? Оказалось, что производитель чипов Telink предоставляет для своих изделий SDK под ряд популярных протоколов. Bluetooth, Bluetooth Mesh, Telink Mesh (не слишком популярный), а также Zigbee. Это значит, что микроконтроллер поддерживает работу с ZigBee, осталось только его научить. Сказано-сделано. Результатом проведённой работы стал репозиторий https://github.com/devbis/z03mmc/ где лежит исходный код, бинарные сборки в релизах, а также инструкция по прошивке. Поддерживается как конвертация по воздуху используя наработки проекта atc1441/pvvx, так и с помощью проводов и UART-USB адаптера, также с помощью скрипта из вышеупомянутых проектов. Дополнительно, в репозитории лежит конвертор для подключения устройства в zigbee2mqtt. За счёт полного соблюдения стандартов, в ZHA он залетит без дополнительных усилий.
Что в итоге? Мы получаем возможно самый дешевый зигби датчик на рынке, да и ещё с экраном в придачу, который отвечает всем стандартам сети ZigBee. Помимо этого за счёт открытости прошивки и исследованности платы, открывается простор для аппаратных доработок датчика. Например, уже есть варианты для блютус прошивки, где используется геркон, что с программной доработкой позволит сделать датчик открытия, или протечки. Или наоборот, управлять контактом реле (с дополнительным питанием).
А что если попробовал, но прошивка не понравилась? Всегда существует возможность отката на любую другую прошивку припаявшись проводами к тестпоинтам, используя утилиту TLSR825xComFlasher.py. Можно прошивать как оригинальную прошивку, так и любую пользовательскую.
Что дальше? Я планирую добавить регулировку отображения в Фаренгейтах. Также аналогичные микроконтроллеры стоят в некоторых других датчиках, что возможно сподвигнет кого-то доделать прошивку для работы с другими устройствами со схожим функционалом.
Ссылки:
Пользовательская прошивка для работы с Bluetooth
Телеграм чат разработчиков прошивок для устройств зигби
Комментарии (65)
3cky
17.10.2023 08:56Изменилась ли продолжительность работы датчика от батарейки после перепрошивки на Zigbee?
belokobylskiy Автор
17.10.2023 08:56Не было проведено исследований, возможно изменилась. У меня нет аппаратуры для замера потребления. Оно может быть выше, это покажут натурные эксперименты спустя какое-то время.
blind_oracle
17.10.2023 08:56+2Зигби вполне лоялен к батарее, аналогичные датчики Xiaomi (без экрана) с родным Zigbee работают год-два на одной CR2032 спокойно.
belokobylskiy Автор
17.10.2023 08:56+2Это может зависеть и от программной части. Это моя первая прошивка для батарейных устройств, потому вполне возможно потребуются изменения для снижения потребления батарейки.
blind_oracle
17.10.2023 08:56+1Само собой. Код не читал, но если всё "по заветам SDK" и правильные режимы сна используются между измерениями - не вижу почему оно не должно работать как надо :)
Aquahawk
17.10.2023 08:56Интересно, я у себя всё строил на ble, и с диммерами всё прекрасно работает, но с этих датчиков (при приёме на raspberry pi 3b+) регулярно теряются пакеты. Может и попробую на зигби.
blind_oracle
17.10.2023 08:56+1Зигби всё же mesh сеть и там получше с надёжностью работы. Хотя, конечно, те же Xiaomi меш используют странно - если их роутер, через который они работали, отвалился - то новый они искать не будут, пока не сделаешь сопряжение заново.
По крайней мере так было раньше, может в новых что-то допилили. У тех же IKEA и прочих Филипсов таких проблем нет.
Aquahawk
17.10.2023 08:56Посоветуете, какой приёмник zigbee будет наиболее качественным да raspbery pi? Можно USB, а можно и отдельным сетевым устройством, в принципе.
Aquahawk
17.10.2023 08:56рекомендовали брать оборудование из https://www.zigbee2mqtt.io/guide/adapters/
blind_oracle
17.10.2023 08:56Из списка выше у меня есть "Slaesh's CC2652RB stick" и пара "SONOFF Zigbee 3.0 USB Dongle Plus ZBDongle-P" - все работают отлично.
Есть ещё несколько простых на TI CC2531, с ними в общем тоже проблем не было, но они устаревшие уже и много ограничений на размер сети и т.п.
Kill_Voice
17.10.2023 08:56Можно взять любой из этого списка https://www.zigbee2mqtt.io/guide/adapters/. Сам использую CC2652, сейчас порядка 100 девайсов, полет нормальный. Для небольшой сети (до 15 устройств) можно использовать CC2531 но он сильно менее производительный
and7ey
17.10.2023 08:56Касательно ble2mqtt: есть ли какое-то руководство как добавлять новые устройства? Например, есть зубная щетка Oclean Z1. Как изучать протокол ее работы, чтобы потом в ble2mqtt добавить? в nRF connect что-то смотреть? оригинальное приложение дебажить?
belokobylskiy Автор
17.10.2023 08:56+1Возможно и то и другое. Для добавления нужен алгоритм работы, если это просто адверт пакеты, то да, нужно их насканировать и потом попытаться разобрать. Если это подключение, то тут может потребоваться дебажить оригинальное приложение. В отличие от зигби, там всё очень индивидуально. Для каких-то устройств я использовал разобранные другими протоколы, для каких-то была документация производителя. Проще всего если уже есть код на другом языке и нужно только перенести.
and7ey
17.10.2023 08:56На таком уровне все и так понятно :). Вопрос был именно про руководство - пошаговый гайд, чего надо попробовать. Например, в коде приложения ищите вот то-то. Рядом будет вот это. И т.п.
belokobylskiy Автор
17.10.2023 08:56+2Ну принцип обычно простой, надо посмотреть какие характеристики в BLE есть.
Про вашу щётку чуть описано тут https://github.com/custom-components/ble_monitor/issues/561
Дальше можно почитать оттуда значения, найти что-то ценное. И потом сделать датчик на основе какого-нибудь существующего. (Я не делал примеров, т.к. буквально, каждый датчик - это какая-то отдельная схема работы. Просто не хватает выборки, чтобы было что-то универсальное)
Если сложный случай, можно взять APK, дизассемблировать его http://www.javadecompilers.com/apk и смотреть код, как именно разбирается то или иное значение.and7ey
17.10.2023 08:56Ок, спасибо (обсуждение щеток я видел, там говорится про необходимость активного соединения - непонятно нужно ли это для ble2mqtt).
Но меня все-таки алгоритм действий интересовал.
Был у меня другой кейс - контроллер светодиодных лент SP107E. Я и через nRF Connect смотрел чего делает, и приложение разбирал. И даже для HA компонент пытался сделать. Но это было в стиле "попробую-ка посмотреть вот сюда". Какой-то прям пошаговый гайд сильно бы помог. Но коль его нет, то нет.
isden
17.10.2023 08:56У сабжевого аппарата есть один недостаток - он врет ~+8-10% по влажности :(
Ну или мне так повезло, и все три дивайса были из одной партии с кривым датчиком.
Aquahawk
17.10.2023 08:56Все дешёвые датчики надо калибровать. Для калибровки надо купить хороший датчик, а это та ещё проблема. Он мало того что врёт, так ещё и плывёт со временем.
DurRandir
17.10.2023 08:56Хуже, я вижу до 15% погрешности, и это я еще с температурным диапазоном не жестил, только при "нормальных комнатных условиях".
Kill_Voice
17.10.2023 08:56Использую CGG1 что в целом полный аналог кроме дисплея, после прошивки https://github.com/pvvx/ATC_MiThermometer/ работать стал сильно лучше, как и по качеству показаний, так и по длительности работы на одной батарейке
DurRandir
17.10.2023 08:56>Датчики и управляемые устройства даже в рамках протокола bluetooth целиком ограничены экосистемой отдельного производителя
Все cяомишные девайсы разломаны, и отлично читаются по BT с чего угодно. Нет смысла перешивать на zigbee, если уже нет хаба.
kAIST
17.10.2023 08:56+2Почему нет смысла? У меня, например, есть яндекс станция с zigbee, есть парочка таких термометров, но нет никакого хаба с bluetooth (и не вижу смысла его покупать только под эти датчики).
DurRandir
17.10.2023 08:56Ну здесь тогда станция выступает как хаб, и она уже есть? Я вместо BT хаба использую просто приемник в компе.
kAIST
17.10.2023 08:56Комп должен быть постоянно включен, то есть не годится на роль хаба. Да и просто смотреть температуру, смысла мало - надо включать ее в сценарий умного дома. С кондиционером у меня это получилось, а на зиму собираюсь прикрутить "умные" винтели на батареи, чтобы они регулировали температуру дома по сценариям.
DurRandir
17.10.2023 08:56>Комп должен быть постоянно включен
Если я скажу потребление своего компа 24/7, половину читателей удар хватит)
kAIST
17.10.2023 08:56+1Отчитываюсь - с Яндекса станцией заработала с пол пинка, показывает температуру, влажность и заряд батареи. Перепрошил термометр прямо из браузера со смартфона по инструкции с гитхаба (ссылка в посте).
kamaz1
17.10.2023 08:56А существуют ли недорогие датчики температура, влажность, co2. можно и без экрана.
DurRandir
17.10.2023 08:56+1В виде готовых устройств прям "дешевого" СО2 нет. Точной влажности - тоже (вся дешевая будет как обозреваемый). CO2 у меня вот такой - https://dadget.ru/catalog/datchiki_kachestva_vozdukha/detektor_uglekislogo_gaza/, но смотрю их сейчас в продаже нет.
belokobylskiy Автор
17.10.2023 08:56У меня такой же датчик и я доволен его качеством. Есть возможность считывать показания по USB HID для интеграции в умный дом. В продаже можно искать на маркетплейсах по модели "mt8057s"
Aquahawk
17.10.2023 08:56Хороший датчик, но он в районе 2000 ppm ломает usb https://github.com/huhamhire/node-co2-monitor/issues/6
belokobylskiy Автор
17.10.2023 08:56Не замечал такого. Пользуюсь самописным сервисом https://github.com/devbis/co2mqtt
belokobylskiy Автор
17.10.2023 08:56+2Сам по себе принцип работы датчика co2 подразумевает, что он не может быть дешевым. Даже просто сенсор без обвязки - это 20-25$, потому готовый датчик будет стоит от 4к рублей. Есть ненастоящие датчики co2, где он вычисляет некоторое значение, которое имеет мало отношения к реальности. Такие могут стоить дешево, но я не рекомендую их к приобретению, т.к. они не позволяют мониторить реальные значения.
blind_oracle
17.10.2023 08:56Датчик СО2 собирается из модуля Sensirion SenseAir S8, какого-нибудь копеечного ESP32, и трёх проводов. Сверху накатывается ESPHome. Общая цена будет баксов 20. Дешевле смысла нет - точность будет плюс минус километр.
jst0
17.10.2023 08:56Я пока не понял, в чем польза Zigbee, или скорее не понял, зачем оно мне. У меня дома и на даче множество таких датчиков и они прекрасно работают с Тасмотой. Отдельный шлюз не нужен: у меня всюду раскиданы реле Sonoff Dual R3 (лайт-версия тоже подходит), в которых прозорливые китайцы в качестве микроконтроллера поставили esp32. Перешиваем Sonoff в tasmota32-bluetooth, получаем ключ от каждого датчика, забираем данные как удобно (mqtt или просто по http) - профит!
SantaClaus16
17.10.2023 08:56Использую десяток датчиков на прошивке pvvx. Из того что нравиться - возможность настроить тайминг отчета о температуре. В большинстве мест это минута, в некоторых 10. Так же отключаю отображение батарейки и смайлик использую как комфорт индикатор. Читаю все это через esp32 -> ha. Собственно нареканий за два года у меня нет, разве что в частном доме мне приходится держать отдельную esp32 для сбора показаний с этажа куда ha не добивает. Так вот zigbee для меня, хороший вариант отказаться от отдельной esp на этаже, но как быть с таймингами и мелкими настройками о которых писал?
Harwest
17.10.2023 08:56
Попробовал перешить один.
Telink Flasher 6.2/6.4 нифига не берет - прошил из под старого флешера https://atc1441.github.io/TelinkFlasher.html
z2m версии 1.33.1-1 датчик не опознал, попросил кастом парсер, хотя якобы "For zigbee2mqtt you need to add custom converter if you use version 1.33.1 or earlier"
Ну и слишком уж частое обновление показаний- чуть ли не раз в 5 сек., и при этом дисплей постоянночуть взмаргивает. Прям напрашивается применение фильтра "скользящего окна" хотя бы на 20-30 сек.Бесит редактор местный- никак не вставить между словами пробел, скобку и даже запятую!
belokobylskiy Автор
17.10.2023 08:56Пулреквест с поддержкой устройства в проект zigbee2mqtt я только вчера сделал и его вчера приняли. Чтобы заработало из коробки, нужно установить девелоперскую версию начиная с сегодняшней даты или дождаться ноябрьской версии. Частота отправки настраивается через стандартные механизмы reporting в з2м.
Harwest
17.10.2023 08:56Ага, видел. Пока закинул внешний конвертер в z2m. На сс2538 все в порядке, на efr32 датчик не видится никак: пробовал zha, z2m, менял номера каналов - бесполезно.
past
17.10.2023 08:56А следующую версию прошивки придется заливать уже с паяльником?
belokobylskiy Автор
17.10.2023 08:56Прошивка поддерживает стандартный механизм обновления OTA. Для zigbee2mqtt можно обновлять через локальный индекс https://www.zigbee2mqtt.io/guide/usage/ota_updates.html#local-ota-index-and-firmware-files
Главное, чтобы версия в OTA заголовке отличалась от той, что стоит в датчике.
N0Good
17.10.2023 08:56+1Прям отлично! Огромное вам спасибо. О том, что LYWSD03MMC теоретически может в Zigbee было известно, вроде, давно, но вот прошивок никто не делал. А теперь вот, благодаря вам, есть. Попробовал пока один из своих перевести, ZHA смог его подтянуть не с первого раза, но смог. Правда влажность что-то ну ооочень долго первое показание вытягивало. Будем тестировать дальше. Тоже, как у комментатора выше, использую дополнительную esp32 для расширения области покрытия Bluetooth, и, как следствие, заколупался менять батарейки в датчиках. Посмотрим что будет на Zigbee.
DiKey
17.10.2023 08:56Имею дома около 15 таких датчиков.
Данные снимаю (и дату в датчиках устанавливаю) программой: MiTemp2.
Что интересно: встроенные часы в этих датчиках, спешат с огромной скоростью. Чуть ли не на минуту в сутки. Кто-то знает, почему так?
Родной MiHome, и через него Яндекс.Дом тоже позволяют работать с графиками температуры и влажности, но не так удобно, как маленькая MiTemp2.
Жаль, это приложение не работает с последней официальной прошивкой 2й версии. (
vvzvlad
17.10.2023 08:56Кто-то знает, почему так?
Часовой кварц не поставили, процессором считают, да еще и без калибровки видимо.
past
17.10.2023 08:56А нету ли возможности откалибровать датчик?
Повесил рядом с аналогичным, но с врожденным зигби https://aliexpress.ru/item/1005005261958249.htmlРазница в 1 градус
booroondookZ
17.10.2023 08:56Был датчик LYWSD03MMC, прошитый прошивкой ATC_v43.bin и работающий уже порядка полугода. Ничто не предвещало беды, пока я не прочитал эту статью. Начал шить на ПК через PVVX-флешер. Прошил ATC_ota_40000.bin. Вроде, нормально. Начал тем же способом шить z03mmc.bin. Прошил, внешне всё нормально (дисплей показывает цифры, похожие на правду). Запускаю обнаружение в Z2M - не спаривается (вернее, даже не находится). Запускаю обнаружение в другом Z2M (другой хост, канал) - не находится. Замыкал Reset с Gnd и на 3, и на 5, и на 10 секунд - никаких изменений. Дергал батарейку - аналогично.
Чертыхаюсь, беру паяльник, припаиваю USB-UART, зашиваю через USBCOMFlashTx (получается, что повторно) z03mmc.bin. Ура - датчик обнаружился в Z2M и успешно спарился. Показывает температуру, влажность, батарейку и прочую ерунду. На радостях прописываю его в Home Assistant (попутно удаляя его блютусное альтер-эго). Собираюсь прошить еще один датчик (мечтая, что на этот-то раз обойдется без проводов). Туды-сюды, покурил, поужинал, прошел час. Гляжу в Home Assistant - температура 27,1 градуса, обновление было час назад. Что за фигня? Открываю Z2M - и тоже 27,1 градуса. Ну, быть такого не может - в помещении не выше 23 градусов, а 27 было, когда он у меня на столе рядом с паяльником лежал, да я его теплыми руками тискал. Выдергиваю батарейку, вставляю назад - оппа, 23,2 градуса на табло. Ура? Да не ура - в HA и Z2M по-прежнему 27,1 и факт обновления больше часа назад.
В-общем, решил я его обратно к BLE вернуть. Тем более, что мне не понравилось явное завышение температуры. Ну не было у меня в этом помещении никогда не то, что 37, но даже и 23 градусов! Обычная температура там - 21,7 - 22,5 градуса. Это я говорю к тому, что упомянутые 23,2 тоже неверные. Уж не знаю, что тому причиной - возможно, при работе Zigbee как-тио сильнее греются внутренние элементы на плате, и это "аукается" на градуснике?Возврат на BLE возможен, но только через провода (так, по крайней мере, уверяет нас автор статьи). Хорошо, припаиваю снова провода (благо, не успел их еще убрать далеко), запускаю онлайновый USBCOMFlashTx, шью прошивку ATC_v43.bin. Ура - прошилось. Но теперь же надо настроить! Запускаю Telink Flasher, поиск устройств, и... голый Вася! Нет моего датчика среди найденных! Запускаю этот же флешер на смартфоне - то же самое, датчика нет.
Последнее, что я смог предпринять - это опять же через USBCOMFlashTx залил оригинальную прошивку Xiaomi - в надежде, что раз не Telink Flasher, то хотя бы Mi Home со смартфона его обнаружит. Результат - не обнаруживается.
И что теперь делать? Остается только любоваться на экран, который показывает температуру и влажность.belokobylskiy Автор
17.10.2023 08:56Интересный случай. Возможно вам поможет сделать перед прошивкой по uart очистку флеш-памяти в чипе. В питоновской утилите есть такая команда "ea".
booroondookZ
17.10.2023 08:56Я делал очистку (насколько это позволяет USBCOMFlashTx - там есть кнопка соответствующая). Не помогло.
Кстати, заметил интересный факт. USBCOMFlashTx прошивает "порциями" по 256 байт. И вот вчера вечером, во время очередной прошивки, я начал считать в уме эти порции. Насчитал 31. Умножил 31 на 256 - получил 7936 байт. Получается, что прошивка залилась не полностью, что ли? Но ведь USBCOMFlashTx показал "ОК", никаких ошибок выдано не было.
И еще. Уже после написания вчерашнего поста я снова прошил в датчик прошивку z03mmc.bin. И... о, чудо! Датчик влетел в Z2M.
Короче, если сегодня будет время, попробую прошить локальным Python-прошивальщиком.
И вот еще проблема. Мне вдруг показалось, что датчик показывает температуру где-то примерно на 1,5 градуса выше реальной. Я понимаю, что все термометры врут, поэтому даже не стал сравнивать его показания с каким-то другим термометром, т.к. нет у меня термометра со 100%-ным доверием. Вместо этого я просто поднял из БД Home Assistant'а статистику по показаниям этого датчика за последние две недели - когда он был еще BLE'шным (он же как бьыл, так и есть в одном и том же помещении у меня в доме). И да, действительно убеждаюсь в том, что после перехода на Zigbee показания увеличились примерно на 1,5 градуса. Я не знаю, чем это вызвано - возможно, Zigbee вызывает повышенный нагрев внутренних элементов, что влияет на показания термометра.
Далее - в Zigbee2MQTT я обнаружил возможность коррекции показаний температуры (ну, и влажности тоже, но сейчас не об этом). Так вот. Первое, что смущает - это возможность коррекции с точностью только до целого градуса (а хотелось бы хотя бы до одной десятой). Ну а второе - это то, что эта коррекция совершенно никакого влияния на показания датчика не оказывает - и температура на экране, и температура, отjбражаемая в Z2M и HA, не изменилась.
booroondookZ
17.10.2023 08:56Можно, я продолжу свою грустную историю. Я вчера немножко соврал - на самом деле, я прошил не один датчик, а целых три. При этом проблемы, описанные вчера, были действительно только у одного датчика. Остальные два прекрасно прошились по воздуху, никаких проводов к ним паять не пришлось. Однако, это не говорит, что проблем с ними нет. Есть, еще как.
Первое - они точно так же, как и первый датчик , стали завышать температуру где-то на 1,5 - 2 градуса. Отсюда делаю вывод, что завышение температуры - это не особенность одного отдельно взятого датчика, а общая проблема обсуждаемой технологии.
Второе - коррекция температуры через Zigbee2MQTT всё-таки работает - зря я вчера грешил на неё. Но однако, работает она так - на своем экране датчик показывает одну температуру, а в Zigbee2MQTT (и далее в умный дом) приходит уже скорректированная. Другими словами, хочется взять фломастер и на корпусе датчика написать "отображаемая температура завышена, вычитайте полтора градуса".
Третье. По прошествии суток (к сожалению, весь сегодняшний день был в разъездах и заботах) с печалькой обнаружил в Z2M состояние "Оффлайн" для двух датчиков из трех, вчера перешитых (того самого "сверхпроблемного" и еще одного - ну а третий пока держится). Что с ними делать? Идти передергивать батарейки? И так придется делать каждый день, да?
Aquahawk
17.10.2023 08:56https://habr.com/ru/articles/767886/#comment_26073202
смотрите как у человека батарейку жрёт. Он поди температуру завышает потому что греется, и дохнет выжрав батарейку, у вас есть график батарейки?
datacompboy
Чуть больше подробностей про как бульдог с носорогом скрещивались (можно со слайдами) было бы вкусно почитать :)
belokobylskiy Автор
Подробности достаточно скучные. Telink предоставляет SDK как для блютуса, так и для зигби. Потому задача стояла взять Zigbee SDK, примеры работы с датчиком и экраном из соответствующих проектов и заставить работать в зигби сети, попутно читая про стандарты ZCL и особенности работы чипов Telink.
Самое интересное было обнаружить, что чип tlsr8251 (который декларируется как blutooth only) и tlsr8258 где заявлено Zigbee + Bluetooth, это одно и тоже, просто маркировка разная. Но и это было обнаружено другими исследователями, я лишь взял на себя программную часть.
datacompboy
У них даже памяти (озу/пзу) одинаково? я помню были чипы где по сути одно или другое просто потому, что и то и то не влезало сразу
belokobylskiy Автор
Да, идентичные совсем. Есть вариации с разным количеством выводов, но эти варианты есть и для "старшей" (по документации) модели. По сути - всё один чип.