Xiaomi Mi Temperature and Humidity Monitor 2 (LYWSD03MMC) в HA

LYWSD03MMC всегда работали через Mi Home app просто ужасно. И не было никакой разницы, через Bluetooth напрямую в устройство, либо через Xiaomi Gateway 3 (ZNDMWG03LM). Датчики постоянно отваливались, приложение не загружало графики. А так как появилась игрушка в виде RPi 3b+ c HomeAssistant туда их и было принято решение перенести. Не без приключений, но результативно.

Первые интуитивные попытки добавить датчики были крайне неэффективны. HomeAssistant сразу сам увидел их через Xiaomi BLE. При попытке добавления датчик сразу запрашивал Bind key, либо добавлялся с предупреждением, что «в данный момент он не в сети, и не понятно, какое у него шифрование». Bind key можно получить через сайт Tlink Flasher. В первом случае, получить актуальный ключ просто невозможно. Во втором случае, когда датчик всё же удастся добавить, вести он себя будет неадекватно. Самое верное решение в данном случае — кастомная прошивка тем-же Tlink Flasher. В моём случае это была Custom Firmware: ATC_v47.bin.

Если датчиков много, нужно собрать их у прошивающего устройства и подключаться ко всем по очереди. У подключенного датчика на дисплее будет отображаться индикатор bluetooth. Во время прошивки рекомендуется вести таблицу, в ней можно зафиксировать принадлежность датчика к определенному пространству, его идентификатор (последние 4 символа MAC адреса) и версию альтернативной прошивки.

После прошивки на ATC_v47 датчики стали моментально определяться в HomeAssistant через интеграцию BTHome. По ощущениям, так стабильно они ещё не работали никогда.

Ещё один альтернативный вариант прошивки — это Zigbee Firmware: Z03MMC_v0123.bin Эта прошивка переводит LYWSD03MMC из режима работы BLE в ZigBee. Но потребуется ZigBee шлюз. Я этим займусь чуть позже, когда на руках будет ZBDongle-P.