Jump to content

    

UniSoft

Свой
  • Content Count

    130
  • Joined

  • Last visited

Community Reputation

0 Обычный

About UniSoft

  • Rank
    Частый гость
  • Birthday 08/02/1979

Контакты

  • Сайт
    Array
  • ICQ
    Array
  • Yahoo
    Array

Информация

  • Город
    Array

Recent Profile Visitors

13768 profile views
  1. У IAR полностью свой набор как загрузчиков ("$TOOLKIT_DIR$\config\flashloader\"), так и ddf ("$TOOLKIT_DIR$\config\debugger\") . Так что все будет работать!
  2. В общем понятно... Там кроме этого диалога еще включается ограничение по времени: 5-10 минут. Причины этого warning для JLink V10: 1. серийник находится в черном списке. (это не ваш случай) 2. Наличие лицензии "GDBFull" (опять же не ваш случай) 3. Поврежденная сигнатура (уверен это ваш случай), хотя jlink должен был уйти в BOOT режим, но видимо встроенный патч обходит ту проверку, а вот такая же проверка со стороны dll обламывается. Без полной перепрошивки полноценным дампом это не победить. Как вариант просто пропатчить dll (дело пары минут)
  3. Скриншот J-Link Commander'а скиньте После чего он перестал работать?
  4. я же тут выкладывал комплект, обновите им
  5. Можно, если есть желание, умение и время. Только скорости это не прибавит. У контроллера яйца чудесным образом не отрастут, в более скоростных (Pro, Ultra) ногами дрыгает FPGA. Считывается прошивка, удаляется маркер EDU, записывается назад. Как вариант, написать код для контроллера который перепишет нужный сектор изнутри, да такое возможно. Маркер EDU находится не в физической OTP, а в программно эмулируемой OTP (т.е. во флеше). Да, проверяет! не проверяет! На более высокую это на какую? Ну примерно так и есть в китайских клонах. Для трейса на высокой скорости существует J-Trace Вопрос философский... V10 и V11 по сути одно и тоже. V9 и более ранние уже устарели, к тому же USB Full Speed. Прошивку я ранее выкладывал, Да, V10/11 быстрее, USB High Speed. Это уже вы сами решайте. Прошивку для V10 я ранее выкладывал, копайтесь на здоровье.
  6. Это зависит от наличия соответствующей лицензии: JFlash эти опции могу быть изначально активированы в BASE, либо соответственно купив дополнительные лицензии. Они вводятся кодом (если важна легальность), и для этого есть у них соответствующая утилита: J-Link License Manager Можно даже найти калькулятор (я как-то тоже его писал, возможно еще где-то гуляет по сети, правда не знаю, работает ли он еще)... Сейчас он особо не актуален, все можно добавить и через J-Link Commander (тут уже не раз это писали). Про него... Оно будет ежедневно выскакивать.
  7. Серийный номер тут не причем... Это не из-за него... вот полный список забаненных серийных номеров: (из последней dll v6.64) к defective так-же приводит наличие фичи: "GDBFull" (она допустима лишь для некоторых старых jlink'ов, v9, v10... не в их числе) так-же к этому ведет несовпадение хэша серийника, это второй UINT32 идущий сразу за серийником... Он должен быть либо корректным, либо просто 0xFFFFFFFF, считается как-то так: Ну и собственно инвалидная сигнатура, т.е. сама dll не может корректно дешифровать сигнатуру... кстати сама dll не проверяет соответствие sn сигнатуре, это делается в самом jlink'е. Возможно в вашем случае в jlink'е просто в bootloader добавлен код, который перед запуском основной прошивки просто патчит проверку сигнатуры (а вместо реальной сигнатуры просто мусор, либо пусто) в плане прошивки, наличием строки (редакции) "SEGGER-EDU" в плане софта: меньшим кол-вом фитч (ну там например JFlash не будет работать, ...), ну и надоедливым наг скрином, который не даст забыть, то что это EDU и не может быть использован в коммерческих целях. А то вдруг забудете. Данная строка хранится в программно реализованной OTP памяти (допустимо только запись бита из 1 в 0). Таким образом из BASE можно легко сделать EDU, но не наоборот. Стереть строку просто так не получится там допустимо только строгое соответствие одной из строк: (пустая строка, т.е. первый байт 0xFF есть BASE) . Легального пути преобразовать EDU в BASE нету, и такая опция даже не заложена в прошивке. Следовательно любые манипуляции с прошивкой и патчами - противозаконны.
  8. Она идет в комплекте с keil'ом... C:\Keil_v5\ARM\BIN\ElfDwT.exe
  9. EWARM + bin файл...

    В общем удалось как-то победить данную проблему, правда через ж... зад.. 1. В постбилд'е переименовывается (копируется) firmware.out в firmware_orig.out 2. Своя утилита обрабатывает бинарник и запихивает его в elf файл firmware.out (одной секцией без дебаг инфы, если кому нужно, исходник функции во вложении) 3. Во вкладке Debugger включаем использование макроса execUserReset() { __var value; __message "---- execUserReset ----" ; // включаем возможность отладки в sleep (__WFI) value = __readMemory32(0xE0042004, "Memory"); value |= 0x00000027; __writeMemory32(value, 0xE0042004, "Memory"); } execUserPreload() { __message "---- execUserPreload ----" ; // тут грузим отладочную инфу из оригинального elf __loadImage("C:\\projects\\Test\\EWARM\\firmware\\Exe\\firmware_orig.out", 0, 1); } execUserSetup() { __message "---- execUserSetup ----" ; } elf.rar
  10. EWARM + bin файл...

    В моем случае так проще... Постоянно перешивать устройство на debug/release муторно... это только основная прошивка, а там же еще есть и бутлоадер (точнее 2) которые не пропустят не подписанную прошивку. А это отдельные проекты. Это нужно открывать и пере-компилировать каждый проект отдельно, плюс еще внешнюю утилиту. А так подпись добавляется в автомате за миллисекунды, и не нужно никаких лишних движений. На массовое производство я итак написал для шефа свою одно-кнопочную утилиту, которая и прошивает и защищает контроллер как нужно, без всяких jflash'ей и прочей хрени, лишь JLinkARM.dll. У меня начальник китаец, хорошо знает как копировать девайсы, так как мы сами этим занимались неоднократно, отсюда и некоторые требования в плане защиты. А я по больше степени реверсер, так что хорошо знаю, как усложнить жизнь таким же реверсерам как я. --- P.S.: С IAR'ом я просто эксперементировал, просто интересно было попробовать. Не пользовался я им с 2014 года. С тем, чем пользуюсь сейчас, таких проблем у меня даже не возникало. У меня в email уже множество запросов на то, чтобы обновил свой кейген IARkg14_Unis (хотя последняя версия была IARkg15_Unis, но я ее никогда не выкладывал). Вы же знаете, что он более не справляется с последней версией EWARM, уверен данная тенденция продолжится и на остальные продукты. Вот и пробовал IAR, так бы может хоть стимул появился...
  11. EWARM + bin файл...

    Так а в чем проблема? Вы же не меняете положение функций и переменных... просто добавляется подпись в конец файла подпись это RSA-2048... т.е. 256 байт... и нет, не проще скриптом, да и зачем, все же нормально работает, но не в IAR. VS2019 + visualGDB - лучшего редактора не видел.
  12. EWARM + bin файл...

    Это Вы так троллите? Я знаю, что это elf, я же об этом написал в сообщении, зачем повторять? У меня 20-летний опыт в реверс-инженеринге! Читайте внимательнее! К тому же я писал про "Browse Information" а не про "debug information"... Это совершенно разные вещи.
  13. EWARM + bin файл...

    Это вы про время компиляции? Вы в Keil в Options на вкладке Output снимите галочку с Browse Information... И увидите реальную скорость компиляции.
  14. EWARM + bin файл...

    А в контроллер по вашему пишется что? ну ведь не .elf (он же .out)... Линкер выплевывает .elf файл, из которого получается бинарник, и в IAR есть опция. Далее этот бинарник подписывается, и его и нужно загрузить в контроллер, он ведь по прежнему соответствует .out, адреса функций, переменных все осталось на своих местах. Поэтому отладчик свободно берет инфу из elf, но в контроллер грузится бинарник. Тут нет никакой магии. Я же говорю, оно работает, просто контроллер прошивается дважды, сначала .out а потом hex... мне не проблема создать bin или hex. С elf'ом нет желания возится... так то можно и его создать, и там уже опцией --debugfile указать. Просто мне не верится, что подобной задачи (когда требуется некоторая постбилд обработка файла) ни у кого никогда не возникало. И что нет простого и очевидного решения. Во Flash...
  15. EWARM + bin файл...

    Так там в настройках только одна опция для отключения прошивки "suppress download" ... установив ее, оно подавляет всю запись, даже из макроса. а *.out он итак подхватывает, даже с подавленной загрузкой.