Внимание! Данная версия мануала является устаревшей и находится в процессе доработки. Выполнение действий может повредить Ваше устройство!
Внимание! Любые вносимые изменения лишают вас гарантии на данное устройство! Ответственность за любой ущерб, возникший в результате любых действий пользователя, автор не несет!
Нам понадобятся:
- Компьютер с USB портом
- Тестер или вольтметр
- UART переходник на 3,3V , подобный этому
Все действия будут показаны на ОС Linux (Kubuntu), если Ваша ОС отличается, пожалуйста обратитесь к специализированным инструкциям по настройке UART в вашей ОС.
Порядок работы:
- Внимательно изучите UART переходник. Найдите контакты
GND
,TX
,RX
. Если ваш переходник поддерживает функцию выбора рабочего напряжения, убедитесь, что он переведен в режим работы 3,3V! - При помощи тестера убедитесь в том, что Ваш UART переходник выдает напряжение 3.3V. Для этого выполните замеры между контактами
GND
иTX
, а такжеGND
иRX
. Не используйте переходник, если величина напряжения составляет 5V! Это убьет Вашу камеру! - Подключите UART переходник к порту Вашего компьютера. Необходимо узнать точку монтирования переходника в Вашей операционной системе.
- Используйте терминал. Выполните команду
lsusb
и внимательно изучите вывод. Найдите Ваш UART переходник. - Используйте терминал. Выполните команду
dmesg | grep attached
от суперпользователя. Сравните выводы обеих команд и найдите точку монтирования переходника. Для примера воспользуйтесь скриншотом ниже: - Итак, мы получили, что наше устройство монтируется по адресу
/dev/ttyUSB0
. В вашем случае адрес монтирования может отличаться. Этот адрес мы будем использовать при подключении через UART. Будьте внимательны, при подключении нескольких подобных устройств, а также при некорректном отключении, адрес монтирования может меняться.
В настоящее время камера поддерживает только прошивку через UART адаптер, поэтому для выполнения операций нам придется разобрать камеру. Помните, что это лишит вас гарантии производителя!
Нам понадобятся:
- Само устройство
- Фен или другое нагревательное устройство
- Плоский тонкий предмет, например канцелярский нож
- Длинная тонкая отвертка x-type
- Аккуратность
Итак, преступим:
- Аккуратно прогрейте лицевую часть камеры (там, где объектив)
- При помощи канцелярского ножа или иного заостренного предмета аккуратно подденьте лицевую часть. Помните, под лицевой частью находятся важные провода, не повредите их!
- Двигаясь по кругу, аккуратно отделите лицевую часть от корпуса камеры. Помните о том, что она соединена проводами с главной платой камеры!
- Под низом вы найдете два болта, котрые необходимо открутить. После этого аккуратно разъедините половинки корпуса камеры. Будьте осторожны, не причините себе вреда и не повредите соединительные провода, а также детали камеры!
- Отверните еще несколько винтов, освободив главную плату устройства. Также освободите type С порт
Внимательно изучите камеру, найдите необходимые элементы, потому что на следующих этапах нам придется физически взаимодействовать с некоторыми из них. Производитель может менять некоторые компоненты устройства без уведомления потребителей. По этой причине две камеры, выпущенные в разное время, могут иметь разную начинку и отличающееся программное обеспечение. Поэтому еще раз внимательно изучите компоненты, убедитесь что они соответствуют тем, что указаны в данном руководстве. При возникновении вопросов, пожалуйста обратитесь в наш Телеграм-канал
Главная плата (вид с лицевой стороны).
Самая важная для нас часть на ней - чип памяти.
Он имеет численно-буквенную маркировку. Убедитесь что чип на вашей плате имеет подобную маркировку! Число 128 означает число бит памяти. 128/8=16, значит наша память 16 Мб. Выбирать прошивку нужно под этот тип памяти!
Главная плата (вид с тыльной стороны).
Здесь расположен беспроводной модуль, центральный процессор и различные другие компоненты. Но самое важное для нас - три контакта с отверстием, расположенные рядом в правой верхнем секторе платы. Именно через них мы подаем управляющие сигналы на камеру.
В нашем случае он имеет численно-буквенную маркировку. Ingenic T31N. Буква N - серия. Она указана во втором ряду. Подробнее
Для того, чтобы присоединить UART-переходник к плате камеры, нужно воспользоваться проводами с клеммами. Они могут идти в комплекте с UART-переходником. Однако их можно заменить аналогичными. Похожие типы соединения встречаются во множестве элетроники. Второй конец провода к плате стоит припаять, чтобы контакт не исчез в нужный момент. Будьте внимательны при пайке, не повредите элементы схемы и не замкните контакты между собой!
Соедините провода, идущие от UART-переходника с платой так, как показано на рисунке. Если вы все сделали правильно, камера будет показывать лог во время загрузки. Проверим это.
Для начала нам потребуется установить программу-терминал для отправки управляющих команд с камеры и приема обратных сигналов. В ОС linux достаточно большое количество терминалов, вы можете выбрать себе наиболее удобный. Среди них можно выделить screen, picocom, minicom, cutecom. Последний имеет GUI.
Установите программу-терминал:
sudo apt install <ИМЯПАКЕТА>
Команды будут приведены для программы picocom.
Для начала ознакомьтесь с возможностями программы и синтаксисом команд:
picocom --help
Подключите UART-переходник и выполните в терминале команду:
picocom -b 115200 /dev/ttyUSB0
где опция -b
задает управляющую частоту, а /dev/ttyUSB0
- адрес точки монтирования, который мы узнали ранее.
Если вы все сделали верно, программа напишет, что терминал готов к работе. Ознакомьтесь с управляющими командами терминала, нажав последовательность клавиш Ctrl+A Ctrl+H
. Для более подробного изучения программы-терминала обратитесь к соответствующим руководствам в сети.
Если вы подадите питание на камеру, то увидите лог загрузки. Попробуйте нажать клавиши, например Enter
и убедитесь, что терминал на них реагирует и отправляет события. Если все сделано верно, можно переходить к следующему пункту.
К сожалению, камера MJSXJ03HL на стоковой прошивке не поддерживает прерывание загрузки через отправку комбинации клавиш. По этой причине прерывание загрузки и получение доступа к консоли загрузчика будет призводиться нами вручную. Для этого необходимо будет замкнуть некоторые контакты чипа памяти. О том, как это сделать, прочтите здесь. Внимательно изучите приведенный выше мануал, найдите чип памяти и нужные контакты, приготовьте то, чем будете замыкать контакты. Все манипуляции придется производить достаточно быстро. ВНИМАНИЕ!!! Всю ответственность за производимые вами действия принимаете на себя! Далее последовательность действий по получению доступа к консоли загрузчика:
- Соедините камеру с UART-переходником
- Соедините UART-переходник c USB портом компьютера.
- Запустите терминал на компьютере, убедитесь что он видит UART-переходник
- Приготовьтесь замкнуть контакты
- Подайте питание на плату
- В окне терминала должен появиться лог загрузки
- Замкните контакты чипа памяти (Это нужно сделать спустя 0,5-1 сек после подачи питания)
- Загрузка должна прерваться. Контакты можно разомкнуть.
- Если вы все сделали правильно, на экране появится консоль U-boot c символом
#
и возможностью ввода. - Введите
help
чтобы вывести список команд, присутствующих в загрузчике
К сожалению производитель для данной камеры сильно граничил возможности U-boot, это создаст нам серию препятствий в дальнейшем, пока мы не прошьем U-boot от OpenIPC. Но сперва нам следует сохранить стоковую прошивку камеры.
Внимание! Не пропускайте этот пункт! Бэкап заводской прошивки позволит вам восстановить работоспособность устройства, если вдруг что-то пойдет не так.
Нам понадобятся:
- Камера в разобранном виде с подключенным UART
- Компьютер
- SD карта емкостью не менее 16 Мб Предварительно рекомендуется ознакомиться с исходной статьей
ВНИМАНИЕ! В ходе следующих манипуляций вся информация с SD карты окажется недоступной, а самой картой нельзя будет пользоваться до форматирования! Все данные, находящиеся на карте будут безвозвратно утеряны!
Карту необходимо вставить в слот камеры. UART-переходник должен быть присоединен к компьютеру, а программа-терминал запущена.
- Прерываем загрузку камеры путем замыкания контактов, попадаем в консоль загрузчика.
- Если SD карта была вставлена после прерывания загрузки, выполните
mmc rescan
- Для начала очистим требуемое пространство для записи туда дампа исходной прошивки:
mmc dev 0
mmc erase 0x10 0x8000
- Теперь вам надо скопировать содержимое прошивки из микросхемы флэш-памяти в оперативную память камеры. Для этого очистите участок оперативной памяти, получите доступ к микросхеме флэш-памяти и скопируйте весь объем флэш-памяти в очищенное пространство оперативной памяти. После чего сохраните скопированные данные из оперативной памяти на карту. Команды вставлять построчно!
mw.b 0x80600000 ff 0x1000000
sf probe 0
sf read 0x80600000 0x0 0x1000000
mmc write 0x80600000 0x10 0x8000
где 0x80600000
- Стартовый адрес для Ingenic T31N.
Извлеките карту из камеры и вставьте в компьютер с ОС Linux. Используя команду dd
, скопируйте данные с карты в бинарный файл на диске компьютера.
dd bs=512 skip=16 count=32768 if=/dev/sdc of=./fulldump.bin
Внимание! Точка монтирования sdc
может отличаться (sda, sdb), в зависимости от подключенного оборудования вашего компьютера.
Для получения прошивки и инструкций, воспользуйтесь автоматическим генератором инструкция для нашего процессора
ВНИМАНИЕ! Lite версия рекомендуется! Все приведенные далее манипуляции описалы для Lite версии
Заполните Требуемые поля и укажите свой MAC адрес.
Сгенерируйте прошивку. Внимательно изучите страницу с прошивкой и инструкциями. К сожалению, производитель не добавил в заводской загрузчик программу tftp, следовательно шить нашу прошивку мы будем по частям и вручную. Перейдите в раздел В качестве альтернативы прошивайте прошивку OpenIPC по частям. и загрузите двоичный файл загрузчика по ссылке. У вас должен получиться бинарный файл u-boot-t31n-universal.bin. Не закрывайте страницу с инструкциями. Она нам позже еще понадобится.
Поместите полученный файл на свою SD карту. ВНИМАНИЕ! Если вы используете ту же самую карту памяти, что и в прошлом пункте, предварительно отформатируйте ее в Файловой системе Fat32 c таблицей MBR (MS-DOS). Не используйте таблицу GPT! Если вы используете ОС Windows - это самое обычное форматирование. Просто подключите карту памяти и Windiows сама предложит ее отформатировать.
Итак, мы имеем нашу камеру, подключенную к UART, в слот которой вставлена карта памяти, отформатированная в Fat32 c бинарным файлом загрузчика на ней. На всякий случай выполним
mmc rescan
и дополнительно проверим, что вы все сделали правильно
fatls mmc 0:1
Должны выйти данные вашей карты памяти. Если вышли какие-либо ошибки, не продолжайте до тех пор, пока они не будут устранены! В противном случае перепрошивка камеры будет возможно только на специальном оборудовании.
В начале введем переменные окружения командой setenv
setenv baseaddr 0x80600000
setenv flashsize 0x1000000
Заводской загрузчик не поддерживает сохранение переменных, поэтому если камера была перезагружена, вводить придется по-новой.
Теперь приступаем к самому ответственному моменту - прошивке U-Boot. Вставляйте команды построчно! Внимательно следите, чтобы команды не возвращали ошибок! Не продолжайте, если что-то пойдет не так, не пробуйте перезагрузить камеру, попросите помощи в нашем Телеграм-канале
mw.b ${baseaddr} 0xff 0x50000
sf probe 0
sf erase 0x0 0x50000
fatload mmc 0:1 ${baseaddr} u-boot-t31n-universal.bin
sf write ${baseaddr} 0x0 ${filesize}
Если всё прошло успешно, то у вас теперь новый загрузчик от OpenIPC, поддерживающий все необходимые команды.
Скомандуйте reset
в консоли загрузчика, камера перезагрузится. Теперь загрузку камеры можно прерывать нажатием комбинации Ctrl+C
Теперь, когда у нас есть загрузчик с нужным набором команд, мы можем прошить остальную часть прошивки. Вернитесь на страницу с инструкциями, которую мы получили в пункте Генерация прошивки Далее в разделе Flash OpenIPC Linux kernel and root filesystem Загрузите архив по ссылке Download OpenIPC Firmware (Ultimate) bundle В нем вы найдете 4 файла: образ корневой ФС и ядро, а также контрольные суммы к ним. Разархивируйте их на вашу карту памяти и поместите ее в слот камеры.
Далее:
- Подключаем UART, запускаем терминал!
- Подаем питание на камеру и быстро останавливаем загрузку нажатием
Ctrl+C
. Попадаем в консоль загрузчика - Проверяем доступ к карте памяти
mmc rescan
4)Вводим переменные окружения и сохраняем их:
setenv baseaddr 0x80600000
setenv flashsize 0x1000000
saveenv
- Переназначаем разделы ПЗУ. Несмотря на то, что у нас 16Mb памяти, использование такой разметки в сочетании с Lite версией позволит получить больше свободного пространства.
run setnor8m
После исполненния программы камера перезагрузится.
- Прошиваем ядро (Команды вводятся построчно!)
mw.b 0x80600000 0xff 0x200000
fatload mmc 0:1 0x80600000 uImage.t31n
sf probe 0; sf lock 0;
sf erase 0x50000 0x200000; sf write 0x80600000 0x50000 ${filesize}
- Прошиваем корневую файловую систему (Команды вводятся построчно!)
mw.b 0x80600000 0xff 0x500000
fatload mmc 0:1 0x80600000 rootfs.squashfs.t31n
sf probe 0; sf lock 0;
sf erase 0x250000 0x500000; sf write 0x80600000 0x250000 ${filesize}
- Скомандуем
reset
и камера перезагрузится с новой прошивкой.
Если вы все сделали верно, в окне терминала появится:
Welcome to OpenIPC
openipc-t31 login:
Введите логин root
, вход без пароля
В полученном поле для ввода скомандуйте
firstboot
Поздравляем с успешной установкой OpenIPC!
ВНИМАНИЕ! Используйте отдельную SD карту для базовых настроек или удаляйте содержимое папки autoconfig после данного шага!
Нам потребуется:
- Компьютер с картридером
- Карточка MicroSD
- Камера
ВНИМАНИЕ!!! После данной процедуры все настройки камеры будут удалены! Если это неприемлимо, или у вас не имеется MicroSD карты - выполните настройку вручную
Скачайте на компьютер и распакуйте на карту памяти содержимое папки flash
Содержимое папки должно быть распаковано в корневой каталог, а структура каталогов и файлов должна быть сохранена!
Вставьте карту памяти в камеру, подайте питание. Камера в автоматическом режими выполнит все предварительные настройки и перезагрузится.
ВНИМАНИЕ! Не забудьте извлечь карту памяти и удалить папку autoconfig или замените карту памяти!
Чтобы камера смогла подключиться к Wi-Fi необходимо в консоли ввести следующие переменные:
(переменные вводятся построчно)
fw_setenv wlandev rtl8188eu-hi3518ev200-qvc-ipc-136w
fw_setenv wlanssid ИМЯ_ТОЧКИ_ДОСТУПА
fw_setenv wlanpass ПАРОЛЬ
Перезагрузите камеру, например командой reboot
После этих манипуляций сеть должна появиться. Войдите в веб-интерфейс и выполните настройки, как описано в статье.
Теперь вы можете управлять камерой через SSH и Web-интерфейс. Аккуратно отсоедините провода от платы. Выполниите сборку камеры. Помните, камера собирается легко, не стоит прикладывать силу. Будьте внимательны и не повредите вашу камеру.
Успехов в использовании OpenIPC!