Прошивка датчика 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) 9 месяцев назад

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

  2. Дмитрий Батюшин (ReD)
    Дмитрий Батюшин (ReD) 9 месяцев назад

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

  3. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 9 месяцев назад

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



  4. (Vlad_august)
    (Vlad_august) 9 месяцев назад

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

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 9 месяцев назад

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

  5. Михаил Иванов (michael)
    Михаил Иванов (michael) 9 месяцев назад

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

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

  6. (lexeyka)
    (lexeyka) отредактировано 9 месяцев назад

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

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

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

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

  7. (motorkk7)
    (motorkk7) отредактировано 9 месяцев назад

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

    1000x_image.jpg?1603049940
  8. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 9 месяцев назад

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

    • (motorkk7)
      (motorkk7) 9 месяцев назад

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

  9. (pulsebeat)
    (pulsebeat) 9 месяцев назад

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

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

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 9 месяцев назад

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

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

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 9 месяцев назад

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

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

        • (dreamer85)
          (dreamer85) 7 месяцев назад

          Так что в итоге в ESPHome прописали ? 

  11. (Kirill_K)
    (Kirill_K) 8 месяцев назад
    Благодарю за статью. Есть вопрос все сделал по пунктам все получилось но к малине не цепляется. Можете поделится configurations.yaml Или проконсультировать?  

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 8 месяцев назад

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

      • (Kirill_K)
        (Kirill_K) 8 месяцев назад
        Благодарю автора за быстрый ответ. Атом то и дело делаю все как написано, прошил датчик в малинке через терминал сканирую и вижу MAC датчика потом вписываю в config перегружаю и..... Нечего не происходит 

        • Павел Кардаков  (RARog)
          Павел Кардаков (RARog) 8 месяцев назад

          Ну во первых надо немного подождать. А во вторых, пишите в телеге, логи скину.

  12. (@Andrey80nik)
    (@Andrey80nik) 8 месяцев назад

    А неудачно прошитый реально вернуть к жизни? В данный момент вообще не включается 

  13. (presedent60)
    (presedent60) 8 месяцев назад

    пожалуйста дайте ссылку на стоковую прошивку

  14. (miastek)
    (miastek) 8 месяцев назад

    У меня вопрос, если я перепрограммирую датчики в соответствии с этим руководством и удалю с них токен, мои ворота xiaomi соединятся с ними или они будут работать только под Home Assistant?

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 8 месяцев назад

      Непонятен вопрос. 

      • (miastek)
        (miastek) отредактировано 8 месяцев назад

        Будут ли эти датчики работать в приложении Xiaomi Home после модификации программного обеспечения?

  15. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 8 месяцев назад

    Ну вот вы и попробуйте, если что обратно откатитесь. Вроде у кого-то работают с третьим шлюзом. 

    • (miastek)
      (miastek) 8 месяцев назад

      Я хочу, чтобы эти датчики были в Home Assistant и в приложении Xiaomi Home.

      • Павел Кардаков  (RARog)
        Павел Кардаков (RARog) 8 месяцев назад

        Вроде с третьим шлюзом работают, проверьте сами. В чем проблема? Прошейте, если не пойдет прошьётесь на сток обратно.

        • (miastek)
          (miastek) 8 месяцев назад

          Prawdopodobnie zrobię to dzisiaj i dam znać, jaki będzie efekt

        • (miastek)
          (miastek) 8 месяцев назад

          Niestety po zmianie oprogramowania w czujniku nie mogę iść do Xiaomi Home i temperatura nie wyświetla się w Home Assistant.

          Co do górki?

  16. (miastek)
    (miastek) отредактировано 8 месяцев назад
    Комментарий удален
  17. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 8 месяцев назад

    i najpierw próbowałeś podłączyć urządzenie, a potem trzecią bramę, aby wysłać dane. Następnie sflashuj bez wyjmowania czujników. Cóż, albo zostaw jeden czujnik na bramkę i to wszystko.

  18. (e3e6)
    (e3e6) отредактировано 7 месяцев назад

    Огромная благодарность за эту статью!

    1. В приведенном примере конфигурации два ключа whitelist, hassio ругается на дублирующий ключ. Не могли бы вы исправить?
        whitelist:
          - 'A4:C1:38:3E:6F:8A'           
        report_unknown: False
        whitelist: True   

    1. На официальной странице интеграции mitemp_bt нет такого количества параметров. Подскажите, где вы взяли полный список?
    1. Для таких как я, приложу ссылку на альтернативную прошивку, т.к. в мобильном браузере,  по умолчанию, гитхаб прячет файлы, и не очень очевидно, где искать прошивку.
    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) отредактировано 7 месяцев назад

      А вы не внимательно читали сначала. А я писал, что установил альтернативный компонент из HACS. Вот ссылка на гит. Но компонент обновился и сейчас так, в конфиге прописано у меня.

      1000x_image.jpg?1607360635

      Ключ должен быть любой, скорее всего на это ругается. Каждую минуту считывает состояния. Отдельно датчики батарей.

      • (e3e6)
        (e3e6) 7 месяцев назад

        Да, ввело в заблуждение, что альтернативная интеграция называется ble_monitor, а нативная – mitemp_bt. Спасибо за актуальную конфигурацию.

  19. (e3e6)
    (e3e6) отредактировано 7 месяцев назад
    Комментарий удален
  20. (dreamer85)
    (dreamer85) отредактировано 7 месяцев назад

    скажите пожалуйста, как заставить работать эти датчики с альтернативной прошивой в ESPHome. какую платформу использовать ? спасибо. вот ссылка как они работают на соковой прошивке.

  21. Павел Кардаков  (RARog)
    Павел Кардаков (RARog) 7 месяцев назад

    Как написано в описании по вашей ссылке, так и пишите. Вместо ключа любой код.

    • (dreamer85)
      (dreamer85) 7 месяцев назад

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

      • Павел Кардаков  (RARog)
        Павел Кардаков (RARog) 7 месяцев назад

        У меня показывал, но как то не очень работает. Не понравилось. Больше понравилось малинкиной блютузкой, как-то стабильнее.

        • (dreamer85)
          (dreamer85) 7 месяцев назад

          а если малинкой.... то-есть если выставить в прошивке отправлять данные каждые 5 минут скажет, то стабильно раз в 5 мин и будут приходить данные ? или  все равно не стабильно работает  ? 

  22. (dreamer85)
    (dreamer85) 7 месяцев назад

    В общем запустил таки их на альтернативной прошивке в ESPHome. не знаю что именно было не так, но перепрошил их еще раз и все четыре датчика стали работать нормально. Единственное только то что  судя по логам данные отправляются хер пойми как. Условно 2й и 3й датчики шлют приблизительно раз в 2 минуты. 1й и 4й  могут раз в 3 могут раз в 7 минут отправить. Хотя  всем выставлял слать каждые 5 мин. поэтому решил отказаться от Шлюза и перевести их на малину. Здесь по всей видимости они так же гораздо чаще пуляют данные, потому что 3 датчика на альтернативе, после перезагрузки сервака, в течении минуты передали все данные. А один датчик, который на стоке, так не чего и не передал в течении 20 минут. Зашил его тоже альтернативной, передал данные сразу после перезагрузки))). бум наблюдать на сколько хватит батареек.

    • (maxmimko)
      (maxmimko) 7 месяцев назад

      а что вы писали в конфиг для прошивки есп? я никак разобраться не могу

  23. (drnemo)
    (drnemo) 6 месяцев назад

    Прошил датчик, пытаюсь выставить настройки (например отображение улыбки), в логах пишет успешно, а на датчике никаких изменений ((

    1000x_image.png?1610440173
    • (drnemo)
      (drnemo) 6 месяцев назад

      В общем прошил прошивкой из корня репо гита и заработало, до этого пробовал ver 1.2

      1000x_image.png?1610440806
  24. Александр Баля (Balya)
    Александр Баля (Balya) отредактировано 6 месяцев назад
    Комментарий удален
  25. (x10attack)
    (x10attack) 6 месяцев назад

    Здравствуйте, прошил датчик по инструкции, предварительно привязал его к MiHome после прошивки Blu-шлюз его видит, а вот данные не обновляет, всегда висят старые данные, что я делаю не так? 

    • Павел Кардаков  (RARog)
      Павел Кардаков (RARog) 6 месяцев назад

      А вы внимательно, с начала читали? Там написано, что для альтернативного ble. Вроде у кого-то через третий шлюз подключалось. Можно еспэшкой с блютузкой. У меня к малине подключено. В общем читайте с начала.




      • (x10attack)
        (x10attack) отредактировано 6 месяцев назад

        У меня подключено через MI Smart Power Plug 2 это розетка с блютус.
        Вроде читал все внимательно.
        Откатился сейчас на сток прошивку, розетка перестала видеть датчик в шлюзе.
        Что не так (((
        Но mihome его видит и добавляет.

        • Павел Кардаков  (RARog)
          Павел Кардаков (RARog) 6 месяцев назад

          Розетку перезагружали? Я несколько раз, то на штатную прошивку прошивался, то на альтернативную. Михом видит в штатной нормально.

          • (x10attack)
            (x10attack) 6 месяцев назад

            Сейчас опять перепрошил на кастом, розетка видит датчик по блютуз, но данные старые и не меняются, розетку перезагружал 3 раза, не помогает.

            • Павел Кардаков  (RARog)
              Павел Кардаков (RARog) 6 месяцев назад

              Ну она не сразу раз в 5 минут или 10 приходят данные. Уже не помню. Поэтому я лично и прошивал, сейчас раз в минуту.

          • (x10attack)
            (x10attack) 6 месяцев назад

            А старые значения Device known id
            Mi Token
            Mi Bind key
            в кастомную прошивку надо вводить?

            • Павел Кардаков  (RARog)
              Павел Кардаков (RARog) 6 месяцев назад

              Ну они вроде по новому сами меняются, при подключении к михом.

              • (x10attack)
                (x10attack) 6 месяцев назад

                Так если отвязать от  михом, то с кастомной прошивкой михоме его не находит?!

                • Павел Кардаков  (RARog)
                  Павел Кардаков (RARog) 6 месяцев назад

                  Находит, но данные как-то не идут нормально. Хотя кто-то говорил, что с третьим гетевеем вроде работает.

                  • (x10attack)
                    (x10attack) 6 месяцев назад

                    Вот и у меня проблема.
                    Вначале привязываю датчик к михом, после прошиваю кастом по инструкции, потом михоме вроде датчик видит  MI Smart Power Plug 2 (розетка с блютус) в шлюзе его тоже видит, но данные не обновляет, как бы застыли на старых значениях и все ((

  26. (x10attack)
    (x10attack) 6 месяцев назад

    Короче мне так и не удалось победить этот "супер" датчик и привязать его к михоме через  MI Smart Power Plug 2 (розетка с блютус шлюзом) с кастомной прошивкой.
    При установки кастомной прошивки,  MI Smart Power Plug 2 (розетка с блютус шлюзом) видит датчик вроде даже подключается, но значения висят старые и обновление не происходит, хотя шлюз датчик видит.
    Пробовал:
    Перезагружать розетку с блюпуп шлюзом, роутер. Пробовал отвязать датчик с кастомной прошивкой, но при регистрации его заново, происходит поиск, находит датчик, но при соединении по блюпуп происходит отвал и михоме просит перезагрузить блюпуп и так по кругу. 
    Убил весь день....
    (((((

  27. (Lord01)
    (Lord01) отредактировано 5 месяцев назад

    Поделюсь мнением начинающего (пытался подцепить их в НА через  ESP32). До перепрошивки сами термометры определялись, но значения не появлялись. После перепрошивки так и не смог подключиться к НА. Платформа xiaomi_lywsd03mmc датчика не видела (возможно я в чем-то тупил). Сканер определял другое имя (с АТС_...). MiHome также не подключался к нему. После перепрошивки обратно на сток MiHome всё равно не подключился (вероятнее всего, потому что id остался модифицированным). 

    Теперь о подключении к НА: После шага с  "Сделать активацию" или "Do Activanion" попросту скопировал  Mi Bind key и вставил в программу ESPHom. После этого датчики начали работать. Единственное, у "восстановленного" термометра пока не вижу уровня заряда батареи.

  28. Ильмир Гайнутдинов (Gelmer)

    Вчера тоже наконец пришли такие датчики. Телефон у меня Xiaomi. Штатный бразуер не подключается, а при нажатии кнопки выбор файла включает фотоаппарат.

    Попробовал chrome, все нормально коннектится, прошил все 4 датчика без проблем. Ввел настройки и подключил через EspHome. 

  29. (leon010203)
    (leon010203) 2 месяца назад

    Подключено 2 штуки с стандартной прошивкой. Через ~0.5 года HA перестал получать данные с одного из них. После повторного получения  Mi Bind Key снова все заработало

  30. (Tolimas)
    (Tolimas) отредактировано 2 месяца назад

    Есть еще вариант подключение перепрошитых датчиков к Home Assistant используя Xiaomi Gateway 3 и HA интеграцию Xiaomi Gateway 3. Работает с датчиками LYWSD03MMC и MHO-C401. Основан на комментаре. Перед прошивкой датчик должен быть привязан к Gateway 3 через приложение Xiaomi Home и виден в Home Assistant интгерацие Xiaomi Gateway 3. Прошиваем датчик кастомной прошивкой. В кастомной прошивке восстанавливаем имя устройства Set New Name LYWSD03MMC (или MHO-C401) и выбираем Advertising type- Mi. Пункты AdFlags и Encrypted Mi beacon не должны быть помечены. Другие значение по дефолту. После процедуры перезагрузить шлюз.  Данные датчика начнут обновляться в Home Assistant но не в приложение Xiaomi Home.

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

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

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
Универсальный привод для автоматического удаленного открытия окон с простой интеграцией в умные дома.
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
20 октября 2018, 22:57
Теоретические основы протокола MQTT и описание того, как он работает и для чего используется
24 августа 2018, 12:18
Пошаговая установка HomeAssistant
30 августа 2019, 07:28
Несколько нетривиальных способов использования датчика открытия окон/дверей от Xiaomi/Aqara.
02 июля 2020, 07:24
Я хочу поделиться своей разработкой: "умным открывателем пластикового окна". В статье вы найдете все необходимое, чтобы повторить проект и изготовить собственный привод для открывания окна с использованием штатной фурнитуры окна.
15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 августа 2018, 10:14
Интегрируем ХА в HomeKit
03 октября 2018, 22:03
Как собрать и настроить Hyperion Ambilight - адаптивную подсветку ТВ.
29 октября 2019, 07:59
Умный домофон на базе nodeMCU с прошивкой ESPHome.