Есть какие редакторы прошивок для смока ? Хотел бы у x cube ultra, снизить минимально разрешимое сопротивление
19.04.2017, 15:50
Yoti
UnderVape
ты понимаешь, что редакторы - они для графики? А для изменения кода IDA + любой HEX редактор.
21.04.2017, 17:47
Yoti
Мануал по установке и использованию evic-sdk на свежеустановленной Linux Mint 18.1 LXDE.
Выбор системы обусловлен тем, что устанавливалась в виртуальную машину и только для этой цели.
Подготовка системы:
Запускаем Терминал. Здесь и далее вся работа ведётся относительно папки пользователя.
Вбиваем данные команды последовательно, подтверждая нажатием Enter.
Теперь необходима перезагрузка!
Делаем это вручную или вводим команду:
Код:
shutdown -r 0
Установка evic-sdk:
Запускаем Терминал.
Код:
cd evic-sdk
make
Компиляция примера:
Код:
cd example
cd helloworld
make
Настройка завершена! Переходим к более сложному...
Сборка дампера загрузчика:
Запускаем Терминал, загружаем и настраиваем код.
Код:
cd evic-sdk
cd example
wget https://gist.github.com/ReservedField/6125e9c7d2b9f92536ee/archive/e2a782d7cbccc6ce09122927dfb2a512f04f6580.zip
unzip e*.zip
rm -f e*.zip
mv 6* ldrom_dump
cd ldrom_dump
sed -i -r 's/String\(txtBuf/\(data, 4/g' ldrom_dump.c
make
Получение дампа.
Прошиваем устройство только что созданным кастомом.
Включаем, подключаем к ПК и устанавливаем драйвер.
Linux (не тестировано)
Проверяем активный COM порт:
Код:
dmesg | grep tty
Запускаем получение дампа (пример):
Код:
sudo cat /dev/ttyACM0 > ldrom.bin
Нажимаем кнопку Fire на моде.
Windows
Загружаем и запускаем RealTerm.
Переходим на вкладку Capture, указываем путь и имя дампа. Например, D:\ldrom.bin.
Нажимаем кнопку Start: Overwrite. Нажимаем кнопку Fire на моде.
В нижней части программы текст Char Count:0 сменится на Char Count:4096. Закрываем программу.
Дамп создан!
Сборка кастомной прошивки:
Запускаем Терминал. Переходим в папку с SDK и делаем новую папку для CFW.
Код:
cd evic-sdk
mkdir project
cd project
Загружаем исходный код кастомной прошивки на выбор (оригинальный myevic или его форки):
Переходим в папку и вносим необходимые исправления для сборки:
Код:
cd myevic
sed -i -r 's/armv7e-m\/libnosys.a/\/usr\/arm-none-eabi\/lib\/libnosys.a/g' linker.ld
sed -i -r 's/armv7e-m\/libgcc.a/\/usr\/lib\/gcc\/arm-none-eabi\/6.3.1\/thumb\/v7e-m\/libgcc.a/g' linker.ld
sed -i -r 's/armv7e-m\/libc.a/\/usr\/arm-none-eabi\/lib\/libc.a/g' linker.ld
sed -i -r 's/armv7e-m\/libm.a/\/usr\/arm-none-eabi\/lib\/libm.a/g' linker.ld
Зачем это?
Код выше призван на новых версиях компилятора убрать ошибки вида:
Вот и всё! Можно запускать компиляцию командой make и забирать готовую прошивку в папке bin.
Успешность завершения процесса можно увидеть по финальной строчке "Writing APROM image...OK.".
21.04.2017, 19:05
isar00t
Цитата:
Сообщение от Yoti
Выбор системы обусловлен тем, что устанавливалась в виртуальную машину и только для этой цели.
Интересно. а основная система которая была?
и может быть можно это всё реализовать через WSL?
21.04.2017, 19:15
Yoti
isar00t
основная система Win8.1 Pro x64, WSL не пробовал.
01.05.2017, 05:05
JAW
Yoti
Нужно попробовать в очередной раз это безобразие поставить.
01.05.2017, 05:28
MicroSur
Цитата:
Сообщение от Yoti
и вносим необходимые исправления для сборки:
А есть готовый (поправленный родной) MakeFile для работы с новыми версиями этих arm-none-eabi?