Восстановление камер на процессорах SigmaStar с помощью SNANDER

OpenIPC

Прислали как-то для отвязки от Ростелеком несколько камер DH-IPC-K42LB. Правда одна из них оказалась вовсе даже DH-IPC-K35AP и с ней пришлось разбираться отдельно, но она хотя бы была живой, а все DH-IPC-K42LB оказались “кирпичиками”. При подаче питания индикатор камеры загорается красным цветом и всё. Индикатор PoE порта коммутатора горит, а линка нет. При подключении через UART выдаёт в консоль несколько прямоугольников, что даёт надежду. Короче, пришлось разбираться с восстановлением.

Парой месяцев ранее сам окирпичил одну камерку – другую, но на том же процессоре и спросил совета в группе OpenIPC users, за что камрадом @FlyRouter был отправлен в Вики проекта, где соответствующая статья имеется. Взглянул – увидел, что там про Linux и немного приуныл, а камерку отложил до лучших времён.

Сейчас же пришлось вернуться к этой теме. Потыкался, потыкался, но зашёл в тупик и опять пошёл за помощью туда же. После нескольких чётких указаний камрада @dimerrr всё завелось и полетело!

Поскольку автор этой мегаполезной утилиты не остановился на достигнутом и сделал Linux-версию гораздо проще в установке, да ещё и произвёл Windows-версию, то предыдущая версия статьи давно стала не актуальна. Сначала хотел написать новую, но потом решил исправить старую, дабы не плодить мусор. Вступление с предысторией оставил, а ниже всё переписал

Подготовка

В качестве программатора будем использовать CH341A, который умеет в I2C.

  • GND -> GND (PIN 1-4,7)
  • TX -> SDA I2C (PIN 5)
  • RX -> SCL I2C (PIN 6)

Это железка, но нужен ещё соответствующий софт и правильный драйвер. Софт загружаем из репозитория на GitHub. В архиве лежит, собственно, сам snander.exe и драйвер.

Проверяем, что CH341A находится в режиме программатора и подключаем в соответствии со схемой. Подключаем его и к USB-порту компьютера.

Драйвер

Прежде всего нужно установить драйвер. Если уже пользовались этим девайсом ранее, то в системе он определяется как параллельный интерфейс.

В данном случае это нам не подходит и нужно установить драйвер из архива.

SNANDER

snander – программа консольная. Можно пользоваться прям в консоли или PowerShell, но сам предпочитаю Far Manager. Для отображения ключей вводим команду snander без параметров.

Вводим команду snander -i и если на камеру не подано питание, то увидим только, что программа нашла CH341A, а если подано, то и характеристики флешки.

Если результат выполнения команды выглядит как на скрине, значит всё подключено верно и можно двигаться дальше.

Выгрузка дампа

Нужный софт установлен, железо подключено – можно делать резервную копию и заливать новый загрузчик. В случае если камера уже “кирпич”, данное действие большого смысла не имеет, но почему бы и нет? Мало ли – вдруг там есть что-то полезное и это удастся вытащить. Правда долго это всё…

snander -a 0x000000 -l 0x8000000 -r dump.bin

Прошивка

Как известно, у Дахи загрузчик состоит из двух частей, поэтому кладём бинарники в тот же каталог и записываем их по соответствующим адресам, которые берём из заголовков файлов. Для разных моделей адреса, само собой, будут отличаться. Подробнее об этом можно прочитать в статье Восстановление камер Dahua.

snander -a 0x000000 -l 0x200000 -e
snander -a 0x000000 -l 0x200000 -w dhboot-min.bin -v
snander -a 0x340000 -l 0x60000 -e
snander -a 0x340000 -l 0x60000 -w dhboot.bin -v

Загрузчик прошит, можно отключать питание, переводить программатор в режим TTL, переключать коннекторы и запускать консоль. Дальнейшие действия описаны в статье Отвязка от Ростелеком камеры DH-IPC-K42LB.

Оцените статью
( 2 оценки, среднее 5 из 5 )
МихаТроник
Добавить комментарий

  1. Serg

    Отличная наработка. У меня на руках 2 камеры на этом процессоре померли, после обновления. Ни в какую не стартуют, даже со снятой с донора флешкой. Возможно сам проц с подписью. Разница только умерли – рынок чисто китай, с доноры- европа.

    Ответить
    1. mixatronik автор

      Вообще разработчик допилил инструмент и теперь работа со snander стала намного проще. И под винду появилась сборка. Обновлю статейку в ближайшем будущем.
      А шина видится snander-ом?

      Ответить
      1. Serg

        Да, шина видится. Если я правильно даташиты на процессор видел и правильно понял, сам проц ssc327de имеет защиту. С камерами РТшными с такой проблемой не попадались, если совсем убиты до появления snader я поднимал дампом, а потом правил переменные.
        А вот оригинальные камеры Dахуа совсем не хотят.
        PS 42 и 46 камеры – считаю самые удачные.

        Ответить
        1. mixatronik автор

          Я Дахи как-то вообще недолюбливаю. Хики больше нравятся.

          Ответить
  2. sergol2

    Добрый день. А точки подключения те же что и ttl или надо искать другие?

    Ответить
    1. mixatronik автор

      В статье схема есть так-то. Правда статья устарела. Автор допилил софтину и теперь всё просто и элегантно без всяких плясок с пакетами.

      Ответить
  3. Мирослав

    Доброй ночи! Вы не подскажите в чем мб дело, ввожу в консоли первую команду, как у вас на скрине появляется окно, потом ввожу второе и уже ошибка вылазит, подскажите мб в чем проблема? Подключено все верно как у вас на фото
    Usage:
    -h display this message
    -p select programmer device (mstar, ch341a)
    -s enable i2c fast speed mode (for mstar programmer)
    -q query connected i2c devices (for mstar programmer)
    -d disable internal ECC (use read and write page size + OOB size)
    -o manual set OOB size with disable internal ECC (default 0)
    -I ECC ignore errors (for read test only)
    -k Skip BAD pages, try read or write in to next page
    -L print list support chips
    -i read the chip ID info
    -e erase chip (full or use with -a [-l])
    -l manually set length
    -a manually set address
    -w write chip with data from filename
    -r read chip and save data to filename
    -v verify after write on chip

    C:\Windows\System32>D:\snander.exe -i
    SNANDer – Spi Nor/nAND programmER 1.8.0 by McMCC

    Error opening usb device [1A86:5512]
    Programmer device not found!

    Ответить