Прошивка для IP-камеры MJSXJ02HL с поддержкой RTSP и MQTT

Логичным продолжением истории с прошивкой загрузчика данного устройства (раз, два и три) стало создание кастомной прошивки с возможностью передачи потокового видео по протоколу RTSP. Хотя данное ПО и основано на оригинальном образе производителя, из него убраны все функции работы с китайскими серверами и полностью переписан код управляющего приложения.

Прошивка загрузчика IP-камеры MJSXJ02HL с помощью USB

Описанный мною ранее способ прошивки загрузчика обсуждаемой камеры не очень удобен для рядового пользователя – необходимо не только вскрывать устройство, но и иметь навыки работы с паяльной станцией. К тому же, для выполнения той инструкции необходим программатор и умение работать с ним. Потратив пару дней на чтение китайских форумов (сомнительное “удовольствие”, скажу я вам) и изучение официальной документации к SDK чипа Hi3518EV300 я нашел более удобный вариант перепрошивки U-Boot (и не только).

Прошивка загрузчика IP-камеры MJSXJ02HL с помощью CH341A

Поиск компактной и недорогой IP-камеры с симпатичным дизайном внезапно для меня оказался трудной задачей. Однако, мне повезло наткнуться на модель MJSXJ02HL от Xiaomi. Отличный бюджетный гаджет (20-30$) сразу привлек к себе стильным внешним видом. Недолго думая заказал одну штуку для тестов. Но, как выяснилось позже, в новых партиях производитель добавил в U-Boot проверку цифровой подписи файлов прошивок. И на этом, казалось, можно было поставить точку, если бы не идея сделать откат загрузчика до предыдущей версии.

Установка zigbee2mqtt на Xiaomi Mi Router 3G (OpenWrt)

Решил немного оптимизировать свою сеть умного дома и перейти с проприетарного SLS на полностью открытый проект zigbee2mqtt. И чтобы избавиться от одного лишнего узла (в случае с SLS это переделанный ZigBee шлюз от Xiaomi), задумал все настроить на борту Xiaomi Mi Router 3G.

Расширение памяти на Xiaomi Mi Router 3G при помощи USB флешки (OpenWrt)

При установке “больших” пакетов на роутер можно столкнуться с проблемой нехватки свободного места. Справиться с этой проблемой можно путем переноса файловой системы на внешний USB накопитель.

Компиляция Node.js из исходников для Xiaomi Mi Router 3G (OpenWrt)

Потребовалось мне установить Node.js на свой Xiaomi Mi Router 3G, прошитый под OpenWrt. В дефолтных репозиториях необходимого пакета не оказалось. Немного погуглив, были найдены всего пара источников (раз, два) в которых присутствовали нужные мне ipk файлы. Но, в первом случае они падали с ошибкой “Illegal instruction” (как позже выяснилось, для их работы необходимо пересобрать ядро с поддержкой MIPS FPU Emulator, о чем я расскажу ниже), а во втором версии были слишком старые (v8.17.0) и меня не устраивали (а если бы и устраивали, то я снова бы столкнулся с предыдущей ошибкой). Однако, эти поиски привели меня к проекту nxhack/openwrt-node-packages, бинарники которого можно было собрать самостоятельно, что я и сделал. Делюсь инструкцией по сборке (как и получившимися ipk файлами) со всеми желающими.

Реле Xiaomi в качестве термостата для газового котла Baxi ЕСО-4S

Согласно официальной инструкции, у газового котла Baxi ЕСО-4S есть возможность подключения внешнего термостата. В качестве управляющего устройства можно использовать любое реле с “сухими контактами”. Однако, изучив электрическую схему, я пришел к выводу, что Xiaomi Aqara Wireless Relay можно подружить с котлом, применив классический способ его подключения.

Xiaomi Aqara Wireless Relay: ремонт

Во время подключения реле от Xiaomi совершил ошибку – забыл подключить перемычку между выводами “L” и “IN”. Как итог – глухой хлопок и неработоспособное устройство в руках. Вооружившись паяльником приступаем к починке…