Как обновить st link v2
To update the firmware of ST-LINK boards, ST offers three aplications:
- STM32CubeProgrammer (STM32CubeProg) is an all-in-one multi-OS software tool for programming STM32 products.
- STM32 ST-LINK Utility (STSW-LINK004) is a full-featured software interface for programming STM32 microcontrollers. is used to upgrade the firmware of the ST-LINK, ST-LINK/V2 and ST-LINK/V2-1 boards through the USB port.
I am using the dedicated one, STSW-LINK007. These instructions are dedicated to Linux but usage is similar in Windows and macOS. See RN0093 (link on the bottom of the document) for details.
I have to remember to myself: The STM32Cube Ecosystem is a complete software solution for STM32 microcontrollers and microprocessors. It is intended both for users looking for a complete and free development environment for STM32, as well as for users who already have an IDE, including Keil or iAR, in which they can easily integrate the various components such as STM32CubeMX, STM32CubeProgrammer or STM32CubeMonitor.
Libusb and permissions
It needs libusb-1.0 so make sure is installed:
USB permissions
This is a quick-and-dirty procedure. See Non-root access for ST-LINK and USB-to-serial devices for better settings and more information.
Also, in the AllPlatforms/StlinkRulesFilesForLinux directory you can find, maybe, a simpler method. Start with the readme.txt file.
Libusb requires write access to USB device nodes. If you have not done it already, for non-root acces create the file /etc/udev/rules.d/70-st-link.rules with this content:
and reload all the udev rules:
If the ST-LINK board was plugged, unplug it then plug it again.
STLinkUpgrade
Download it, extract it and from the AllPlatforms directory, either:
- launch STLinkUpgrade.jar
- execute java -jar STLinkUpgrade.jar
STLinkUpgrade should have found the board, click Refresh device list if not. Now click Open in update mode then click upgrade .
STLinkUpgrade 3.3.4 upgraded my ST-LINK/V2 boards to V2J37S0 firmware version.
STM32 — Обновление прошивки в ST-Link
При покупке, в ST-Link обычно не самая свежая прошивка. Ведь он мог долгое время находится на складе прежде чем до него дошла очередь продажи и при изготовлении в него могли залить предыдущую версию прошивки.
Чтобы обновить прошивку, нужно отправиться на сайт компании ST и скачать программу ST-LinkUpgrade. На сайте несколько мест где ее можно скачать и как оказалось, версии прошивки отличаются.
Например на данный момент для ST-Link v2 этой странице версия V2.J24.S4 выпущенная 20.05.2015, а здесь посвежее, версия V2.J27.S6 выпущенная 26.02.2016. Чем они отличаются не знаю. Наверное добавили новые возможности, устранили известные ошибки (добавив новых ). В любом случае, лучше обновится. Хотя в сети пишут что иногда при обновлении ST-Link превращается в "кирпич", но его можно восстановить залив прошивку через USART, JTAG или SWD, но для этого придется разобрать отладчик.
У меня обновление прошло успешно.
Скачиваем архив и в папке Windows находим файл ST-LinkUpgrade.exe и запускаем его (если у вас не Windows, тогда запускаете файл STLinkUpgrade.jar из папки AllPlatforms).
В окне есть кнопка "Device Connect", по которой нужно кликнуть чтобы установить связь с ST-Link и узнать версию прошивки в нем.
В поле "Firmware Version" показана текущая версия прошивки в ST-Link, а в поле "Upgrade the firmware to", версия до которой может обновить программа. Если передумали обновлять прошивку, то просто закрываем окно, а если все же хотим ее обновить, кликаем кнопку "Yes >>>>" и ждем окончания обновления.
Бывает что при клике по кнопке "Device Connect" появляется сообщение что ST-Link не в режиме DFU. Нужно переподключить отладчик.
Со временем версии прошивки могут поменяться, поэтому залил на сайт текущую версию.
Делаем ST-Link V2.1 из китайского ST-Link V2
Привет, Хабр!
В данной статье расскажу как модифицировать ST-Link V2 до ST-Link V2.1.
Возможно для кого-то это не будет новостью, но особой инфы по данной теме в инете не нашел.
Кому интересно — прошу под кат.
Предисловие
Так уж случилось, что мне надоели лишние провода.
Немного подумав я вспомнил что на платах Nucleo и Discovery — ST-Link совмещает в себе SWD и VCP (Virtual Com Port).
Первое что пришло в голову — купить самую дешевую из подобных плат, попытаться сдампить прошивку в обход защиты и залить в программатор из китая, либо же развести новую плату.
Однако мне подсказали ссылку на GitHub с уже вытянутым загрузчиком, в итоге получилось то что получилось.
Приступаем к работе
Модификацию можно произвести только на версии софта под Windows, кроссплатформенная версия софта отказывается обновлять девайс!
Есть несколько вариантов модификации, и часть из них нельзя сделать если чип не подходящий (не хватит памяти).
Например, модификацию STM32+MSD+VCP можно сделать только если чип STM32F1xxCBxx, однако у нее есть аналог STM32+Audio, который даст STM32+VCP (в принципе что нам и требуется).
— Паяльник;
— Мультиметр с прозвонкой;
— ПК с ОС Windows (может получится через Wine, не пробовал);
— Архив с нужным софтом и бутлоадером (PASS: QWK2tn+fM.EdjX6z).
— Китайский клон ST-Link V2;
— USB-UART адаптер либо второй ST-Link.
Вскрываем.
/>
Прошивка
Есть два пути — USB-UART (немного сложнее) либо второй ST-Link.

1) Прозвонкой находим резистор который подключен к BOOT0.
Делаем перемычку от стороны этого резистора которая подключена к BOOT0 к 3.3v.
PA9(TX) может быть подключен к светодиоду или резистору рядом с ним, потому прозваниваем.
Подпаиваем UART на PA9(TX) и PA10(RX).
Я делал это так:

Так же подпаиваем питание.
Прошиваем загрузчик Protected-2-1-Bootloader.bin с помощью STM32 Flash loader demonstrator.
После прошивки отпаиваем перемычку, PA9 и PA10 (PA10 оставляем если хотим вывести SWO).
На платах есть по 4 контакта, в некоторых случаях они уже промаркированы, в противном же случае прозваниваем их относительно PA13(SWDIO) и PA14(SWCLK), подпаиваемся вторым ST-Link.

Так же подпаиваем питание.
Устанавливаем STM32 ST-LINK Utility V4.3 из архива, снимаем защиту от записи и прошиваем загрузчик Protected-2-1-Bootloader.bin.
Для снятия защиты в программе STM32 ST-LINK Utility жмем Target > Option Bytes, переключаем Read Out Protection в Disabled и жмем Apply.
Обновление до ST-Link V2.1
После прошивки подключаем прошитый ST-Link (уже почти V2.1) к ПК.
В программе STM32 ST-LINK Utility V4.3 жмем ST-LINK > Firmware update.
Жмем Device Connect — получаем список возможных модификаций:

Выбираем нужную вам модификацию, в моем случае STM32+MSD+VCP, жмем Yes >>>>.
Ждем пока завершится обновление…

Завершающая часть
Так как SWIM и RST после такой модификации не работают — отрезаю их.
Так же отрезаю дублирующие 5V и 3.3V.
Получается 4 свободных пина.
На них подпаиваюсь проводками к чипу:
PA10 -> SWO
PB0 -> NRST
PA3 -> RX
PA2 -> TX
Вывожу все на основной разъем, на оставшиеся свободные пины.
Получилась такая распиновка:



Накарябал скальпелем маркировку на корпусе:
Не забываем отмыть плату после пайки!
В итоге, в ПК девайс определяется так:


Я без понятия чему равен объем виртуальной флешки (в данном случае к ST-Link V2.1 был подключен F103C8).
Если на нее закинуть файл прошивки — программатор прошьет чип без программ.

Спасибо за внимание!
При копировании попрошу оставлять ссылочку на первоисточник.
Как обновить st link v2
При попытке обновить Firmware v.2.J17.S4 к v2.J34.57, появляется ошибка "Upgrade Error, Please try again."
Обновление не происходит.

На ноутбуке установлены: en.stsw-link004 (STM32 ST-LINK Utility v4.5.0.exe), en.stsw-link007 (STLink firmware upgrade applications), en.stsw-link009 (Driver STM USB).
Пробовал в разные порты вставлять, результата не дало.
Пробовал много раз подряд прошить, переподключая, результата не дало.
Прошу подсказать, что делать, чтобы обновить прошивку для ST-Link v.2 c J17 на более новую (сейчас это J34)
P.S. Ранее этим программатором прошивал в Keil, но сейчас он не прошивает, т.к. пишет, что прошивка старая и нужно обновить.
Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет
В моем ST-Link v.2 установлен STM32F103![]()
Ведущий производитель электрического оборудования компания MORNSUN выпустила серию источников питания на DIN-рейку LI100-20BxxPR3 c выходами на 12, 15, 24 и 48 В. ИП позиционируются для умных домов, а так же используются в составе оборудования для промышленной автоматизации, различных производственных машин, рельсовых систем транспортировки и другого оборудования, работающего в условиях неблагоприятной окружающей среды.
Прошей заново загрузчик и обнови нормально. Кто его знает что там китаец зашил.
Компания MEAN WELL продолжает активное развитие номенклатуры, осваивая новые направления и обновляя существующую продукцию с учетом возрастающих требований. В настоящий момент в Компэл представлено множество недавно вышедших новинок MEAN WELL.
MEAN WELL выпустил ряд таких новинок как мощные высоковольтные управляемые источники питания, DC/DC-преобразователи со сверхшироким входом (с креплением на DIN-рейку и на шасси), полностью обновил линейку зарядных устройств (ЗУ), DC/AC-преобразователей (инверторов) и ИБП для охранно-пожарных систем. Кроме того, выпущены специальные источники питания с выходным напряжением в виде ШИМ для светодиодных лент и модулей управляемых по DALI2 и 0…10 В, а также другая продукция.
Помнится, был случай, когда пришлось подключать обновившийся ST-Link V2 (с платой Discovery) с использованием другого софта. Возникла проблема в версии прошивки программатора, и пришлось её откатывать.
Если раздражает данное сообщение — проверьте в каталоге установки Keil’а каталог %Keil%/ARM/StLink/
В нём или подкаталоге USBDriver может лежать более свежая прошивка, которую Кейл пытается залить в донгл. Если её переместить/удалить/переименовать — запрос пропадёт и свисток МОЖЕТ заработать.
Спасибо, наверно, это как раз тот случай из-за чего была проблема.
В любом случае, проблему решил. Пошел в магазин и поменял ST Link v.2 на точно такой же, но новый. На нем была прошивка j31, обновил до прошивки j34 (сейчас все работает).
"Firmware upgrade for ST-LINK"
https://www.st.com/en/development-tools . nk007.html
В магазине попробовали мой "поломанный" ST Link v.2 с прошивкой j17 обновить и у них ничего не вышло.
Всем, спасибо, много нового узнал.
Проблема решена заменой ST Link v.2 на точно такой же в магазине. 

_________________
страшно экономный trafukas
С недавнего времени STM32CubeIDE V1.10.1 (ST-LINK GDB server. Version 7.0.0) перестал шить и дебажить контроллеры, напирая на то, что негоже пользоваться китайскими программаторами за 150 рублей со старой прошивкой (V2J29S7).
Error in initializing ST-LINK device.
Reason: ST-LINK firmware upgrade required. Please upgrade the ST-LINK firmware using the upgrade tool.
Ну, мы люди не гордые надо обновляться так надо. Запускаю встроенный обновлятор на версию (V2J40S7) а он пишет — "Update error" типа иди наконец-то купи ST-Link V2 ISOL или хотя бы просто нормальный ST-Link V2.
Ночь на дворе, куда я пойду? Начал думать что можно сделать (ибо програмить надо).
Долго я искал фирмвары и последовательность корректного обновления с 29 прошивки. После длительного секаса я понял что обновлять китайские свистки надо именно так:
Более новые прошивки — не шьются (последняя 40), однако свисток заработал. Ура .
Все фирмвары в архиве Здесь.
Если моя писанина комунить сэкономит время — я буду счастлив.
PS. Негодяи из STM заблокировали Россию, поэтому работа с ними возможна только через VPN, да и то на сайте только 2 последних версии.
