• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

TLSR8251 + LCD + термометр = LYWSD03MMC XIAOMI Bluetooth термометр

volaltd

Member
Кстати, вариант с дешевым мелким роутером и OpenWrt - не удобней ли получится?
В моем варианте я расставляю по помещению 3шт ESP32+LAN8720, к каждому подключаю с минимальной длинной проводов шины I2C по два BME280, с модулей ESP32 витая пара в свич, оттуда к головному роутеру, где торренты. Будут боши все так же дорогими, то прошивка ESPeasy позволяет использовать тонну других сенсоров, как и менять их в любое время на другой тип, и можно при желании таким же способом и датчики CO2 прикрутить. Потребление этих "точек" будет минимальное, падение напряжения на витой паре практически не заметное.

На WT32-ETH01 пробую эту теорию, затем заказываю платы и делаю 15-20единиц таких устройств на ESP32-WROOM-32 по своей потребности.

Что вы сможете из подобного сделать на одном мелком роутере с учетом что и жрут к примеру MT7688 0.8A и для I2C лучше дальше 3м не вешать сенсоры? Как будете из OpenWRT в "умный дом" данные заправлять? Предположу что напишете какой-то свой костыль на python без элементарной обработки ошибок и сбоев...

Что Xiaomi термометры данные шлют в открытом виде и любой сосед с мобилкой может их принимать не пропустили?
 

shaman1010

Member
Что Xiaomi термометры данные шлют в открытом виде и любой сосед с мобилкой может их принимать не пропустили?
Вы меня перепутали :)
и жрут к примеру MT7688 0.8A и для I2C лучше дальше 3м не вешать сенсоры?
Сильно с этим поспорю, особенно если wifi не использовать в принципе, а на проводе тянуть :)
На WT32-ETH01 пробую эту теорию, затем заказываю платы и делаю 15-20единиц таких устройств на ESP32-WROOM-32 по своей потребности.
Уже я чего-то не понимаю - так wifi или все-же провод предполагается?

Мое предложение было исключительно как альтернатива esp32 с ethernet. По мне, так опенврт может полностью заменить вариант esp32. Плюс память, плюс передача звука/видео, плюс возможность поднимать альтернативные каналы связи, плюс mqtt, http, и тд и тп.

И в любом случае - на проводе стоит организовать пассивное питание, что-бы не тянуть еще и линии питания.
 

pvvx

Активный участник сообщества
Что Xiaomi термометры данные шлют в открытом виде и любой сосед с мобилкой может их принимать не пропустили?
Кто и что пропустил?
Даже на геркон окна или двери у Xiaomi стоит bindkey. Короче во всех термометрах и прочих побрякушках выпущенных с начала 2020 года.
Вам придется попотеть, вписывая и исправляя в ESP WPA3, т.к. предыдущие уже псё - каждый сосед одной кнопке в программе подключится.
 

volaltd

Member
Вы меня перепутали :)
Так вот я у себя дома беру мобилку и принимаю данные со своих и соседского сенсора без ввода каких-либо ключей или пинов...

Сильно с этим поспорю, особенно если wifi не использовать в принципе, а на проводе тянуть :)

Уже я чего-то не понимаю - так wifi или все-же провод предполагается?

Мое предложение было исключительно как альтернатива esp32 с ethernet. По мне, так опенврт может полностью заменить вариант esp32. Плюс память, плюс передача звука/видео, плюс возможность поднимать альтернативные каналы связи, плюс mqtt, http, и тд и тп.
Предлагается провод и работать с минимум 6 датчиками I2C, как правило на одну шину получается подключить два BME280 ввиду возможности переключения адресов 77 или 76, у других типа HTU21D такой возможности нет. Расскажите как будете роутером с одним аппаратным интерфейсом I2C подключать такое количество датчиков и с удалением по 5-7метров между ними?
Вы по ходу своего DIY пропустили готовую, хорошо написанную и оттестированную, с удобным интерфейсом конфигурирования прошивку для ESP8266/ESP32 с названием ESPeasy. Там есть и поддержка тонны датчиков, и mqtt, и http, и т.д. и т.п.

И в любом случае - на проводе стоит организовать пассивное питание, что-бы не тянуть еще и линии питания.
Ес-но при 100Mbit остается две свободные пары из 4-х для подачи питания.
 

volaltd

Member
Кто и что пропустил?
Даже на геркон окна или двери у Xiaomi стоит bindkey. Короче во всех термометрах и прочих побрякушках выпущенных с начала 2020 года.
Вам придется попотеть, вписывая и исправляя в ESP WPA3, т.к. предыдущие уже псё - каждый сосед одной кнопке в программе подключится.
Короче софтина Mija Reader ничего не прося ввести сканит эфир и показывает данные сенсоров, все что нужно - установить ее из Play Store. Теории оставьте при себе, это есть тут и сейчас, а у вас в альтернативной - вообще неограниченный, не документированный полет мысли.

WPA3 идет лесом, у меня провода уже по потолку запланированы :)
Как известно скорость всего WiFi получается равной самому медленному подконнекченному устройству, к чему мне все эти потери времени на будет/не будет 1мбит?
 

volaltd

Member
Расскажите как будете роутером с одним аппаратным интерфейсом I2C подключать такое количество датчиков и с удалением по 5-7метров между ними?
Уточню еще что до самого дальнего датчика от щитка получается 40метров ввиду особенностей маршрута прокладки, хотелось бы расширяемость до минимум 20 единиц. А видео-звук гонять я пожалуй поставлю что-то на MT7621 чтобы гигабитную сетку провести где она нужна.

А датацентров мне и на работе хватает
 

pvvx

Активный участник сообщества
Короче софтина Mija Reader ничего не прося ввести сканит эфир и показывает данные сенсоров, все что нужно - установить ее из Play Store.
Угу - в ней "квантовый дешифратор" :)
WPA3 идет лесом, у меня провода уже по потолку запланированы :)
Каждый хвост провода - это LAN PHY с потреблением от 100 мА + всё остальное...
На поддержку работы вашей системы не хватит простого бесперебойника - потребуется механический - дизель-мотор...
А чё всё механическое не сделаете? Зачем провода? Может заменить их на ременные передачи или прочие шестеренки/оси?
Если что - можно вручную или педалями крутить :)
 

pvvx

Активный участник сообщества
volaltd - Общую картину вы уже нарисовали – дом из крошащегося и трескающегося пенобетона, натяжные потолки и стены из очередного полиэтилена…
Может сразу в пластиковый мешок заберетесь?

У меня в городе литой железобетон с гранитом – не штробится просто так, простыми инструментами… толщины стен как в дзоте или в бункере против ядреной бомбы… а в пригроде всё сплошная деревяшка – там дятел нужен.

Сегодня Телинк, завтра Илон спутник допилит, и у всех нужно разобраться что наворочали, а в сутках только 24часа.
Кто вам мешает уйти типа в Сибирь, выкопать там пещеру – Гары вроде ещё дают… а до срока когда спрашивать начнут всё равно не протянете. :)
А датацентров мне и на работе хватает
Вы ещё и на рабботу ходите - зачем вам что в вашей коробке, если туда вы приходите только поспать?
По образу и подобию хотите там устроить провода по всем стенам и потолкам?
 

volaltd

Member
Угу - в ней "квантовый дешифратор" :)
Суслик, т.е. bindkey конечно же есть, не отрицаю, но и данные без проблем при этом подхватываются :)


Каждый хвост провода - это LAN PHY с потреблением от 100 мА + всё остальное...
На поддержку работы вашей системы не хватит простого бесперебойника - потребуется механический - дизель-мотор...
Я уже раз повелся на esp8266, в единичном экземпляре все было замечательно... А 6 одновременно как-то роутер не переварил, да и выгонят меня из дома если ютюб по WiFi будет на телике тормозить :)
На пару часов вполне аккума свинцового хватит, но и батарейки каждые полгода по кругу менять не нужно, изучать и переписывать тонну китайского кода не нужно, бороться с пропусками пакетов, уровнями сигналов и всякими интерференциями :)
 

volaltd

Member
volaltd - Общую картину вы уже нарисовали – дом из крошащегося и трескающегося пенобетона, натяжные потолки и стены из очередного полиэтилена…
Может сразу в пластиковый мешок заберетесь?
У меня в городе литой железобетон с гранитом – не штробится просто так, простыми инструментами… толщины стен как в дзоте или в бункере против ядреной бомбы… а в пригроде всё сплошная деревяшка – там дятел нужен.
Сплошняком строят каркасники без отделки, что имеем, то имеем... Собсна и где железобетон уже мало кто штробит, эдак можно и всю коробочку сложить напиливши штроб, тоже вверх и по потолку делается...

Вы ещё и на рабботу ходите - зачем вам что в вашей коробке, если туда вы приходите только поспать?
По образу и подобию хотите там устроить провода по всем стенам и потолкам?
Периодически работу меняю и вот в эти промежутки творчество так и прет :)))
Проще, надежнее и быстрее бросить витую пару, чем допиливать жменю китайщины и как-бы технология уже проверенная долгим временем.
 

pvvx

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

pvvx

Активный участник сообщества
Сплошняком строят каркасники без отделки, что имеем, то имеем... Собсна и где железобетон уже мало кто штробит, эдак можно и всю коробочку сложить напиливши штроб, тоже вверх и по потолку делается...
Тут не сложется - слишком много арматуры, а этажов мало - на ней выдержит.
Периодически работу меняю и вот в эти промежутки творчество так и прет :)))
Дык скоро поменяете на наблюдение и исправление тысяч глюков в ESP-Arduino ПО. С утра до вечера будете менять потолок для доступа к размещенным там тамогочам...
 

volaltd

Member
Дык скоро поменяете на наблюдение и исправление тысяч глюков в ESP-Arduino ПО. С утра до вечера будете менять потолок для доступа к размещенным там тамогочам...
Вот тогда под ESP32 напишу сам, а пока тесты не выявили глобальных проблем.
Кста может видели какой SoC чтобы Linux/OpenWRT под него были, c WiFi, минимум 2xLAN, желательно CAN, и флеша внутри или с защитой от копирования? Цену ес-но хотелось бы тоже не более 40$ за чип.
 

condemil

New member
Не у кого даже спросить полный протокол-алгоритм работы по ZigBee датчика пусть даже простейшего выключателя на дверь от Xiaomi - c какими тама оно кодами и доп. шифрами работает, чтобы шлюз слопал.
Вот здесь и в соседних файлах можно посмотреть протоколы многих устройств

Вот слепил прошивку с ZigBee (в тот-же термометр)
Можете поделиться исходниками в личку? Не хочется велосипедеть и писать с нуля раз уже кто-то сделал начальную работу.
 

pvvx

Активный участник сообщества
Вот здесь и в соседних файлах можно посмотреть протоколы многих устройств
Это не протоколы - там всё нужное выкинуто.
Можете поделиться исходниками в личку? Не хочется велосипедеть и писать с нуля раз уже кто-то сделал начальную работу.
Я её не доделал и бросил за ненужностью - ZigBee жрет больше чем BLE. Посылка TX-RF длинная, потом длительное включение RX-RF, если не ответили, повторы и т.д. Потом размер прошивки без всяких функций катиться за 128 килобайт, вместо BLE, которая умещается даже в retention-RAM чипа (менее 64 килобайт)...

И там писать нечего. Берете из SDK пример sampleContactSensor_8258, вырезаете все лишние GPIO и обращения к ним, переименовываете несколько переменных, да вставляете код опроса сенсора и вывода на LCD.
C:
#define ZCL_BASIC_MFG_NAME     {0x04,'L','U','M','I'}
#define ZCL_BASIC_MODEL_ID       {0x0e,'l','u','m','i','.','s','e','n','s','o','r','_','h','t'} // lumi.sensor_ht
#define ZCL_BASIC_SW_BUILD_ID  {0x09,'3','0','0','0','-','0','0','0','1'} // "3000-0001"

#define ZCL_TEMPERATURE_MEASUREMENT_SUPPORT         1
#define ZCL_DEV_TEMPERATURE_CFG_SUPPORT                1

// ---- sampleSensorEpCfg.c

zcl_basicAttr_t g_zcl_basicAttrs =
{
    .zclVersion     = 0x03,//0x01
    .appVersion     = 0x00,//0x02
    .stackVersion     = 0x02,//0x02
    .hwVersion        = 0x00,//0x1e
    .manuName        = ZCL_BASIC_MFG_NAME,
    .modelId        = ZCL_BASIC_MODEL_ID,
    .powerSource    = POWER_SOURCE_BATTERY,
    .deviceEnable    = TRUE,
};
...
ну и далее :)
При этом уже шлюз3 соединит с lumi.sensor_ht и появится в Mi-Home ...
А далее вы сами сказали "Вот здесь и в соседних файлах можно посмотреть протоколы многих устройств" :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
condemil - я не хочу быть первым в данном деле - мне толпы на своем github не требуется. Жду "пыонеров" c ZigBee, могу потом помочь, но уже после лета...
 

pvvx

Активный участник сообщества
Но самое главное, как уже писал ранее, с ZigBee:
  • В оригинальный термометр не залить ZigBee прошивку по OTA – разметка для BLE предполагает максимальную длину блока OTA до 128 KiB. Придется делать в два этапа - прошивку с BLE которая будет поддерживать разметку ZigBee для OTA в Flash, а потом уже лить ZigBee версию...
  • У оригинального термометра нет кнопок для включения “снюхивания” с координатором.
  • Из прошивки придется удалить всё, включая запись истории из-за занятости всей Flash на текущую исполняемую версию и ОТА.
  • У 99.9% пользователей нет на руках устройств, выполняющих OTA и конфигурацию по ZigBee.
Т.е. ZigBee нафиг никому не сдался.
 

volaltd

Member
GL-MT300N-V2 30$ на али
Данный мини-роутер сделан на MT7628NN, по даташитам медиатека и фотам с али - имеет все такую же внешнюю SPI флешку, прошивка которой не имеет защиты и элементарно копируется простейшим программатором, что очень мешает сделать что-то более-мение программно ценное. ESP32 умеет в себе хранить ключ, а содержимое внешней флеши при этом шифруется, но по ресурсам дохловатая и аппаратных ошибок много.
 

pvvx

Активный участник сообщества
Данный мини-роутер сделан на MT7628NN, по даташитам медиатека и фотам с али - имеет все такую же внешнюю SPI флешку, прошивка которой не имеет защиты и элементарно копируется простейшим программатором, что очень мешает сделать что-то более-мение программно ценное. ESP32 умеет в себе хранить ключ, а содержимое внешней флеши при этом шифруется, но по ресурсам дохловатая и аппаратных ошибок много.
Платформа ESP32, установленная в режиме Full Secure (Flash Encryption + Secure Boot), является целью этого исследования. Это максимальный уровень безопасности, рекомендованный Espressif.
Используя скачки напряжения для изменения значений защиты от чтения контроллера E-Fuses, было достигнуто полное считывание ключа шифрования флэш-памяти (FEK) и ключа безопасной загрузки (SBK).
Этот FATAL-эксплойт позволяет злоумышленнику расшифровать зашифрованную прошивку, поскольку теперь он владеет ключом шифрования AES Flash. https://limitedresults.com/2019/11/...lash-encryption-and-sec-boot-keys-extraction/
 
Сверху Снизу