Прошивка датчика Xiaomi Mijia Bluetooth Hygrothermograph 2 LYWSD03MMC и подключение к Home Assistant

15 октября 2020, 16:50

Пробовал разные методы подключения, и как-то все не очень хорошо. То данные снимаются не всегда, то опрос датчика раз в 10 минут. А если несколько датчиков, то вообще абракадабра. Установил через HACS - Xiaomi passive BLE monitor sensor platform, начал разбираться. И увидел следующую надпись:

Датчик LYWSD03MMC - небольшой квадратный корпус, сегментный ЖК-дисплей, передает температуру и влажность примерно раз в 10 минут, а уровень заряда батареи раз в час. Поддерживает как датчики с оригинальной, так и кастомной прошивкой, как описано здесь (убедитесь, что вы установили тип рекламы как mi-like). В оригинальной прошивке рекламные объявления зашифрованы, поэтому вам необходимо установить ключ шифрования в вашей конфигурации, см. инструкции в опции encryptors.

1600x_image.png?1602519248
1600x_image.png?1602519775

Оказывается существует альтернативная прошивка датчика. Git автора. Сам автор в видео показывает, как нужно прошивать этот датчик.

Итак, начнем. По ссылке автора заходим на сайт, лучше телефоном.

Скачиваем этот файл.

Затем переходим по этой ссылке - это программатор датчика, браузером Google Chrom, должно получиться.

1600x_image.png?1602519943
1600x_image.png?1602520069

Жмем подключить... И вот тут обнаружился неприятный нюанс. У меня телефон Xiaomi и нажатие кнопки подключения не дало результатов. В логе, в самом низу, написало ошибку. Я пробовал и разными браузерами, и пробовал дать разрешения, не помогло. Взял телефон у жены, у нее One Plus, и открылось подключение без проблем. Поэтому если будут проблемы с установкой подключения, пробуйте другие аппараты. Если кто-нибудь разберется в чем проблема, напишите в комментариях.

Сверху выпадает меню выбора устройства. Выбираем по mac адресу нужный датчик. Нажимаем подключить. MAC адрес можно посмотреть в Mihome.

1600x_image.png?1602520194
1600x_image.png?1602520592

Датчик подключился, это видно по значку блютуза на самом устройстве. В статусе написано состояние подключения. Появляются данные температуры и влажности. В самом низу, в логе написано, что подключено.

Нажимаем "Сделать активацию" или "Do Activanion" в зависимости от выбранного языка.

1600x_image.png?1602520592
1600x_image.png?1602520593

Появляется идентификатор устройства, Token Mi и Mi Bind Key, датчик подключен. Теперь, если вы передумали его прошивать, придется снова привязывать в MiHome. Потому что MiBindKey после активации всегда выдается новый.

Выбираем файл скачанной прошивки, и жмем "Start Flashing". В статусе, под выбором файла, побежит процент загрузки.

1600x_image.png?1602520593
1600x_image.png?1602520593

После прошивки устройство перезагрузится. В шкале влажности проморгают последние три разряда mac адреса.

Снова подключаем устройство, но уже название будет другое. АТС_последние три разряда мак адреса.

1600x_image.png?1602521262
1600x_image.png?1602521262

Теперь можно изменить тонкие настройки датчика, а именно:

  • Улыбку веселую, печальную, моргающую или выключить. 
  • Тип данных, нужно выбрать Mi Like. Об этом написано в Xiaomi passive BLE monitor. 
  • Показывать температуру в цельсии или фаренгейте. 
  • Показывать значок батареи и процент заряда в шкале влажности. Когда светится символ батареи, тогда и процент заряда вместо процента влажности. 
  • Настроить погрешность датчика. И настроить передачи датчика при изменении температуры или влажности.

Датчик теперь подключается без проблем к Home Assistent. Появилась возможность подключения к малине напрямую, достаточно в конфиге прописать само устройство. Также имеется возможность подключения через блютуз шлюз, BindKey при этом больше не нужен.

  - platform: mitemp_bt
    rounding: True
    decimals: 1
    period: 60
    log_spikes: False
    use_median: False
    active_scan: False
    hci_interface: 0
    batt_entities: False
    whitelist:
      - 'A4:C1:38:3E:6F:8A'           
    report_unknown: False
    whitelist: True   
  • Вроде все. Всем добра! Буду рад, если кому-нибудь пригодится.

Все новости мира умных домов - t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram - @SprutAI

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. (maxmimko)
    (maxmimko) 7 дней назад

    больше спасибо! у меня как раз 2, через шлюз хаоми 3й версии они были видны в ХА, но толку было мало, значений не отдавали. так что обязательно попробую

  2. Дмитрий Батюшин (ReD)
    Дмитрий Батюшин (ReD) 7 дней назад

    Полезная статья! а как потом вернуть на сток? 

  3. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 7 дней назад

    А, да, забыл написать. Там есть и стоковая прошивка, можно и откатиться обратно. Но сам пользуюсь датчиками уже третий день и не вижу, никаких, причин откатываться на сток.



  4. (Vlad_august)
    (Vlad_august) 7 дней назад

    Не понял в чем смысл прошивки. У меня и на стоковой все работает отлично и данные отдаются примерно раз в 5 мин.

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 7 дней назад

      Ну собственно, вы сами и ответили. Только данные уходят раз в 10 минут, а данные о батарее раз в час. У меня 4 датчика, как-то коряво уходило. На двух датчиках, почему-то, за сутки, ни разу данные батареи не пришли. Да и температура с влажностью, на самих датчиках уже, давно другая, а информация в home assistant ещё не обновилась. Сейчас, все стабильно. И время отправки можно выставлять, минимально 10 секунд. Выставил по минуте, посмотрим на сколько хватит батареи.

  5. (michael)
    (michael) 6 дней назад

    Хорошая статья, спасибо Вам.

    Но заметил одну сложность. Я использую ESP. Поэтому после смены батареи в датчике каждый раз приходится открывать прошивальщик и заново выставлять mi like. Возможно кто то найдёт способ выставить mi like как дефолтный вариант?

  6. (lexeyka)
    (lexeyka) отредактировано 4 дня назад

    Промучал данный датчик сегодня целый день (по инструкции с офиц. cайта HA) - проблема подобная, HA видит объекты датчика, но данные не приходят.

    Наткнулся на Вашу статью - перешил согласно инструкции, обновление прошло успешно, но данные всё равно не приходят.

    Проблема может быть в том, что у меня HA установлен не через докер? HA я ставил по методу "Home Assistant Core" (https://www.home-assistant.io/...),

    использую мини-пк с Ubuntu Server 20.04.

  7. (motorkk7)
    (motorkk7) отредактировано 4 дня назад

    Прошился, но теперь не могу подключиться к датчику

    1000x_image.jpg?1603049940
  8. Павел Кардаков  (RARog)

    Почему не могу? У вас написано в логе Detected custom Firmware. Все подключилось значит. Нажимайте mi like. Датчик видно должно быть.

    • (motorkk7)
      (motorkk7) 3 дня назад

      Павел, приношу свои извинения! Не конца разобрался, спасибо Вам за пояснения, все получилось.

  9. (pulsebeat)
    (pulsebeat) 2 дня назад

    после прошивки не сопрягается обратно с mihome hub 3 

    mi like выбирал, сток прошивки не нашел 

    • Павел Кардаков  (RARog)

      Да не сопрягается. Но если подключено было, то и потом показывает. Сток плохо искал, на git автора внизу.

  10. (barney133)
    (barney133) 2 дня назад
    Как только этот датчик пришел - сразу обновил его по этой инструкции. Но он не сопрягается с Mihome (висит ожидание подключения) и не компилируется в Esphome (хотел его состыковать с бле-шлюзом на плате ESP32): ругается, что такая платформа недоступна, хотя на самом деле просто нужно указывать параметр bindkey (он у них указан как обязательный), а здесь-то его уже нет (как я понимаю). Пустое значение bindkey не прокатывает. Какой выход? У меня НА не на малине крутится, напрямую его подключить к HA не могу. Обратно его что ли прошивать на базовую прошивку?

    • Павел Кардаков  (RARog)

      Вот, ничего не понял. Какой вопрос? У меня в бле шлюзе показывало. Я сначала не прошитые датчики подключал в шлюзе, они работали, но с задержкой. Прошил датчики, в шлюзе ничего не менял, но работать стало стабильно. Правда через hacs установил xiaomi ble monitor. Я это и в статье писал. Вы установили монитор?

      • (barney133)
        (barney133) 2 дня назад
        В общем, похоже можно bindkey указывать "от-балды" (любой), главное чтобы 32-значное шестнадцатиричное число было. Платка ESP32 (использую ее как ble-шлюз от проекта esphome) прошилась теперь без ошибок и начала передавать значения сенсора. Я через hacs не устанавливал - говорю же, у меня НА-сервер не на малине крутится, на материнке нет встроенного bleutooth.

К списку статей

Устройства в материале

Mi Temperature and Humidity Monitor 2

Производитель: Xiaomi
Заказать на:
JD

Raspberry Pi 4

Производитель: Raspberry Pi
Заказать на:

Скидки для сообщества

Z-Wave Ukraine

+380 68 641 9670
Промокод:
Sprut-UA
Размер скидки:
15%

Тематические чаты

Похожие статьи

17 декабря 2019, 17:49
Универсальный привод для автоматического удаленного открытия окон с простой интеграцией в умные дома.
15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
24 августа 2018, 12:18
Пошаговая установка HomeAssistant
30 августа 2019, 07:28
Несколько нетривиальных способов использования датчика открытия окон/дверей от Xiaomi/Aqara.
20 октября 2018, 22:57
Теоретические основы протокола MQTT и описание того, как он работает и для чего используется
02 июля 2020, 07:24
Я хочу поделиться своей разработкой: "умным открывателем пластикового окна". В статье вы найдете все необходимое, чтобы повторить проект и изготовить собственный привод для открывания окна с использованием штатной фурнитуры окна.
27 августа 2018, 10:14
Интегрируем ХА в HomeKit
03 октября 2018, 22:03
Как собрать и настроить Hyperion Ambilight - адаптивную подсветку ТВ.
01 ноября 2018, 09:27
Настройка Deconz USB стика ConBee от Dresden Elektronik в Hass.io и некоторые особенности эксплуатации