Китайский J-Link живи
История эта берет начало в далеком 2019 году, когда я впервые заказал себе из Китая программатор-отладчик Segger J-Link v10.1 а если быть точнее его клон. Необходимость покупки сего чудного девайса была продиктована невозможностью отлаживать (да даже элементарно прошивать без плясок с бубном) устройства на Nordic nRF51. Я тогда не знал про OpenOCD)
Оригинальный J-Link стоит как самолет, почти 400 евриков. Это неоправданно дорого даже для такого хорошего инструмента. Китайский же J-Link прекрасно со всем справлялся, зарекомендовал себя как мощный и надежный инструмент.
И вот однажды по глупости (и наивности) своей я решил обновить ПО для работы отладчика. При первом подключении мне было предложено обновить ВПО программатора, на что я без раздумий согласился. Ну а почему бы и нет, раньше же прокатывало). Однако на этот раз все пошло не по плану. Дойдя до определенного момента обновления, девайс повис и при повторном подключении уже определяться корректно не смог.
Не помогал даже даунгрейд ПО, все происходило по одному и тому же сценарию каждый раз. Отчаявшись, я уже помышлял о том чтобы прошить его напрямую через разъем на плате, что точно не помогло бы, т.к. производитель об этом заранее любезно позаботился). Сколько бы мы с коллегой (спасибо Игорю) не пытались подключиться к нему, результат был печален. Как позже выяснилось, на заводе, после записи бутлоадера этот интерфейс блокируется и в “домашних” условиях к камню не достучаться.
Разъем на плате программатора, к слову сказать, довольно специфический, для быстрого подключения и прошивки. Актуален для массового производства, для мелкой серии и единичных заказов КМК бесполезен, а стоит как самолет). Речь о ТС2050).
Ответ на вопрос “что делать” нашли на форуме https://electronix.ru, ссылку приведу ниже. Там был описан процесс, при котором возможно реанимировать бедолагу через бутлоадер по USB. Все сводилось к банальной замене файлов EXE и dll в папке с программой определенной версии. Затем устройство подключалось к ПК по USB и после определения его в системе нужно было запустить J-Link Commander, а затем выполнить команду “exec invalidate”. После успешного обновления программатор должен начать корректно определяться и отлаживать/прошивать устройства.
А теперь немного слов о том кого за этот весь геморрой стоит благодарить) А благодарить стоит вот эту https://bi.zone/ компанию. Именно они и прикрыли баг с подменой серийных номеров на устройствах версии 10 и 11. Да еще и похвастались на весь мир какие они молодцы, выложив подробнейшую статью на Хабре. А я об этом рассказал вам, ведь народ должен знать своих героев в лицо)
Не попадайтесь, будьте внимательны! Крайняя рабочая версия ПО без окирпичивания программатора v7.66.
А теперь, как обещал, ссылки в студию):
https://habr.com/ru/company/bizone/blog/651613/ - сама статья
https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=59841&page=104#comments - ветка на форуме, где было найдено решение
https://aliexpress.ru/item/1005004167930496.html - здесь можно купить сам программатор
https://disk.yandex.ru/d/qNr3VgUrXXEj0g - тут положил архивы для восстановления 10 и 11 версий