Jump to content

    
krestnick

China-Link, Вариант отладчика из Китая

Recommended Posts

17.02.2021 в 20:43, nibelung сказал:
16.02.2021 в 10:31, Neo_Matrix сказал:

 

Версии 9.2 и 9.5 отличаются по схемотехнике, не принципиально, прошивка у них одинаковая. У вас, вероятнее всего, при прошивке изменился серийный номер. Если весе работает - оставляйте как есть. 

Серийный понятное дело что слетел, но я восстановил прежний, что там был. И добавил лицензии. Работает как то странно, через несколько включений/выключений к ЮСБ софтина выдает что прошивка испорчена и требует восстановления, после перепрошивает и некоторое время работает нормально, потом цикл повторяется. Отладка по swd/o работает нормально. Но вот сегодня пробовал прошить spi флеху, так он с нее читает ff ff ff  и пишет, что неизвестный чип памяти.

Share this post


Link to post
Share on other sites
19.02.2021 в 01:55, Neo_Matrix сказал:

Серийный понятное дело что слетел, но я восстановил прежний, что там был. И добавил лицензии. Работает как то странно, через несколько включений/выключений к ЮСБ софтина выдает что прошивка испорчена и требует восстановления, после перепрошивает и некоторое время работает нормально, потом цикл повторяется. Отладка по swd/o работает нормально. Но вот сегодня пробовал прошить spi флеху, так он с нее читает ff ff ff  и пишет, что неизвестный чип памяти.

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

В качестве универсального совета - идете сюда, берете там bootloader и шьете его с полной очисткой чипа. Затем запускаете JLink Commander чтобы он установил прошивку.

Share this post


Link to post
Share on other sites
On 2/17/2021 at 9:43 PM, nibelung said:

Если нужна V11 - однозначно EDU, если достаточно V9 можно рискнуть купить клон, но очень вероятно, что у него при 0 на Vtref будет 3,3V на линиях JTAG из-за желания китайцев "улучшить" продукт.

Это легко исправляется открытием коробочки и снятием джампера. Хотя свериться со схемой JTAG-разъема собственной платы, конечно, при этом не повредит (все время мудрят с тем, что подается на контакты 1, 2 и 19).

Share this post


Link to post
Share on other sites

Ребят, у меня старый клон v8 есть. Прошивать прошивает, но вываливается из runtime через некоторое время. Драйвер вроде новый какой-то стоит, но точно сейчас не скажу. Вопрос: выкидывать его уже? Т.е. железку надо обновлять или как-то можно нужную прошивку подсунуть?

Share this post


Link to post
Share on other sites
11 минут назад, uni сказал:

Вопрос: выкидывать его уже? Т.е. железку надо обновлять или как-то можно нужную прошивку подсунуть?

Можно просто поставить старый драйвер вместо "вроде нового".

Share this post


Link to post
Share on other sites

Отладчик подох у меня, зараза. Больше не светит светодиодом. Пришло, видать, его время. Эх. Не пойму что там ему не понравилось, может подскажите от чего дохнут обычно или схема тут есть подобных?

IMG_20210226_223011.jpg

Share this post


Link to post
Share on other sites
3 часа назад, uni сказал:

Отладчик подох у меня, зараза.

Думаю, что, скорее всего, можно восстановить.

Понадобятся две утилиты: SAM-BA (рекомендую старую v2.18) фирмы Atmel и J-Link Commander фирмы Segger, обе нужно установить на ПК. Обратить внимание - вместе с SAM-BA должен быть инсталлирован атмеловский драйвер виртуального COM-порта.

Также понадобится бинарный файл прошивки V8_Firmware (где-то в глубине этой темы он, по моему, имеется). Нужно проверить, чтобы в этом файле серийный номер устройства попадал в "легальный" диапазон.

Серийный номер находится по смещению 0x0FF00 (по этому адресу лежит его младший байт). Его можно подкрутить с помощью утилит Hview или HxD - при этом не забыть сохранить изменения в файле!!!

Далее порядок действий такой:

1. Стираем содержимое флэша:
   - включаем плату (т.е. с помощью кабеля USB подключаем к ПК);
   - джампером подтягиваем сигнал ERASE в лог.'1';
   - выжидаем 20 секунд;
   - выключаем плату (отключаем от ПК);
   - возвращаем джампер на ERASE обратно.
2. Активируем загрузчик:
   - джампером подтягиваем сигнал TST в лог.'1';
   - включаем плату;
   - выжидаем 10 секунд;
   - выключаем плату;
   - возвращаем джампер на TST обратно.
3. Прошиваем бинарник:
   - включаем плату;
   - запускаем SAM-BA и коннектимся к at91sam7s64-ek (вместе с SAM-BA должен быть инсталлирован атмеловский драйвер виртуального COM-порта)
   - в поле Send File Name указываем бинарный файл (V8_Firmware);
   - жмем Send file, в процессе прошивки на все предложения залочить сектора отвечаем "Нет" - ЭТО ВАЖНО!!!;
   - после завершения прошивки, в поле Scripts выбираем "Enable Security Bit" и жмем Execute (в принципе, этого можно и не делать);
   - после завершения выходим из SAM-BA и выключаем плату.
4. Обновление прошивки:
   - включаем плату;
   - запускаем актуальную версию J-Link Commander;
   - на предложение обновить прошивку отвечаем "Да" и ожидаем окончания перепрошивки.

После этого клон v8 должен быть восстановлен с актуальной прошивкой.

 

Share this post


Link to post
Share on other sites
20.02.2021 в 18:36, nibelung сказал:

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

В качестве универсального совета - идете сюда, берете там bootloader и шьете его с полной очисткой чипа. Затем запускаете JLink Commander чтобы он установил прошивку.

Прошивал бутлоадер из этого репа ранее. Как ни странно перепрошил его еще раз и он стал определятся, как и должен версии 9,5. Но SPI флешки по прежнему не прошивает. Может что то выгорело ранее, а я не заметил этого. Так как STM.... прошивает без проблем. Или лицензии не хватает....

Вот фото платы:

image.thumb.jpeg.0fc2cda2fbca13278c4bc86669f9f074.jpeg

 

Edited by Neo_Matrix

Share this post


Link to post
Share on other sites

Спасибо, буду пробовать, а пока купил для себя J-Link EDU 11.0. Странно, что цены на него в двух местных конторах отличаются в 2 раза (!). Это Чип и Дип (10.1 за 9 т.р.) и Промэлектроника (11.0 за 4 т.р.). К сожалению, этот EDU в отличие от китайского оказался ещё хуже - на моём arm9 камне кидает сообщение, что нету заявленного ETB, хотя имеющийся у меня также J-Link Base 10.1 нормально дебажит. Отписался на их форуме, может помогут.
Когда-нить брошу это всё и на Linux.

Edited by uni

Share this post


Link to post
Share on other sites

В общем, попробовал какую-то найденную прошивку, которая раньше работала. Я уже когда-то давно прошивал. Получил следующий листинг, если пользоваться командной строкой (отсюда):
 

> sam-ba.exe \USBserial\COM3 at91sam7s64-ek mt_link_programming.tcl > logfile.log 2>&1

-I- Waiting ...
-I- TCL platform : Windows NT
-I- SAM-BA 2.18  on : windows
-I- current connection is \USBserial\COM3, \\USBserial\\COM3 to be matched 
-I- Retrieved arguments from command line :
-I- argv 0 : \USBserial\COM3
-I- argv 1 : at91sam7s64-ek
-I- argv 2 : mt_link_programming.tcl
-I- Connection \USBserial\COM3
-I- Connection : \USBserial\COM3 (target(comType) = 0)
-I- Board : at91sam7s64-ek
-I- Traces Level : 4
-I- target(handle) : 17604600
-I- sourcing board description file C:/Program Files/Atmel/sam-ba_2.18/sam-ba.exe/../tcl_lib/at91sam7s64-ek/at91sam7s64-ek.tcl
Read device Chip ID at 0xFFFFF240 --- get 0x27090540
-I- Found chip : at91sam7s64 (Chip ID : 0x27090540)
-I- Loading applet applet-lowlevelinit-at91sam7s64.bin at address 0x202000
-I- Memory Size : 0x0 bytes
-I- Buffer address : 0x4
-I- Buffer size: 0x0 bytes
-I- Applet initialization done
-I- Low level initialized
-I- Loading applet applet-flash-at91sam7s64.bin at address 0x202000
-I- Memory Size : 0x10000 bytes
-I- Buffer address : 0x202994
-I- Buffer size: 0x1500 bytes
-I- Applet initialization done
-I- FLASH initialized
-I- Command line mode : Execute script file : mt_link_programming.tcl
-I- GPNVM0 set
-I- Loading applet applet-flash-at91sam7s64.bin at address 0x202000
-I- Memory Size : 0x10000 bytes
-I- Buffer address : 0x202994
-I- Buffer size: 0x1500 bytes
-I- Applet initialization done
-I- GENERIC::EraseAll
-I- GENERIC::EraseAll
-E- Generic::EraseAll returned error (0x00000004)
-I- Send File ./V8.bin at address 0x100000
 first_sector 0 last_sector 15 
-I- Complete 0%
-I- 	Writing: 0x1500 bytes at 0x0 (buffer addr : 0x202994)
-I- Complete 0%
-I- 	Writing: 0x1500 bytes at 0x0 (buffer addr : 0x202994)
-E- Generic::Write returned error (0x00000004)

Содержимое mt_link_programming.tcl:

set exampleFile "./V8.bin"
## Falshing binaries
FLASH::ScriptGPNMV 0
FLASH::Init
FLASH::EraseAll
send_file {Flash} "$exampleFile" 0x100000 0

Если пользоваться оконной версией, то тоже получаю ошибку. Пациент не выздоравливает.

 

 

Правка. В общем, заработало, я просто с этими локами запутался. Нашёл оригинальную китайскую инструкцию и по ней сделал. Правда ещё с серийниками не разобрался пока.


Кстати, у меня эта sam-ba ни в какую не захотела работать под Win10, пришлось в виртуальной машине под XP прошивками заниматься.

Edited by uni
Исправил скрипт

Share this post


Link to post
Share on other sites

Может кто внесет ясность. Давеча потратил несколько дней на попытки скрестить RaspberryPi Pico и J-Link выполненный на базе железа ver.8. Интерфейс -SWD. Посредник между VS Code  и Pico была OpenOCD ( ver 0.11 ). Все это из под Ubnuntu последней.

Не видит и не подключается OpenOCD к моему Pico. При использовании "ихнего" отлатчика Picoprobe все работает как положено.

Сами J-Link через полный JTag работает без проблем(т.е. он исправен). Оссцилограф показывает, что на SWCLK в момент обращения к PICO нет импульсов - просто опускает в "0" на время обращения и возвращает обратно после неудачной попытки подключиться. На SWDIO есть какая-то пачка информации но толку от нее если на "клоке" глухой "0" в это время ....

Пробовал родным софтом от Segger-a из под винды - там есть поддержка только из последних версий а  они не дружат с J-Link ver.8 (пишет что отлатчик не исправен и не гарантирует его работу )...

Судя по всему , все идет к тому , что JLinк-и на старом железе (ver.8) пойдут на свалку. А так жаль - сам когда-то заказывал плату и паял и много раз перешивал ....

 

Share this post


Link to post
Share on other sites
On 3/22/2021 at 2:06 AM, backa said:

Может кто внесет ясность. Давеча потратил несколько дней на попытки скрестить RaspberryPi Pico и J-Link выполненный на базе железа ver.8. Интерфейс -SWD. Посредник между VS Code  и Pico была OpenOCD ( ver 0.11 ). Все это из под Ubnuntu последней.

Не видит и не подключается OpenOCD к моему Pico. При использовании "ихнего" отлатчика Picoprobe все работает как положено.

Сами J-Link через полный JTag работает без проблем(т.е. он исправен). Оссцилограф показывает, что на SWCLK в момент обращения к PICO нет импульсов - просто опускает в "0" на время обращения и возвращает обратно после неудачной попытки подключиться. На SWDIO есть какая-то пачка информации но толку от нее если на "клоке" глухой "0" в это время ....

Пробовал родным софтом от Segger-a из под винды - там есть поддержка только из последних версий а  они не дружат с J-Link ver.8 (пишет что отлатчик не исправен и не гарантирует его работу )...

Судя по всему , все идет к тому , что JLinк-и на старом железе (ver.8) пойдут на свалку. А так жаль - сам когда-то заказывал плату и паял и много раз перешивал ....

 

Насколько я помню, только на v11 заявлена корректная работа с версии V6.96. А поддержка QSPI только с 6.98.

https://forum.segger.com/index.php/Thread/7762-SOLVED-RP2040-Support/

Edited by pety3bi

Share this post


Link to post
Share on other sites
8 hours ago, pety3bi said:

Насколько я помню, только на v11 заявлена корректная работа с версии V6.96. А поддержка QSPI только с 6.98.

https://forum.segger.com/index.php/Thread/7762-SOLVED-RP2040-Support/

 

не в курсе был про это. Спасибо!

Как трудно расставаться с любимыми вещами ))) работающими , но отставшими от "жизни"...

 

Share this post


Link to post
Share on other sites
22.03.2021 в 02:06, backa сказал:

а  они не дружат с J-Link ver.8 (пишет что отлатчик не исправен и не гарантирует его работу )...

Вы про сообщение ...defective..., как в этой теме?

Это не неисправность отладчика, а защита ПО Сеггера от китайских клонов. Пропишите корректно лицензии: должно быть GDB, а не GDBfull, не должно быть RDDI, серийный номер не из черного списка, и не будет этого сообщения. Даже серийный номер можно не назначать (будет отображаться -1).

У меня китайский J-link v8 нормально работает с утилитами Сеггера версии 6.98с, никаких ругательных сообщений нет. Правда я прошиваю им МК с ядрами Cortex-M0/M1/M3/M4.

Edited by Darth Vader

Share this post


Link to post
Share on other sites

Вот такой Китаеза-Link 11 версии

https://aliexpress.ru/item/4001187150039.html?spm=a2g0s.9042311.0.0.768933edBhRfHc&_ga=2.128410890.746446631.1616923384-8145079.1577121024&sku_id=12000016695396048

 

9GvCudZ8.png?download=1&name=%D0%A1%D0%B

 

Софт с компа (J-Link V6.95d) его видит

mcN0U12c.png?download=1&name=%D0%A1%D0%B

Но ругается

 

MCRrLOYk.png?download=1&name=%D0%A1%D0%B

 

 

Подключаю к плате по интерфейсу SWD (всего 3 проводка - GND, SWDCLK, SWDIO, без ресета).  Ядро контроллера не видится. Но если устройство работало, то оно тут же ресетится и останавливается.

Что еще обратило на себя внимание (на скрине выше) - Vref равен 3.348V, хотя отлаживаемое устройство не подключено.

Для сравнения подключил старый тоже китайский J-link -7 , прошитый под 8 версию,  на него не ругается, и Vref честно равен 0 вольт.

Как вылечить?

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.