Ломаем прошивки осциллографа OWON SDS-xxxx

Типо эксперимент, чтоб не думать мучительно, куда писать очередную фишку.

Postby deathsoft » 18 Dec 2013, 20:30

Собственно идея шить более новые версии "OS" в более старые версии железа (напрямую это делать нельзя из за различия в прошивке FPGA и возможно из за различий в аналоговой части). Зачастую более новые версии "OS" содержат новые программные функции которые от железа никак не зависят, хотелось бы иметь эти функции на более старом железе (например функцию измерения тока (пересчет падения напряжения на резисторе в ток, при этом шкала сразу градуируется в амперах) и функцию управления осциллографом с компа через USB/LAN).

Прошивки для осциллографов OWON серии SDS распространяются в виде самораспаковывающегося архива, внутри лежат подкаталоги с моделями осциллографов:
Code: Select all
SDS6062
SDS7102
SDS8102
...

а также следующие файлы:
Code: Select all
config.xml - список моделей и версий железа по которым выбирается версия прошивки для обновления
public.key - ключ для расшифровки прошивок (на название файла внимание не обращайте, алгоритм шифрования симметричный).



В каждом подкаталоге лежат файлы вида:
Code: Select all
OS_Hx

где x - версия железа осциллографа. Файлы OS_Hx являются обычными .zip архивами, внутри лежат следующие файлы (могут быть не все):
Code: Select all
fp - прошивка FPGA xilinx
hz - назначение неизвестно
me - меню
help - справка
os - собственно основная прошивка (программа-осциллограф) (для процессора s3c2416(arm926EJ))
readme.txt - содержит список файлов и их размер

Все файлы внутри архива лежат в зашифрованном (AES) виде. Ключ для расшифровке лежит в файле public.key в томже каталоге где лежат подкаталоги с моделями осциллографов.


Для затравки программа на жабе - дешифровщик прошивок.

Запускать (ключ должен быть в текущем каталоге):
Code: Select all
java -classpath . Decryptor имя_файла



Ссылки по теме:
http://www.eevblog.com/forum/testgear/review-of-owon-sds7102/ - тут есть фотографии потрохов данных осциллографов.
http://radiokot.ru/forum/viewtopic.php?f=10&t=70052 - тут описаны недокументированные ключи стандартного прошивальщика (им тоже можно расшифровывать прошивку).
Attachments
decryptor.java
(1.42 KB) Downloaded 608 times
User avatar
deathsoft
 
Posts: 4658
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby deathsoft » 22 Dec 2013, 19:23

Программная переделка SDS8102 в SDS8202 (увеличение полосы пропускания со 100МГц до 200МГц).
Осциллографы SDS8102 и SDS8202 имеют одно и тоже железо, все отличие только в нескольких байтах прошивки, которые указывают модель и ограничивают полосу пропускания входного инструментального усилителя LMH6518.

Для перепрошивки нужно скопировать каталог SDS8202 вместо каталога SDS8102 (старый каталог SDS8102 переименовать), далее выполнить прошивку стандартным способом. (Серийный номер осциллографа после перепрошивки не изменится, т.к. хранится в tx файле который не перепрошивается при апгрейде).
User avatar
deathsoft
 
Posts: 4658
Joined: 07 Apr 2007, 00:58
Group: Registered users


Return to Электроника

Who is online

Users browsing this forum: Google [Bot] and 1 guest

cron