На производстве выглядит так:
а. Если целевая плата потребляет мало, то подключаем девайс к USB порту, а потом уже к плате и прошиваем контроллер
б. Если целевая плата потребляет много, то запитываем её от блока питания, а потом уже подключаем к ней девайс и прошиваем
Лучше ST-LINK тем что дружит с любым контроллером с ядром CORTEX-M. Можно взять с собой и в полях прошить устройство куда не подлезешь с ноутом.
Пока хуже ST-LINK потому что нет поддержки options bytes (но скоро всё будет).
Была идея сделать беспроводной программатор на основе Nordic nRF52832 и написать приложение на телефон, но пока руки никак не дойдут (автономного более чем хватает)
Пока программаторы по знакомым расползлись, осталось в наличии несколько штук (STM32L433 пока отсутствует в продаже). Кому нужно/интересно пишите в ЛС. С его помощью можно всякие не стандартные вещи делать, вроде загрузки технологического ПО в плату и анализа ответов по SWO