Qic 0 April 15, 2016 Posted April 15, 2016 · Report post Приветствую. Столкнулся с некоторой проблемой. Есть stm32vldiscovery которая подключена к роутеру с котого Я прокидываю её через USBIP на PC. Раньше Я пользовался CooCox и местный программатор/отладчик CoFlash замечательно всё видит и делает. Также всё замечательно видит и делает ST-Link utility. Вот только мне захотелось пересесть на System Workbench for STM32 и на OpenOCD в частности (и при прямом подключении мне всё понравилось). Однако OpenOCD не видит st-link через usbip при этом выдаёт какуюто дичь на счёт дисков. Его беспокоит "встроеный" mass storage в отладчике платы с рекламой? Как Я понимаю, проблема в том что USBIP не обрабатывает композитные девайсы как этот, но ведь всё кроме OpenOCD работает! Может мне кто поможет? Quote Share this post Link to post Share on other sites More sharing options...
demiurg_spb 0 April 15, 2016 Posted April 15, 2016 · Report post Какая версия OpenOCD? (актуальная 0.9.0) Какой драйвер установлен для ST-Link? (у меня в системе видится как "STMicroelectronics STLink dongle (Libusb - WinUSB)") Если ничего не выйдет - пишите в email рассылку разработчиков OPENOCD: http://openocd.org/discussion/mailing-lists/ Quote Share this post Link to post Share on other sites More sharing options...
Qic 0 April 15, 2016 Posted April 15, 2016 · Report post OpenOCD стоит последний 0.9.0, драйверы на st-link с сайта ST "STSW-LINK009". Прям также у меня не видится он, точнее говоря всё еще запутаннее. В системе видится только виртуальный диск с ссылками. Но как не странно - остальной софт работает нормально. Даже st-link gdb server нормально отрабатывает. Видимо придется написать разрабам. Quote Share this post Link to post Share on other sites More sharing options...
Сергей Борщ 4 April 15, 2016 Posted April 15, 2016 · Report post OpenOCD общается с st-link через драйвер winusb с помощью библиотеки libusb. Остальные программы общаются через родной драйвер. В libusb версии 0.x можно было поставить filter driver, который позволял использовать и родной драйвер и winusb без переустановки драйвера. С какой-то версии openOCD стал использовать библиотеку версии 1.x и теперь такой возможности нет - надо переставлять драйвер. Хотите работать с другими программами - ставьте родной драйвер. Хотите работать с openOCD - ставьте драйвер winusb. Читал в рассылке, что подружить их все вместе (а может оперативнно подменять драйвера) под виндой можно через zadig, сам не пробовал - пересел на линух. Quote Share this post Link to post Share on other sites More sharing options...
AleksBak 0 April 15, 2016 Posted April 15, 2016 · Report post ... Однако OpenOCD не видит st-link через usbip при этом выдаёт какуюто дичь на счёт дисков. Его беспокоит "встроеный" mass storage в отладчике платы с рекламой? ... Вообще-то вместо "дичи" нужно выкладывать текст самой ошибки. Вот если Вы напишите кому-то насчет этой ошибки (разработчикам т.е.), то все как положено выложите/укажите. Я примерно знаю, что за ошибка (она возможно "кракозябрами" будет если ОС не английская), но все-таки. Ошибка наверно типа - "попытка обращения к несуществующему диску" или что-то такое. Ее возможные причины: 1) т.к. OpenOCD обменивается через сокеты с ИДЕ, то может-быть брандмаузер ОС запретил его работу в сети (проверить); 2) может быть у вас на портах, что рабочие у OpenOCD (см. в "Debug Configurations") кто-то уже сидит/работает - проверить. И еще, проверьте вначале на компе через нормальный обычный USB - так работает или нет? Quote Share this post Link to post Share on other sites More sharing options...
Qic 0 April 15, 2016 Posted April 15, 2016 · Report post Вообще-то вместо "дичи" нужно выкладывать текст самой ошибки. Вот если Вы напишите кому-то насчет этой ошибки (разработчикам т.е.), то все как положено выложите/укажите. Я примерно знаю, что за ошибка (она возможно "кракозябрами" будет если ОС не английская), но все-таки. Ошибка наверно типа - "попытка обращения к несуществующему диску" или что-то такое. Ее возможные причины: 1) т.к. OpenOCD обменивается через сокеты с ИДЕ, то может-быть брандмаузер ОС запретил его работу в сети (проверить); 2) может быть у вас на портах, что рабочие у OpenOCD (см. в "Debug Configurations") кто-то уже сидит/работает - проверить. И еще, проверьте вначале на компе через нормальный обычный USB - так работает или нет? Да именно эта ошибка про диск. При подключении напрямую всё нормально видится, т.к. в системе определяется именно st-link с его vid/pid. Через usbip есть только виртуальный диск. Ничего не блочится и никто ничей порт не занимает, потому что Я сегодня его вручную запускал и openocd на шаге подключения(поиска) st-linka выдал что нет его. Попробую финт ушами с драйверами, не знал про отличия в openocd в версиях libusb, спасибо. Quote Share this post Link to post Share on other sites More sharing options...