Программное восстановление ZigBee устройств Aqara/Xiaomi
Замечено, что некоторые устройства (роутеры) подвержены программному сбою. Перезагрузка или удерживание кнопки для входа/выхода из сети проблемы не решает. Признаками программного сбоя могут быть:
- Индикация присутствует, нет реакции на кнопку (клавиши, входы);
- Устройство не подключается к сети;
- Индикация отсутствует, нет реакции на кнопку. По “железу” полный порядок;
Ранее была опубликована статья по ремонту привода штор. (ссылка) Способ универсальный, стирающую прошивку можно заливать в другие устройства, но это более трудоемкий процесс по сравнению с описываемым.
В версии May 17 2022
JN5169-monitor добавлены функции: стирания PDM, стирание EEPROM и восстановление MAGIC NUMBER. Подробно как работает monitor написано здесь.
Стирание PDM и стирание EEPROM различаются тем, что первая производит очистку памяти функциями “файловой системы”, а вторая стирает память вместе с “файловой системой”.
Функция восстанволения MAGIC NUMBER нужна для возврата работоспособности девайса без процедуры перепрошивки памяти микроконтроллера JN5169.
Шаги
- Разберите устройство и подключите USB-UART адаптер к пинам порта. Распиновку для некоторых устройств можно найти здесь;
- Переведите JN5169 в режим bootloader замкнув вывод /BOOT на GND и подав питание;
- Скачайте проект JN5169-monitor;
- В папке
/wire
найдите скриптupload.py
. Откройте его в текстовом редакторе и укажите правильный номер порта (port=’COMx’,); - Запустите скрипт. При правильном подключении и настройке Вы увидите следующий результат:
- Перезагрузите устройство в нормальный режим (высокий уровень /BOOT);
- Подключитесь к последовательному порту с помощью Putty или подобной программы. Параметры порта
115200 8n1
; - Нажмите Enter. Вы увидите сообщение:
- Нажмите на клавиатуре последовательно .p (символ точка, символ ‘p’). Эта команда выполнит стирание PDM.
- Нажмите на клавиатуре последовательно .r (символ точка, символ ‘r’). Эта команда вернет устройство в рабочее состояние.
Если после перезагрузки устройство не заработало, то либо это был не программный сбой, либо в процессе восстановления что-то пошло не так. В любом случаи обращайтесь в Telegram-чат, постараемся помочь.