Содержание
Термометр Xiaomi 3, также известный как MJWSD05MMC, это Bluetooth-датчик температуры и влажности с экраном 62,6×53,2 мм. Он питается от одной батарейки-таблетки CR2450, которая, по словам производителя, должна прослужить около года.
У меня это устройство лежит на полке уже около года, все еще в упаковке и не используется. В этом руководстве я прошиваю MJWSD05MMC специальной прошивкой BLE для увеличения срока службы батареи, повышения точности измерений и включения пользовательских режимов отображения.
Цена на Термометр Xiaomi 3 составляет около 1000 рублей или даже меньше, если брать несколько штук одним лотом. Купить можно на АлиЭкспресс. (лот из 1 штуки) или здесь (лот из 4 штук — дешевле за 1 штуку).
О кастомной прошивке PVVX
Если вы не в курсе, эта прошивка активно разрабатывается и поддерживается Виктор (пввх) и является ответвлением оригинальной прошивки ATC_MiThermometer.
Прошивка pvvx имеет множество преимуществ, но некоторые из них выделяются среди остальных:
- Увеличенный срок службы батареи (более года)
- Повышенная точность измерений и расширенный формат с точностью до 0,01
- Регулируемые смещения коррекции и зоны комфорта
- 3 режима ЖК-дисплея
- Поддержка 4 форматов: Xiaomi, ATC, Custom, BTHome v2 и зашифрованных вариантов.
- Прошивка сторонних OTA-файлов.
Эта пользовательская прошивки увеличивает срок службы батареи поддерживаемых термометров BLE, повышает точность измерений и добавляет возможности настройки, такие как несколько ЖК-экранов и шифрование. Она также обеспечивает интеграцию с Home Assistant через различные платформы (ESP32 Bluetooth Proxies, Passive BLE monitor, BTHome) и позволяет легко обновлять устройство по воздуху (OTA), не открывая его.
На данный момент поддерживаются следующие устройства:
- Xiomi Mijia LYWSD03MMC (Bluetooth, ZigBee)
- Xiaomi Mijia MJWSD05MMC (Bluetooth, ZigBee)
- Xiaomi Mijia MHO-C401
- Монитор температуры и относительной влажности Qingping CGG1
- Qingping Temp & RH Monitor Lite CGDK2
- Мяуау MHO-C122
- Устройства Туя (TH03Z, TZ3000, ZTH01, ZTH02 + другие на чипе SoC PHY62x2)
Порядок прошивки PVVX
Перед тем, как прошивать, нам нужно включить экспериментальные возможности веб-платформы в Chrome, Opera или Edge. Это необходимо для получения MAC-адреса устройства. Скопируйте следующие ссылки для используемого вами браузера, вставьте их в адресную строку и выберите Включить:
- Хром: chrome://flags/#enable-experimental-web-platform-features
- Опера: opera://flags/#enable-experimental-web-platform-features
- Край: edge://flags/#enable-experimental-web-platform-features
Браузер попросит вас перезапустить его, подтвердите и затем следуйте этой процедуре, чтобы перепрошить Xiaomi Thermometer 3:
- Нажмите и удерживайте обе кнопки пока экран не мигнет (сброс)
- Коротко нажмите верхнюю кнопку а потом короткое нажатие нижней кнопки
- Значок Bluetooth начнет мигать, что означает, что устройство находится в режиме режим сопряжения
- Откройте Веб-флешер Telink:
- Проверьте, что получили MAC и нажмите Соединять
- Выберите MJWSD05MMC из списка устройств Bluetooth и нажмите Pair
- Нажмите на кнопку Do Activation и ждите
- Нажмите Custom Firmware: BTH_v47.bin
- Нажмите Start Flashing
Дождитесь завершения процесса, который не должен занять более 2 минут. Следите за журналами на предмет проблем или отключений. После этого устройство автоматически перезагрузится, а веб-флешер отобразит Disconnected вверху.
Вот как должен выглядеть полный журнал, от начала до конца:
Настройка новой прошивки
После перезагрузки устройства вы можете снова подключиться к нему и изменить некоторые параметры конфигурации. Мне нужно было снова сбросить его в этот момент, так как, похоже, он уже сопряжен с флешером. После подключения веб-флешер предоставил мне кучу пользовательских опций для термометра MJWSD05MMC.
Показания температуры на основном экране:
Показания влажности на основном экране:
- Установить время: Вы можете синхронизировать текущее время с устройством для отображения на экране. Используйте Установить время для передачи текущего времени компьютера на устройство.
- Изменить формат времени: Изменить формат времени между 24 и 12 часами. Индикатор AM/PM будет отображаться автоматически. Используйте 12-часовой флажок чтобы изменить формат и нажмите Отправить конфигурацию.
- Изменить режим отображения: Вы можете настроить устройство на отображение часов, температуры, влажности, процента заряда батареи или напряжения.
- Изменить единицу измерения температуры: Переключение между градусами Фаренгейта (F°) и Цельсия (C°). Используйте раскрывающийся список для выбора единицы измерения и нажмите Отправить конфигурацию.
- Добавьте к измерению два десятичных знака: Работает только с рекламой BLE, а не с экраном.
- Добавить смещение температуры и влажности: Вы можете ввести значение для исправления смещения отображаемой температуры или влажности. Например, ввод
-1.4
уменьшит температуру на1.4°C
. - Добавьте наклон температуры и влажности: Если показания датчика постоянно слишком высокие или слишком низкие в диапазоне температур, вы можете применить коррекция наклона вместо целочисленного смещения для регулировки этого. Если датчик считывает температуру, которая постоянно на 2% ниже, вы можете установить коэффициент наклона 1.02 увеличить все показания температуры на 2%.
- Изменить интервал рекламы Bluetooth: Вы можете установить интервал Bluetooth-рекламы, чтобы контролировать частоту, с которой устройство передает свои данные. Значение по умолчанию — 2500 мс, рекомендуемое — 5000 мс.
- Изменить интервал измерения: Вы можете установить интервал измерения рекламы, чтобы контролировать, как часто устройство передает свои данные. Интервал измерения в X раз больше интервала рекламы. Если для интервала рекламы установлено значение 5000 мс, установите его на 1, чтобы измерять каждые 5 секунд.
- Изменить тип рекламы: Устройство поддерживает несколько форматов рекламы Bluetooth, и вы можете выбирать между Xiaomi, ATC, Custom, BTHome v2 и зашифрованными форматами. Формат Xiaomi является типом рекламы BLE по умолчанию, тогда как PVVX (пользовательский) необходимо установить для изменения интервала рекламы и измерения.
- Изменить смайлик/индикатор комфорта: Вы можете выбрать статичный смайлик или воспользоваться режимом «Комфорт», в котором смайлик меняется в зависимости от текущей температуры и влажности.
- Установите параметры комфорта: Вы можете изменить нижний (Lo) и верхний (Hi) диапазоны для температуры и влажности, которые будут интерпретироваться как зона комфорта. Смайлик появится, когда значения будут находиться в пределах определенного диапазона.
- Изменение мощности передачи RF: Установите мощность передачи от
-20 dB
к+10 dB
. Более высокие значения дБ будут разряжать батарею быстрее. - Включить LE Long Range: Если ваше устройство находится далеко от адаптера Bluetooth, включите его, чтобы увеличить диапазон рекламы. Пользовательский компонентный пассивный BLE-монитор не поддерживает Bluetooth 5.0 (LE Long Range).
Однако настоящим преимуществом BLE Long Range является его способность более эффективно проникать сквозь стены, поддерживая связь на расстоянии до 200 метров в помещениях. Это делает его идеальным, если вы планируете использовать Xiaomi Thermometer 3 вдали от вашего Bluetooth-адаптера. Если он вам нужен, лучше его выключить и сэкономить заряд батареи.
Добавление термометра Xiaomi 3 в Home Assistant
С помощью пользовательской прошивки PVVX существует множество способов использования MJWSD05MMC с Home Assistant. Лично я предпочитаю использовать плату ESP32, прошитую ESPHome. Прошивка PVVX имеет свою собственную Интеграция ESPHome, что значительно упрощает задачу.
Вот базовая конфигурация добавления термометра Xiaomi Thermometer 3 в Home Assistant с помощью ESPHome:
# Example configuration entry
esp32_ble_tracker:
ble_client:
- mac_address: A4:C1:38:BF:86:2E
id: xiaomi_thermometer_3
sensor:
- platform: pvvx_mithermometer
mac_address: A4:C1:38:BF:86:2E
temperature:
name: "Xiaomi Thermometer 3 Temperature"
humidity:
name: "Xiaomi Thermometer 3 Humidity"
battery_level:
name: "Xiaomi Thermometer 3 Battery-Level"
battery_voltage:
name: "Xiaomi Thermometer 3 Battery-Voltage"
Термометр Xiaomi Thermometer 3 можно купить на AliExpress.
Алиэкспресс 1 | Алиэкспресс 2 | Алиэкспресс 3