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

TLSR8251F512ET24 + E-Inc display + термометр = MHO-C401 Bluetooth термометр

geo-mesh

New member
AlexNEMO, pvvx Могли бы вы и мне помочь с "оживлением" MHO-C401? Я новичок и во всем не разбираюсь. Но у меня есть USB UART TTL преобразователь и окирпиченый MHO-C401 - не "Azaton" (не видит блютус, заморожены показания на дисплее).
Достаточно ли мне припаять контакты по схеме что на фото (TlsrComSwireWriter) к распиновке (без RST) что указана у вас на фото и подключить к UART который есть у меня? Если мой UART не подходит то какой посоветуете приобрести?
Кто-то знающий говорил что теоретически еще и чип нужно ввести в режим программирования. Как это делается и нужно ли это в моем случае? Буду так-же пробовать прошить через "TLSR825x USB-COM Flash Writer v0.2".

Так-же не могу понять для чего на моем UART сбоку 3-pin с перемычкой? На современных UART PL2303 такого вроде нету. Если объясните - буду благодарен.
3.jpg

TlsrComSwireWriter
4.jpg
01 — копия.jpg
 

Вложения

  • 697.2 KB Просмотры: 22

pvvx

Активный участник сообщества
Так-же не могу понять для чего на моем UART сбоку 3-pin с перемычкой? На современных UART PL2303 такого вроде нету.
Сбоку платы - скорее всего переключение интерфейса (сигналов RX/TX) на 5V.
С краю (у подписей RX,TX) перемычка не нужна.
Достаточно ли мне припаять контакты по схеме что на фото (TlsrComSwireWriter) к распиновке (без RST) что указана у вас на фото и подключить к UART который есть у меня? Если мой UART не подходит то какой посоветуете приобрести?
Кто-то знающий говорил что теоретически еще и чип нужно ввести в режим программирования. Как это делается и нужно ли это в моем случае? Буду так-же пробовать прошить через "TLSR825x USB-COM Flash Writer v0.2".
1. Необходимо знать какую версию bin файла прошивать в зависимости от версии MHO-C401:

2. На Windows, если используется программа USBCOMFlashTx.html, то нужно только два провода: TX->SWS и GND->GND. И включить питание термометру (можно и от USB-COM переходника с пина 3.3V)... Пробовать пока не запустится - такой упрощенный прошивальщик не проверяет что там прошилось. Из-за этого, если запустился, желательно перепрошить в TelinkMiFlasher.html
 

pvvx

Активный участник сообщества
Если в термометре прописано что-то совсем страшное, то в USBCOMFlashTx.html выставить "Atime:" побольше и сразу при нажатии кнопки "Write to Flash" успеть подключить провода SWS и 3.3V к термометру за выставленный период "Atime" (время активации). Последовательность подключения - первым SWS, потом 3.3V, или одновременно. Но это требуется редко, если записано совсем что-то кривое ...
"Baud" переключать нежелательно.
 

geo-mesh

New member
Спасибо за разъяснения!
1. Необходимо знать какую версию bin файла прошивать в зависимости от версии MHO-C401:
У меня версия "not Azarton" Видимо из-за того что в датчик "not Azarton" прошилась "Azarton" - дисплей завис. После чего один датчик я восстановил через TelinkMiFlasher.html указав оригинальную прошивку первой версии Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010.bin затем, в MiHome обновился до актуальной версии прошивки. А вот у второго отвалился блютус и показания на дисплее заморозились. Я подозреваю что это из-за того что там стояла слабая батарея (на 50% заряда) - поставил в другой датчик что-бы проверить.
Снимок экрана 2023-09-09 в 16.05.37_3.png
22.jpeg

Еще интересен такой вопрос: данный прошивальшик USBCOMFlashTx.html, заточен под версию MHO_C401_v43.bin? Или же я могу сразу пытаться прошить его оригинальной прошивкой Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010.bin?

На Windows, если используется программа USBCOMFlashTx.html, то нужно только два провода: TX->SWS и GND->GND
Стоит ли пробовать прошивать программой USBCOMFlashTx.html на macOS по той же схеме?
Диод 1.. 1,8 кОм (как на схеме) нужно использовать в любом случае?
 

pvvx

Активный участник сообщества
Еще интересен такой вопрос: данный прошивальшик USBCOMFlashTx.html, заточен под версию MHO_C401_v43.bin? Или же я могу сразу пытаться прошить его оригинальной прошивкой Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010.bin?
Для любого чипа с TLSR825x и любой прошивки.
Стоит ли пробовать прошивать программой USBCOMFlashTx.html на macOS по той же схеме?
Диод 1.. 1,8 кОм (как на схеме) нужно использовать в любом случае?
Не диод, а резистор. И для USBCOMFlashTx.html никаких дополнительных деталей не нужно.
Это нужно для других утилит эмуляторов Telink-1wire с USB-COM адаптерами. Плюс необходимо чтобы вход RX на адптере был без включенного на этот вход светодиода...
Я никогда не проверял и не рассчитывал на работу в "macOS" свои утилиты, т.к. не использую ничего от Apple с BLE. Apple не дружит со стандартами BT/BLE и всё норовит сделать по своему, вводя множественные ограничения от стандарта, чтобы пользователи побольше помучались и для ограничения использования сторонних и альтернативных устройств...
 
Последнее редактирование:

pvvx

Активный участник сообщества
Я не знаю, есть ли поддержка расширений в Google Chrome эксплорерах для доступа к USB. Последний раз, когда смотрел, это было только у Windows.
Да и счас такое время - неизвестно будут ли работать все эти Os (mac/win/linux/android) уже завтра в России, т.к. глобальный интернет может стать локальным 🤪 Процесс уже идет увеличивающимися шагами с той (их) стороны…
 

geo-mesh

New member
Не диод, а резистор.
Не знаю почему я написал диод, но имел в виду резистор. Судорожно перепроверил то ли я заказал на OZON 😅
В общем, если я правильно понял то можно без резистора.
Сразу начал ставить на macOS виртуальную машину Windows 10. Драйвера PL2303 стали автоматически (дата драйвера вроде 22.02.2023)
Не открывало порт, выскакивало в логе "There was an error opening the serial port: NetworkError: Failed to execute 'open' on 'SerialPort': Failed to open serial port."
Пробовал установить более старые дрова 2009 года и 2021 - то же самое сообщение в логе.
Отчаялся и решил попробовать в macOS (Intel) через Google Chrome. И о чудо! - "USB-COM opened."
Пробую прошить (TX - моргает синим) Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010.bin, думал что сообщение "Write 82036 bytes in to Flash..." - это конец прошивки и отключил провода пробуя подключать к Блютус (показания дисплея заморожены). Не видит BLE. Пробую еще раз по схеме "Atime 18 sec" + подключить провода. Пока прошивалось - я понимаю что дилетант и сделал до этого глупость, не дождавшись конца прошивки ибо там где "Flash Write 256 bytes at 0x0XXXXX" значения меняются. Жду пока закончится прошивка, сообщение "Done", "Soft Reset MCU" отключаю, пытаюсь найти через Блютус - результата нет.
Почитал на гитхабе что кто-то исправлял заморозку дисплея "FullFlash" прошивкой, но видимо у них BLE на термометре работал (у меня нет) и пробую теперь залить FullFlash_MHO-C401_v1.0.0_0010.bin по проводу. Может это и неправильно, но уже теряется надежда что смогу его восстановить.
Если не получиться "FullFlash" стоит пробовать через Windows ПК? Или я его окончательно угробил отключив во время OTA прошивки? Может другой, более функциональный UART-преобразователь приобрести с заделом на будущее?

т.к. глобальный интернет может стать локальным
Про это знаю, сам недавно на себе почувствовал тест-блокировку VPN, но вроде еще есть лазейка в виде "ShadowSocks". Если вы об этом.
 

pvvx

Активный участник сообщества
Если не получиться "FullFlash" стоит пробовать через Windows ПК?
Да. Или другие на Python в Linux.
Или я его окончательно угробил отключив во время OTA прошивки?
При наличии любого работающего программатора ничего не угробить.
Можно стереть только текущую "прошивку".
Может другой, более функциональный UART-преобразователь приобрести с заделом на будущее?
В данном случае, для эмуляции Telink SWire (с чтением) годятся только дешман китайские USB-UART.
Ни один из других чипов USB-UART типа FTDI или прочих - не годится.
 

andrew200010

New member
Здравствуйте! При прошивке по воздуху с 0014-й на 0016-ю оригинальную прошивку через Mi Home, умер MHO-C401, на дисплее замерзли последние показания, по ВТ не видится. Пробую перепрошить с помощью USBCOMFlashTx, но безуспешно. Пробовал и Full Flash Original Firmware MHO-C401 v. 1.0.0.0010 (512 КБ ) и альтернативную прошивку MHO_C401_v46 ( 82 КБ ). Вроде все прошивается, но девайс не оживает. Подскажите, пожалуйста, что делаю не так? Уже раз тридцать пробовал в разных браузерах и драйвер PL2303 на более старые версии откатывал - безрезультатно.
 

Вложения

pvvx

Активный участник сообщества
MHO-C401 есть в трех вариантах (а может и более).
Основные отличия - разные экраны и контроллеры у них.
И разные производители...
В ATC_MiThermometer поддерживаются все варианты. Но в двух модификациях прошивок MHO-C401 и MHO-C401N, где N - новая версия E-Ink экрана.
Оф. прошивки тоже есть разные...
Как прошить с помощью USBCOMFlashTx.html описано в README - the-usb-com-adapter-writes-the-firmware-in-explorer-web-version

Авто-перевод на русский:

Адаптер USB-COM записывает прошивку в проводнике. Веб-версия.
  • Подключайте только провода TX-SWS и GND.
USBCOMFlashTx.html

USBCOMFlashTxHtml

webpgm.png

В сложных случаях, когда чип содержит неизвестное FW, необходимо при «активации» использовать сброс чипа или подачу питания.

atime.png

При этом учтите, что микросхема может питаться от выхода ТХ. Решается это подключением TX и +Vbat при "активации".
 

pvvx

Активный участник сообщества
Для Zigbee прошивки пока есть вариант только к MHO-C401N (новых, последних пару лет производства, а не для 2020).
У старого MHO-C401 очень медленный контроллер E-Ink и сама панель E-Ink, по старым древним технологиям - требует периодических обновлений зарядов и кушает энергию на перерисовку более любого LCD.
Произведен именно после того, когда все трепались о том, что E-Ink самый малопотребляющий тип экранов :) :)
Да и все новые E-Ink тоже кушают более любого LCD...
 

andrew200010

New member
Уважаемый pvvx, выше в теме вы писали, что
для эмуляции Telink SWire (с чтением) годятся только дешман китайские USB-UART.
Ни один из других чипов USB-UART типа FTDI или прочих - не годится.
у меня как раз дешманский на чипе PL2303HX, но на нем не выведен сигнал DTR/RTS
Есть ли смысл купить адаптер на чипе FT232, например, такой
чтобы была возможность подключения DTR/RTS ?
 

as7sa

New member
У меня была такая же проблема. Три месяца мучался. С начала тоже пробовал через провода PL2303HX , но у меня не получилось прошить, за то блютуз заработал. Я свой раскирпичил с прошивкой Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010 (87 КБ ) Качал с https://giters.com/pvvx/ATC_MiThermometer#flashing-or-updating-the-firmware-ota
Вставил свежую батарейку и через Chrome с включенным VPN зашел https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html
Блю Туз нашолся прошил и гаджет ожил. К Mi Home привязаться не смог, так как прога выдавала кривые ключи. Выход нашёл такой. Сначала через https://giters.com/pvvx/ATC_MiThermometer#flashing-or-updating-the-firmware-ota один раз прошил альтернативную прошивку MHO-C401 2020-2021 Custom Firmware Version 4.5 через неё удалил все ключи. Вторым этапом через https://atc1441.github.io/TelinkFlasher.html прошил без ввода ключей заново Xiaomi MHO-C401 Original Firmware v1.0.0_0010 все заработало и привязался к Mi Home.
 

Вложения

andrew200010

New member
У меня была такая же проблема. Три месяца мучался. С начала тоже пробовал через провода PL2303HX , но у меня не получилось прошить, за то блютуз заработал. Я свой раскирпичил с прошивкой Original_OTA_Xiaomi_MHO_C401_v1.0.0_0010 (87 КБ ) Качал с https://giters.com/pvvx/ATC_MiThermometer#flashing-or-updating-the-firmware-ota
Вставил свежую батарейку и через Chrome с включенным VPN зашел https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html
Блю Туз нашолся прошил и гаджет ожил. К Mi Home привязаться не смог, так как прога выдавала кривые ключи. Выход нашёл такой. Сначала через https://giters.com/pvvx/ATC_MiThermometer#flashing-or-updating-the-firmware-ota один раз прошил альтернативную прошивку MHO-C401 2020-2021 Custom Firmware Version 4.5 через неё удалил все ключи. Вторым этапом через https://atc1441.github.io/TelinkFlasher.html прошил без ввода ключей заново Xiaomi MHO-C401 Original Firmware v1.0.0_0010 все заработало и привязался к Mi Home.
Спасибо! Буду пробовать.
 

andrew200010

New member
С начала тоже пробовал через провода PL2303HX , но у меня не получилось прошить, за то блютуз заработал
А какой прошивкой прошивали, чтобы блютуз заработал? Я уже все перепробовал...
 

pvvx

Активный участник сообщества
Практически любая прошивка включает BT. Не будет отображения на экране и может не быть данных о температуре и влажности от датчика.
Т.е. если прошить ATC_xxxx.bin в любой чип TLSR825x, то будет BT и OTA.
Немного хуже с прошивками предназначенными для термометров с E-Ink экранами. В них используется ожидание контроллера E-Ink, и, если, не на том GPIO и/или не "1" сигнал готовности от контроллера E-Ink, то возможны нюансы.
Т.е. в ваш MHO можно прошить прошивку от LYWSD03MMC, или, лучше - TLSR825x_OTA_Flash_Hacker
TLSR825x_OTA_Flash_Hacker лучше, по причине того, что в нем нет никаких опросов GPIO и этой прошивке безразлично в каком TLSR825x она работает.
И вторая причина - эта прошивка имеет меньший размер и вероятность загрузиться правильно из программатора без обратной связи USBCOMFlashTx.html у неё больше.
 

pvvx

Активный участник сообщества
В прошивках всё давно предусмотрено для тех, кто любит поиграть в прошивальщика и заливает по OTA или через программатор всё подряд в термометры... BT c OTA заработает. Но некоторые варианты всё же не совместимы.
Но это не ваш случай.
 

pvvx

Активный участник сообщества
Можно залить и прошивку для Zigbee. Будет OTA Zigbee. Но у неё размер больше и вероятность сбоя при использовании простейшего программатора больше. И неизвестно где будет кнопка для "привязки" к координатору... :)
Для уверенности в прошивке используйте другие программаторы.
Более сложный программатор-эмулятор Telink-Swire с переходом на UART связь: TlsrComProg825x
Полнофункциональный аппаратный Telink-Swire программатор: TLSRPGM
Или программатор от Telink.
 

andrew200010

New member
Спасибо за помощь, но так и не получилось поднять ВТ, перепробовал все прошивки. Заказал новый адаптер на CH340, других идей нет...
 
Сверху Снизу