HID Bootloader Operating System / Apparie Compatibility

Вассилис
Пт 25 мая 2018 г., 6:45
Мне нужны добровольцы, чтобы проверить текущий загрузчик HID для Maple Mini и Bluepill .
Если кто -то хочет помочь, он/она проверяют это .Bin File и сообщите, если он работает должным образом на его/ее компьютерной системе.
Пожалуйста, сообщите о операционной системе и процессоре, который вы использовали во время тестов .
Например: Win 10 64 -бит - i3 4360 @ 3.7 ГГц, Ubuntu 17.10 - i3 4360 @ 3.7 ГГц и т. Д.

Это действительно важно проверить совместимость загрузчика HID на нескольких операционных системах.

РЕДАКТИРОВАТЬ

Как сделать тесты

* Полная стирайте свой чертеи, прежде чем сжечь загрузчик.
* Сжигать HID Bootloader Файл корзины в ваш чертепел или Maple Mini с помощью программиста, такого как ST-Link.

На машине Windows
  1. Используйте Usbdeview Чтобы увидеть, правильно ли расположено устройство загрузчика HID из ваших Windows. Дважды нажмите на устройство, чтобы увидеть свойства.
    usbdeview_1.png
    usbdeview_1.PNG (22.92 киб) просмотр 1901 раз

Zoomx
Пт 25 мая 2018 г., 9:40
hid_generic_pc13.молния Maple Mini или Bluepill?

Вассилис
Пт 25 мая 2018 г. 9:52 утра
[Zoomx - Пт 25 мая 2018 г., 9:40 утра] - hid_generic_pc13.молния Maple Mini или Bluepill?
Ты прав. Я загрузил оба файла.

Rogerclark
Пт 25 мая 2018 г., 10:50 утра
Vassilis уже знает это, но я попробовал синюю таблетку и RB Blackpill с этим загрузчиком на моем компьютере Windows 7 x64 Core i7 4GHz.
(Я думаю, что я управляю материнской платой на основе Skylake)

Я попробовал ноутбук Core i3 (Windows 7 x64), и он тоже не сработал.

Я думаю, что это может работать на моей машине Linux Mint (Core I5), так как LSUSB обнаруживает VID/PID, но я не протестировал его

Однако он был распознан на ноутбуке под управлением Windows 10 (Core i3)


На машинах Windows, где он не работал, Windows не сообщает VID/PID, он просто отображается как «Unkown Device» в диспетчере устройств

Пито
Пт 25 мая 2018 г., 16:05
Что нужно сделать после прошивки загрузчика в?

Вассилис
Пт 25 мая 2018 г., 18:38
Я напишу подробное руководство о том, как сделать тесты.

Rogerclark
Пт 25 мая 2018 г., 21:41
[Пито - Пт 25 мая 2018 г. 16:05] - Что нужно сделать после прошивки загрузчика в?
Ваш компьютер видит его как действительное устройство HID ?

Вассилис
Сб 26 мая 2018 г. 8:19
Ребята, посмотрите на первый пост. Я написал, как проверить загрузчик HID, руководство

Пито
Сб 26 мая 2018 г., 10:22
Bluepill, i3 6320 3.9 ГГц, GA-Z170N-Wifi, Skylake, Win7 64bit
.
Hid Bootloader в bluepill.jpg
Hid Bootloader в Bluepill.JPG (134.27 киб) просмотрено 1891 раз

Вассилис
Сб 26 мая 2018 г. 9:15 вечера
Спасибо, Пито за подробную информацию !

Fredbox
Сб 26 мая 2018 г. 11:32
OS = Linux Mint 17.3
CPU = Intel (R) Pentium (R) CPU G3258 @ 3.20 ГГц
Доска = синяя таблетка

Я успешно прошил загрузчик, используя адаптер TTL Serial/USB. Светодиод быстро мигает, вероятно, 10 раз в секунду.
dmesg [Sat May 26 18:20:33 2018] usb 3-5: new full-speed USB device number 47 using xhci_hcd [Sat May 26 18:20:33 2018] usb 3-5: New USB device found, idVendor=f055, idProduct=0001 [Sat May 26 18:20:33 2018] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [Sat May 26 18:20:33 2018] usb 3-5: Product: STM32F HID Bootloader [Sat May 26 18:20:33 2018] usb 3-5: Manufacturer: www.brunofreitas.com [Sat May 26 18:20:33 2018] usb 3-5: SerialNumber: 1234567890 [Sat May 26 18:20:33 2018] usb 3-5: ep 0x81 - rounding interval to 32 microframes, ep desc says 40 microframes [Sat May 26 18:20:33 2018] hid-generic 0003:F055:0001.13A7: hiddev0,hidraw4: USB HID v1.11 Device [www.brunofreitas.com STM32F HID Bootloader] on usb-0000:00:14.0-5/input0

Пито
Солнце 27 мая 2018 г., 6:33
Интересно, что я никогда не получил это сообщение An error occurred while uploading the sketch

Вассилис
Солнце 27 мая 2018 г., 6:43
Быстрое светодиодное мигание нормально, когда работает загрузчик HID.
Я выбираю эту скорость, чтобы она отличалась от наброска на 1 секунду мигания. Таким образом, я знаю одним взглядом, если MCU находится в режиме загрузчика или в коде пользователя (Slink Sketch)

Сжимать
Солнце 27 мая 2018 г., 10:02
@Vassilis, вы что -нибудь изменили в загрузке с вашего GitHub версия?
Я хочу разжечь это, чтобы внести некоторые изменения...

Вассилис
Солнце 27 мая 2018 г. 10:33
[Сжимать - Солнце 27 мая 2018 г. 10:02] - @Vassilis, вы что -нибудь изменили в загрузке с вашего GitHub версия?
Я хочу разжечь это, чтобы внести некоторые изменения...
Я изменил некоторые детали исходного кода в моих локальных (мой компьютер) файлы загрузки HID. Вы можете расколоть последнюю версию GitHub.

Fredbox
Солнце 27 мая 2018 г. 15:53
Обновление: кажется частично, это проблема с разрешениями, так как Sudo работает один раз. sudo ./hid_upload /tmp/arduino_build_750454/Blink.ino.bin ttyS0 +----------------------------------------------------------------------+ | HID-Flash v1.4e - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ Trying to open the comport... Toggling DTR... Sending command... Flashing firmware... ....................................................................... ................................. Done! Sending command...

Вассилис
Солнце 27 мая 2018 г. 16:38
Я установил Mint 18.3 Cinnamon 64 -бит на Celeron 1007U - 1.5 ГГц. Он работает нормально, когда я запускаю Arduino Ide как sudo.
Sketch uses 15828 bytes (24%) of program storage space. Maximum is 65536 bytes. Global variables use 3088 bytes (15%) of dynamic memory, leaving 17392 bytes for local variables. Maximum is 20480 bytes. +----------------------------------------------------------------------+ | HID-Flash v1.4e - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ Trying to open the comport... Toggling DTR... Sending command... Flashing firmware... ....................................................................... ......................................................... Done! Sending command...

Сжимать
Солнце 27 мая 2018 г., 17:17
Попробуйте выполнить в другом терминале: sudo watch -n 1 lsusb

Fredbox
Солнце 27 мая 2018 г., 19:32
Дальнейшие тесты:

С помощью boot0 = 0 и boot1 = 1, загрузка успешна с использованием SUDO после отключения и повторного разбивания USB-кабеля. Выполнение второй загрузки не удалось. После того, как USB будет отключен и повторно выключен, загрузка успешна.

С boot0 = 0 и boot1 = 0 и запускаемым кодом пользователя, я кратко увижу светодиод, если я попытаюсь загрузить, пока светодиод выключен. Я также вижу, как кленовое устройство временно исчезает из LSUSB, используя команду часов, предложенную Slammer. Единственный способ получить успешную загрузку с этими настройками перемычки - это перепрофиль загрузчика.

Также кажется странным, что среда Arduino сообщает о полных 64 или 128 тыс. Вместо того, чтобы вычитать 4K для загрузчика. Sketch uses 13044 bytes (19%) of program storage space. Maximum is 65536 bytes. Sketch uses 13044 bytes (9%) of program storage space. Maximum is 131072 bytes.

Пито
Пн 28 мая 2018 г. 8:06
Также кажется странным, что среда Arduino сообщает о полных 64 или 128 тыс. Вместо того, чтобы вычитать 4K для загрузчика. Это берет на себя размеры вспышки от досок.текст: ## STM32F103C8 ------------------------- genericSTM32F103C.menu.device_variant.STM32F103C8=STM32F103C8 (20k RAM. 64k Flash) genericSTM32F103C.menu.device_variant.STM32F103C8.build.cpu_flags=-DMCU_STM32F103C8 genericSTM32F103C.menu.device_variant.STM32F103C8.build.ldscript=ld/jtag_c8.ld genericSTM32F103C.menu.device_variant.STM32F103C8.upload.maximum_size=65536 genericSTM32F103C.menu.device_variant.STM32F103C8.upload.maximum_data_size=20480 ## STM32F103CB ------------------------- genericSTM32F103C.menu.device_variant.STM32F103CB=STM32F103CB (20k RAM. 128k Flash) genericSTM32F103C.menu.device_variant.STM32F103CB.build.cpu_flags=-DMCU_STM32F103CB genericSTM32F103C.menu.device_variant.STM32F103CB.build.ldscript=ld/jtag.ld genericSTM32F103C.menu.device_variant.STM32F103CB.upload.maximum_size=131072 genericSTM32F103C.menu.device_variant.STM32F103CB.upload.maximum_data_size=20480

Вассилис
Пн 28 мая 2018 г., 11:03
Не могли бы вы скопировать этот файл в следующую папку ? Arduino_STM32/tools/linux

Fredbox
Пн 28 мая 2018 г., 15:11
Я применил патч и протестировал задержки с 500-2000 с шагом 250. Я не вижу никаких изменений в поведении. Я считаю, что это может быть вызвано тем, что устройство не перечисляется с Hid Vid/PID во время HID_UPLOAD. Запуск hid_upload с задержкой 2000 года дает это в DMESG: [Mon May 28 10:09:40 2018] usb 3-6: USB disconnect, device number 46 [Mon May 28 10:09:41 2018] usb 3-6: new full-speed USB device number 47 using xhci_hcd [Mon May 28 10:09:41 2018] usb 3-6: New USB device found, idVendor=1eaf, idProduct=0004

Пито
Пн 28 мая 2018 г. 18:17
Я прошел следующий эксперимент:
1. свежо вспыхнул HID_BOUTLOADER в BPILL
2. Win7 установил устройство HID «правильно», я вижу устройство в USBDeview с правильными свойствами [«Хорошее скрытие»]
3. Загрузил эскиз через HID -загрузчик с CMD C:\Users\pito\Desktop>hid-flash.exe INTR_Pulser.bin COM6 +----------------------------------------------------------------------+ | HID-Flash v1.4e - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ Trying to open the comport... unable to open comport Sending command... Flashing firmware... ....................................................................... ................................................................. Done! Sending command... C:\Users\pito\Desktop>

Вассилис
Вторник 29 мая 2018 г. 13:05
@fredbox

1. Ваш 64-битный или 32-битный Mint Mint ?
2. Вы подключаете свой чертежи в порту USB-3 ?
3. Загрузчик DFU (Bootloader 2.0) Для Bluepill работает OK на вашем компьютере с той же платой Bluepill ?
4. Если да, то это перечисляется правильно, когда вы пытаетесь запрограммировать его из Arduino IDE ?
5. Не могли бы вы использовать USB -концентратор, если он, конечно, доступен, между вашим компьютером и платой Bluepill, чтобы увидеть, перечисляется ли Bluepill + Hid Bootloader OK ?

Вассилис
Вторник 29 мая 2018 г., 16:00
Новая прошивка загрузчика для Bluepill и Maple Mini.

РЕДАКТИРОВАТЬ
А hid_bootloader_180529_01.молния удален

Пито
Вторник 29 мая 2018 г. 16:17
С старым загрузчиком - ситуация - теперь под Slaeber, загрузки в порядке.
Моя путаница связана с вмешательством драйверов Goodhid/Badhid/Cameras.
Ситуация
Ситуация.JPG (105.87 киб) просмотрено 816 раз

Fredbox
Вторник 29 мая 2018 г. 16:29
[Вассилис - Вторник 29 мая 2018 г. 13:05] - 1. Ваш 64-битный или 32-битный Mint Mint ? 64 бит
2. Вы подключаете свой чертежи в порту USB-3 ? Нет, USB 2.0 порт
3. Загрузчик DFU (Bootloader 2.0) Для Bluepill работает OK на вашем компьютере с той же платой Bluepill ? Да
4. Если да, то это перечисляется правильно, когда вы пытаетесь запрограммировать его из Arduino IDE ? Да
5. Не могли бы вы использовать USB -концентратор, если он, конечно, доступен, между вашим компьютером и платой Bluepill, чтобы увидеть, перечисляется ли Bluepill + Hid Bootloader OK ? У меня есть несколько USB 2.0 концентраторов, я попробую, чтобы увидеть, имеет ли это значение.
Я также попробовал последний выпуск версии Bootsector (1.3b).
Используя эту версию с помощью boot0 = 0 и boot1 = 1, загрузка успешна 10 раз подряд. Я заметил, что идентификатор меняется на этой версии на 1209/детка. Тот, который я тестировал, все еще использовал F055/0001.

Я проверю новую версию, которую вы опубликовали сегодня.

Пито
Вторник 29 мая 2018 г. 16:42
Новый загрузчик - с подключенной камерой, как и раньше - загрузите OK, связывайтесь с Goodhid/Badhid/Cameras.

Затем:
1. Я снял камеру из USB -порта и удалил все - Goodhid, Badhid и драйверы камеры через USBDeview.
2. Вставлен Bluepill (с прошитым новым загрузчиком и моим эскизом, оба желтых переключателей Boot = 0), Maple Com6 появился Active
3. Первая загрузка - не удалась, и впоследствии он установил драйвер Goodhid, я вижу Goodhid неактивный
4. Вторая загрузка - ОК, Goodhid Active во время загрузки, Maple Com6 отключен во время загрузки
5. После завершения загрузки - Goodhid отключен, Maple6 подключен, я вижу свои данные
6. Не было установлено никакой камеры и драйверов Badhid, я вижу только Maple Com6 и Goodhid.
Ситуация - новый загрузчик без камеры подключена в.jpg
Ситуация - новый загрузчик без камеры не подключена.JPG (47.04 киб) просмотрено 814 раз

Вассилис
Вторник 29 мая 2018 г., 17:28
Спасибо, ребята, за вашу помощь.

Я заметил, что Usbdeview не всегда работает нормально. Иногда он не показывает перечисления USB.

Пито, Используйте usbtreeview Альтернативная программа. Это намного лучше, чем Usbdeview

Пито
Вторник 29 мая 2018 г., 17:37
С USBTreeview переключатели порта10 с Com6 на спрятан и обратно во время загрузки - как увидеть/захватить оба (активные и неактивные)?
За исключением того, что преследуя правильный момент, когда сжимают активность и сделайте «скопировать отчет отсюда» настолько быстро, насколько я могу сделать .. :)

Вассилис
Вторник 29 мая 2018 г. 18:39
[Fredbox - Вторник 29 мая 2018 г. 16:29] - Я также попробовал последний выпуск версии Bootsector (1.3b).
Используя эту версию с помощью boot0 = 0 и boot1 = 1, загрузка успешна 10 раз подряд. Я заметил, что идентификатор меняется на этой версии на 1209/детка. Тот, который я тестировал, все еще использовал F055/0001.
Это потому, что Bootsector получил свой собственный видео: Pid от http: // pid.коды. Это хорошая идея ! Я послал пиар, чтобы получить собственное видео: pid для нашего Hid Bootloader.
[Fredbox - Вторник 29 мая 2018 г. 16:29] - Я проверю новую версию, которую вы опубликовали сегодня.
Жду твоих новостей

Fredbox
Ср 30 мая 2018 г. 12:43
USB -центр не имел никакого значения. Новый загрузчик не имел никакого значения, хотя я заметил, что boot1 = 1 больше не включает в себя режим HID. Однажды я смог мигать, но после этого я вижу, что переключал DTR, а затем не может открыть устройство HID.

Есть около 0.2 секунды (от dmesg -d) между USB Deanconct и Ttyacm0 вновь появляется. Похоже, что он возвращается в код пользователя, прежде чем устройство HID сможет перечислять.

Пито
Ср 30 мая 2018 г., 6:34
Единственное «исправление», которое я сделал, что привело к «работающему» старому/новому загрузчику HID (имел те же симптомы, что и сейчас), - это удалить _все_ Случаи водителей USB, связанных с этим упражнением (я сделал это в USBDeview, Win7) - как сериал Maple, Hids..

Fredbox
Ср 30 мая 2018 г., 16:42
После дальнейшего устранения неполадок моя проблема, по -видимому, связана с волшебным словом, отсутствующим в резервном регистре 10.

Я включил следующее в свой мигающий эскиз: bkp_init() Serial.print("Magic number: "); Serial.println(bkp_read(10), HEX);

Сжимать
Ср 30 мая 2018 г., 19:41
@Vassilis вы обновите код GitHub?

Fredbox
Ср 30 мая 2018 г., 22:50
С волшебным словом, перечисление работает, как и ожидалось: [Wed May 30 17:44:41 2018] usb 3-5: USB disconnect, device number 93 [Wed May 30 17:44:41 2018] usb 3-5: new full-speed USB device number 94 using xhci_hcd [Wed May 30 17:44:41 2018] usb 3-5: New USB device found, idVendor=f055, idProduct=0001 [Wed May 30 17:44:41 2018] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [Wed May 30 17:44:41 2018] usb 3-5: Product: STM32F HID Bootloader [Wed May 30 17:44:41 2018] usb 3-5: Manufacturer: www.brunofreitas.com [Wed May 30 17:44:41 2018] usb 3-5: SerialNumber: 1234567890 [Wed May 30 17:44:41 2018] usb 3-5: ep 0x81 - rounding interval to 32 microframes, ep desc says 40 microframes [Wed May 30 17:44:41 2018] hid-generic 0003:F055:0001.142A: hiddev0,hidraw4: USB HID v1.11 Device [www.brunofreitas.com STM32F HID Bootloader] on usb-0000:00:14.0-5/input0 [Wed May 30 17:44:44 2018] usb 3-5: USB disconnect, device number 94 [Wed May 30 17:44:44 2018] usb 3-5: new full-speed USB device number 95 using xhci_hcd [Wed May 30 17:44:44 2018] usb 3-5: New USB device found, idVendor=1eaf, idProduct=0004 [Wed May 30 17:44:44 2018] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [Wed May 30 17:44:44 2018] usb 3-5: Product: Maple [Wed May 30 17:44:44 2018] usb 3-5: Manufacturer: LeafLabs [Wed May 30 17:44:44 2018] usb 3-5: ep 0x82 - rounding interval to 1024 microframes, ep desc says 2040 microframes [Wed May 30 17:44:44 2018] cdc_acm 3-5:1.0: ttyACM0: USB ACM device

Сжимать
Ср 30 мая 2018 г. 11:07
[Fredbox - Ср 30 мая 2018 г. 22:50] - Остальная проблема заключается в том, как позволить обычному пользователю использовать загрузчик HID.
Мне все еще нужно использовать Sudo для загрузки.
Странно, я могу загрузить в качестве обычного пользователя, и я ничего не изменил в разрешениях, группах пользователей и т. Д.... Эти настройки настроены в моей системе долгое время, как я помню.

Fredbox
Чт 31 мая 2018 г., 2:28
После долгих поисков и экспериментов, у меня есть это без SUDO.

Create/etc/udev/49-hidbootloader.Правила с этими строками:#allow non-root access to hid bootloader SUBSYSTEM=="usb", ATTRS{idVendor}=="f055", ATTRS{idProduct}=="0001", MODE="0666" GROUP="plugdev"

Вассилис
Чт 31 мая 2018 г. 8:04
[Сжимать - Ср 30 мая 2018 г., 19:41] - @Vassilis вы обновите код GitHub?
Хорошо, я обновлю код GitHub, как только смогу.

Вассилис
Чт 31 мая 2018 г. 14:07
[Fredbox - Ср 30 мая 2018 г. 16:42] - После дальнейшего устранения неполадок моя проблема, по -видимому, связана с волшебным словом, отсутствующим в резервном регистре 10.

Я включил следующее в свой мигающий эскиз: bkp_init() Serial.print("Magic number: "); Serial.println(bkp_read(10), HEX);

Fredbox
Чт 31 мая 2018 г., 17:31
Вы скопировали USB_SERIAL.CPP из файла Zip Patch в ваш ARDUINO_STM32/STM32F1/CORES/MAPLE FOLDER ? Да, я скопировал usb_serial.CPP~/Arduino/hardware/Arduino_STM32/STM32F1/cores/maple $ ls -la usb* -rw-r--r-- 9467 May 15 16:20 usb_serial.cpp -rw-r--r-- 2822 Jul 10 2017 usb_serial.h

Вассилис
Пт, 01 июня 2018 г., 9:57 утра
На тестированиях, которые я сделал, я использовал:
  • Arduino Ide 1.8.5
  • Arduino Sam Boards (32-битная рука Cortex-M3) V 1.6.11 (Инструменты->Доска->Менеджер советов)
  • Последний Arduino_stm32 Репо (Аппаратное обеспечение/arduino_stm32 папка)
  • Arduino_stm32_patch_180517_01.молния патч -файл
Я успешно протестировал загрузчик HID в следующих системах:
  • Intel i3-4360 @ 3.7 ГГц, Windows 10, 64 -битный (двойной загрузочный компьютер)
  • Intel i3-4360 @ 3.7 ГГц, Ubuntu 17.1, 64-битный (двойной загрузочный компьютер)
  • AMD FX 6300 Six Core @ 3.5 ГГц, Windows 10, 64-битный (двойной загрузочный компьютер)
  • AMD FX 6300 Six Core @ 3.5 ГГц, мят 18.3, 64-битный (двойной загрузочный компьютер)
  • Intel celeron Quad Core J3455 @ 1.50 ГГц, Windows 10, 64-битный
  • Intel Celeron Dual Core 1007U @ 1.50 ГГц, Windows 7, 64-битный
  • Intel Dual Core Atom D510 @1.66 ГГц, Windows 7, 32-битный
Пока что все тесты были успешными.

Стивестронг
Пт, 01 июня 2018 г., 11:59
Vassilis, не могли бы вы описать процедуру тестирования?

Пито
Пт, 01 июня 2018 12:18
Почему мы думаем, что тип аппаратного обеспечения ПК важен для успешной работы загрузчика HID?
Почему процессор? Это не имеет к этому никакого отношения.
Даже ОС не должна иметь к ней никакого отношения.
Есть мегатоны слоев HW и SW между процессором и USB -разъемом.
Существуют тысячи вариантов текущего аппаратного и USB -хабов OSES и USB - никто не проходит такое тестирование.

Биллг и Ко. Скажет вам: «Мы потратили 40 лет и десятки миллиардов долларов, разрабатывая этот материал, так вы не должны этого делать.." :)

Его успех связан с правильной реализацией механизма USB внутри загрузчика HID и самого STM32, я думаю. То, что люди, которые знают об этом лучше, в прошлом говорили мне, что USB сложно, так как реализуторы редко следуют механизму в деталях, такие как Ос счастливы.

Сжимать
Пт, 01 июня 2018 12:27
Я в порядке на своем рабочем столе и ноутбуке (Debian Sid оба). 100% успех на AutoReset и загрузку. : D

Вассилис
Пт, 01 июня 2018 г. 13:47
Почему процессор? Это не имеет к этому никакого отношения. Современные процессоры работают с более сложными чипсетами, которые также контролируют USB. У меня была в прошлой проблеме с USB -устройствами, которые работают OK на USB 2.0 портов, но они не работали на USB 3.0 портов. Обычно между USB 3 существует обратная совместимость.0 и USB 2.0
Даже ОС не должна иметь к ней никакого отношения. Несмотря на то, что устройства HID используйте общие драйверы. Эти драйверы, возможно, имеют разницу в синхронизации сигнала на каждой ОС. Кроме того, загрузчик HID использует общий драйвер, но в основном эскизе используется драйвер CDC для устройства Serialusb. Переключение с HID на CDC и наоборот может быть проблемой для некоторой ОС ' .

Я не знаю, в чем проблема, и загрузчик HID отлично работает на некоторых ПК, а не на других ПК. Я пытаюсь понять это.

Пито
Пт, 01 июня 2018 г., 15:29
Я являюсь полным сторонником этой деятельности и помогу вам столько, сколько смогу. Но я не эксперт в USB. Что я получил. Эта тема следующей:

1. Существует много данных и процессов, которые необходимо предоставить, связанные с перечислением USB и последующими процессами
2. Подробную документацию трудно получить, особенно связанная с победой
3. Linux менее разборчивый и не требует реализации всех данных и процессов
4. Победа гораздо более разборчива, когда что -то не хватает, это может/не сбой

Я полностью полагаю, что типы процессора, типы северных/южных мостов, типы USB2.0/usb3.0 Chipsets имеет мало (или ничего), связанного с надлежащим функционированием любых USB "Dongles", которые вы вставляете в USB -розетку. Я бы не стал вводить пальцем в огонь, когда говорил о ОС, но я довольно склонен полагать, что ОС также неплохой парень в этой игре.

Это всегда связано с строгим соблюдением требуемых структур и процессов данных.

Существует, возможно, 200000 различных типов USB -гаджетов людей по всему миру ежедневной вставки в 5000 комбинаций CPU/Chipsets/OS_VARIETIES/USB2/USB3_SOCKET, и это просто работает.

Вассилис
Пт, 01 июня 2018 г. 15:53
[Стивестронг - Пт, 01 июня 2018 г., 11:59 утра] - Vassilis, не могли бы вы описать процедуру тестирования?
Я напишу всю процедуру подробно.

На каждом ПК (Linux или Windows)
  1. Загрузите портативную версию Arduino Ide 1.8.5
  2. Извлеките файл ZIP в каталог по вашему выбору (например, в Windows, C: \ Electronics \ arduino_ide)
  3. Скачать Arduino_stm32 Repo и извлечь файл в папку, которую вы извлекли Arduino IDE
    (C: \ Electronics \ arduino_ide \ harpware)
  4. Новая папка будет создана в аппаратной папке (Arduino_stm32-Master)
  5. Переименовать эту папку в "arduino_stm32"
  6. Скачать мой Stm32_hid_bootloader и извлечь Arduino_stm32_patch_180601_01.молния файл в Arduino_stm32 папка
  7. Сжигать hid_generic_pc13.бин прошивка на вашу плату Bluepill с помощью ST-Link или серийный программист (адрес 0x08000000).
  8. Запустите Arduino IDE (с Sudo или GKSU в Linux) или просто дважды нажмите Ардуино.Exe в Windows и выберите «Инструменты->Доска->Generic STM32F103C Series "
  9. Выбирать Инструменты->Метод загрузки->HID Bootloader
  10. На этом этапе нет необходимости выбирать последовательный порт.
  11. Откройте набросок примеров Blink и нажмите «Загрузить»
  12. После сжигания примера Blink выберите серийный порт из Инструменты->Порт
  13. Измените время задержки мигания с 1000 на 500 или любое значение, которое вы хотите, и нажмите снова на «Загрузить»
  14. Повторите 2-3 раза выше шага 13 и проверьте, правильно ли забросок Blink запрограммируется в BluePill.

Вассилис
Пт, 01 июня 2018 г., 16:08
Пито написал: Я являюсь полным сторонником этой деятельности и помогу вам столько, сколько смогу.

Фрейндер
Пт, 01 июня 2018 11:44
Привет,

Вот еще один тест:

ОС: Ubuntu 18.04
Доска: Bluepill
Используются инструкции: ViewTopic.PHP?F = 32&t = 3661&начало = 40#P45885

Мне также нужно было добавить правила UDEV, как указано @fredbox ранее.

Результаты:
- Выполнил несколько вспышек, каждый был успешным.
- Небольшая проблема: при подключении Bluepill в первый раз DMESG показывает 2 ошибки чтения, а затем продолжается без проблем: [327851.741783] USB 1-11: чтение дескриптора устройства/64, ошибка -71
[327851.977822] USB 1-11: чтение дескриптора устройства/64, ошибка -71
[327852.213807] USB 1-11: новый полноступный USB-устройства номер 45 с использованием xhci_hcd
[327852.363319] USB 1-11: Найдено новое USB-устройство, idvendor = f055, iDproduct = 0001
[327852.363325] USB 1-11: новые строки USB-устройства: MFR = 1, продукт = 2, серийный доход = 0
[327852.363329] USB 1-11: Продукт: STM32F HID Bootloaderer
[327852.363333] USB 1-11: Производитель: www.Брунофрейтас.компонент
[327852.365196] Hid-Generic 0003: F055: 0001.000c: hiddev1, hidraw5: usb hid v1.11 Устройство [www.Брунофрейтас.компонент STM32F HID Bootloader] на USB-0000: 00: 14.0-11/input0

Стивестронг
SAT 02 июня 2018 г., 7:45 утра
Хм. Загрузите OK (10 раз), но код не работает, потому что COM -порт не обнаружен, он держит HID, очень быстро мигает светодиодные мигание. +----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > unable to open comport > Searching for F055:0001 HID device... > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ........................................................................ ................................. > Done! > Sending command...

Вассилис
SAT 02 июня 2018 г. 8:31
Стив, являются подсудками Boot-0 и Boot-1 в положении 0 ?
Изображение

Пито
SAT 02 июня 2018 г. 8:53
Я взял на себя ваш последний hid_bootloader и usb_serial.CPP Serial и 've пропустили его в BPILL (Boot Switches = 0).
После быстрого мигает светодиод.
После первой загрузки и повторного вставки BPILL он установил драйвер HID.
В USBDeview я нашел 2 драйвера HID - один с серийным номером 1234567890, а второй без (в противном случае оба с VIP PID HID_BOOTLOADER).
Я удалил тот, что без номера SER.
Загрузка работала нормально.
Мой эскиз работает нормально.
Плз. Укажите, требуется ли это для переустановки всех вещей, или этого достаточно, чтобы перепрофировать только загрузчик..

PS: Когда я удаляю этого драйвера (тот, который без серийного номера):
Hid Bootloader No Serialnum.jpg
HID Bootloader No Serialnum.JPG (58.82 киб) просмотрено 401 раз

Вассилис
SAT 02 июня 2018 г. 10:19
[Пито - SAT 02 июня 2018 г. 8:53 утра] - Плз. Укажите, требуется ли это для переустановки всех вещей, или этого достаточно, чтобы перепрофировать только загрузчик..
Хорошо

Описание серийного номера изначально не было включено (код Bootsector). Я включил, несколько обновлений назад. На данный момент лучше оставить описание SN для упрощения кода.

Я удалил от USBDeview Все устройства HID были установлены с VID: PID F055: 0001, а затем я перевернул HID-BL в порт USB. Windows узнала новое устройство и установила драйверы только один раз.

Есть 2 байта в Usb_device_desc Это установило ревизию прошивки Bootloader (BCDDevice 0.01). В настоящее время установлен на V0.01
Я увеличу это число, чтобы избежать путаницы с загрузчиком .Файлы корзины.

Пито
SAT 02 июня 2018 12:01
Итак, я взял ваш последний (1 июня)
hid_generic_pc13.бин
usb_serial.CPP
спрятанный.Exe

После вспышки в BL в BP быстро мигает.
Я удалил все драйверы с прямыми с помощью USBDeview.

После первой загрузки наброски сказано, что не может найти HID.
После замены BPILL он показал «USB -устройство, не распознанное». После, возможно, 1-2 замены и через несколько секунд он установил драйвер (без SN).

После этого это работает нормально. Я вижу драйвер HID (без SN) и Maple Com6. Драйвер сжима подключается во время загрузки эскиза, а затем отключает.
Maple Com6 отключается во время загрузки эскиза, а затем подключает.
Я вижу свои данные из загруженного эскиза, идущего нормально в TT.
+----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for F055:0001 HID device... > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ................................................................. > Done! > Sending command... COM6 is Ready !

Вассилис
Сб, 02 июня 2018 12:14
[Пито - SAT 02 июня 2018 12:01] - Итак, я взял ваш последний (1 июня)
hid_generic_pc13.бин
usb_serial.CPP
спрятанный.Exe

После вспышки в BL в BP быстро мигает.
Я удалил все драйверы с прямыми с помощью USBDeview.

После первой загрузки наброски сказано, что не может найти HID.
После замены BPILL он показал «USB -устройство, не распознанное». После, возможно, 1-2 замены и через несколько секунд он установил драйвер (без SN).

После этого это работает нормально. Я вижу драйвер HID (без SN) и Maple Com6. Драйвер сжима подключается во время загрузки эскиза, а затем отключает.
Maple Com6 отключается во время загрузки, затем подключает.
Я вижу свои данные из загруженного эскиза, идущего нормально в TT.
+----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for F055:0001 HID device... > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ................................................................. > Done! > Sending command... COM6 is Ready !

Пито
SAT 02 июня 2018 12:33
Но когда я отключаю BPILL, подождите 10 секунд, подключаю его обратно к порту USB (к тому же или другому), я получаю «USB -устройство, не распознанное», воздушный шар.
После нескольких попыток (скажем, 1-5) это наконец перечисляется, и я могу загрузить.
Иногда он сразу перечисляется. Иногда нет.
Это может прийти от резистора 10 тыс..
У меня есть BPILL с USBSWITCH PMOS 1K5, который потребует перестройки BL, однако.

Стивестронг
Сб, 02 июня 2018 г. 15:09
[Вассилис - SAT 02 июня 2018 г. 8:31] - Стив, являются подсудками Boot-0 и Boot-1 в положении 0 ?
Хорошо, кажется, это было.
После того, как он положил перемычку на загрузку1, он работает много времени подряд на моем 64-битном Win10 Home, i5-4460T, [email protected] ГГц. +----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for F055:0001 HID device... > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ........................................................................ ................................. > Done! > Sending command...

Вассилис
SAT 02 июня 2018 г. 15:24
Интересно, почему это требуется, потому что загрузчик DFU работает всегда, даже если у меня нет перемычки на Boot1 (я использую PB2 в качестве вывода в некоторых из моих проектов, поэтому я его удалил). Boot0 всегда 0. Это была идея Роджера в случае того, как что -то идет не так во время программирования MCU. В случае потерянного сериала. В этом случае MCU перейдет к коду пользователя, но код serialusb никогда не будет запущен. Serialusb необходим, чтобы поместить MCU в режим HID.

Если вы положите Boot-1 в Logic '1', вы заставите MCU оставаться в загрузчике, и вы можете повторно загрузить свой эскиз.

--- РЕДАКТИРОВАТЬ ---
Что я могу сделать, так это включить внутренний резистор для проникновения на PB2-штифт (Boot-1), когда загрузчик работает. Таким образом, перемычка необходима (логика '1') только на случай, если вы хотите заставить MCU остаться в загрузчике.

Fredbox
SAT 02 июня 2018 г. 15:29
Это звучит как та же проблема, что и у меня.
Перепрошадьте загрузчика HID.
Установите BKP10 в часть настройки вашего кода. bkp_init(); bkp_enable_writes(); bkp_write(10, 0x424C); bkp_disable_writes();

Стивестронг
SAT 02 июня 2018 г. 15:39
[Вассилис - SAT 02 июня 2018 г., 15:24] - Что я могу сделать, так это включить внутренний резистор для проникновения на PB2-штифт (Boot-1), когда загрузчик работает. Таким образом, перемычка необходима (логика '1') только на случай, если вы хотите заставить MCU остаться в загрузчике.
Yeeesss! Это было бы здорово!

Fredbox
SAT 02 июня 2018 г. 16:51
Я скачал ZIP -файл 1 июня и обновил все во всех папках и перепрошил загрузчик HID. Теперь он работает отлично.

Любопытно, что если я напечатаю значение BKP 10 из эскиза Blink, теперь он сообщает 0. Ранее я мог прокомментировать свой код, который установил регистр BKP на 0x424c, и он будет работать только один раз. Что бы вы ни изменили в последнем ревизии, похоже, решило мою проблему.

Linux Mint 17.3, 64 бит, Intel G3248 @ 3.2 ГГц.

У меня больше черных таблеток, чем синие, я посмотрю, смогу ли я перекомпилировать, чтобы светодиод был на PB12.

Спасибо за этот проект.

Вассилис
SAT 02 июня 2018 г., 17:17
[Fredbox - SAT 02 июня 2018 г. 16:51] - Я скачал ZIP -файл 1 июня и обновил все во всех папках и перепрошил загрузчик HID. Теперь он работает отлично.

Любопытно, что если я напечатаю значение BKP 10 из эскиза Blink, теперь он сообщает 0. Ранее я мог прокомментировать свой код, который установил регистр BKP на 0x424c, и он будет работать только один раз. Что бы вы ни изменили в последнем ревизии, похоже, решило мою проблему.

Linux Mint 17.3, 64 бит, Intel G3248 @ 3.2 ГГц.

У меня больше черных таблеток, чем синие, я посмотрю, смогу ли я перекомпилировать, чтобы светодиод был на PB12.

Спасибо за этот проект.
Идеальный !

Fredbox
SAT 02 июня 2018 11:29
Мне удалось обмануть компилятор, который поставляется с Arduino 1.8.5 в перекомпилирование загрузчика HID для черной таблетки.

Я добавил эти строки в конфигурацию.час:#elif defined TARGET_GENERIC_F103_PB12 #define HAS_LED1_PIN #define LED1_CLOCK_EN (RCC->APB2ENR |= RCC_APB2ENR_IOPBEN) #define LED1_CLOCK_DIS (RCC->APB2ENR &= ~RCC_APB2ENR_IOPBEN) #define LED1_BIT_0 (GPIOB->CRH |= GPIO_CRH_CNF12_0) #define LED1_BIT_1 (GPIOB->CRH &= ~GPIO_CRH_CNF12_1) #define LED1_MODE (GPIOB->CRH |= GPIO_CRH_MODE12) #define LED1_OFF (GPIOB->BSRR = GPIO_BSRR_BS12) #define LED1_ON (GPIOB->BRR = GPIO_BRR_BR12)

Пито
Солнце 03 июня 2018 8:02
Я все еще вижу некоторые проблемы с этим (Win7 64bit).
У меня есть 6 бесплатных портов для тестирования, 3XUSB2 и 3XUSB3. Все это выглядит эквивалентно другим устройствам. Хороший.

Теперь, с обеими последними версиями Hid Bloader, я вижу следующим образом:

1. При вставке BPIL всегда Установка Maple Comx, где x увеличивает каждый используемый порт. Когда все известные устройства Maple Comxes удаляются в USBDeview, он все еще увеличивает x с новой вставленной :зло:

2. Это редко распознает спрятанное блокировку. Я получаю > Trying to open the comport... > unable to open comport > Searching for F055:0001 HID device... > Unable to open the HID device. Error: COM6 not found

Вассилис
Sun 03, 2018, 10:04
Пито, не могли бы вы заменить драйвер USB Maple, используя Zadig Software ?
(Этот метод не работает на 64-битном Win10)

Просто выберите Maple в выпадающем меню и нажмите «Драйвер разглагольствования/заменить драйвер»
Вы можете удалить этого водителя от Панель управления -> Диспетчер устройств
Zadig.png
Задиг.PNG (17.11 киб) просмотрено 374 раза

Пито
Солнце 03 июня 2018 г. 10:22
Одинаковый.. Нет устройства HID, но новые Maple Coms (31 уже).

Вассилис
Солнце 03 июня 2018 11:13
Pito, вы можете проверить Bluepill на другом ПК, чтобы увидеть, имеет ли чертеж одинаково коммунальное поведение ?

пса. Ты читал мой личку ?

Вассилис
Солнце 03 июня 2018 12:43
[Fredbox - Сб, 02 июня 2018 11:29 вечера] - Мне удалось обмануть компилятор, который поставляется с Arduino 1.8.5 в перекомпилирование загрузчика HID для черной таблетки.

Я добавил эти строки в конфигурацию.час:#elif defined TARGET_GENERIC_F103_PB12 #define HAS_LED1_PIN #define LED1_CLOCK_EN (RCC->APB2ENR |= RCC_APB2ENR_IOPBEN) #define LED1_CLOCK_DIS (RCC->APB2ENR &= ~RCC_APB2ENR_IOPBEN) #define LED1_BIT_0 (GPIOB->CRH |= GPIO_CRH_CNF12_0) #define LED1_BIT_1 (GPIOB->CRH &= ~GPIO_CRH_CNF12_1) #define LED1_MODE (GPIOB->CRH |= GPIO_CRH_MODE12) #define LED1_OFF (GPIOB->BSRR = GPIO_BSRR_BS12) #define LED1_ON (GPIOB->BRR = GPIO_BRR_BR12)

Вассилис
Солнце 03 июня 2018 13:17
Может ли кто -нибудь проверить хотя бы один из тех Bluepill (hid_generic_pc13.бин) / Блэкпилл (hid_generic_pb12.bin) загрузчики ?
Окна спрятанный.Exe v1.4G также включен в файл ZIP.
Hid-Bl имеет серийный номер. Я изменил ревизию прошивки на V0.02. Это можно посмотреть на Usbdeview.
-
hid_bootloader_180603_01.rar
(29.82 киб) скачано 16 раз

Стивестронг
Солнце 03 июня 2018 22:43
Vassilis, вы активировали входной пуля на PB2 в этой новой версии?

Вассилис
Пн июня 04, 2018, 4:42
Еще не Стив

Стивестронг
Пн июня 04, 2018, 15:51
Vassilis, файл RAR, размещенный выше (hid_bootloader_180603_01.rar) кажется неправильным («не может открыть файл..."), Не могли бы вы снова прикрепить хороший?

Вассилис
Пн июня 04, 2018, 16:30
[Стивестронг - Пн июня 04, 2018, 15:51] - Vassilis, файл RAR, размещенный выше (hid_bootloader_180603_01.rar) кажется неправильным («не может открыть файл..."), Не могли бы вы снова прикрепить хороший?
-
hid_bootloader_180603_01.молния
(32.05 киб) скачано 16 раз

Стивестронг
Пн июня 04, 2018, 17:11
BP: new hid_generic_pc13.бин мигнут, использовал новый спрятанный флаш.Exe.

Тест
0) Нет перемычки на PB2, пользовательский код доступен во Flash
1) Сброс правления -> Светодиодный мигает очень быстро, не выполняется код пользователя
При попытке прошить новый пользовательский код, утилита HID-Flash ничего не ждет, она сразу дает сообщение об ошибке: +----------------------------------------------------------------------+ | HID-Flash v1.4g - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > unable to set comport cfg settings > Searching for F055:0001 HID device... > Unable to open the HID device. An error occurred while uploading the sketch

сапоги
Пн июня 04, 2018, 17:36
@Vassilis,

Я обнаружил ошибку в исходном коде HID Bootloader USB_INIT () и исправил ее:

https: // github.com/bootsector/stm32-hid ... 6025496937

Вы можете повторить это над вилкой.

Вассилис
Вторник 05 июня 2018 12:57
[сапоги - Пн июня 04, 2018, 17:36] - @Vassilis,

Я обнаружил ошибку в исходном коде HID Bootloader USB_INIT () и исправил ее:

https: // github.com/bootsector/stm32-hid ... 6025496937

Вы можете повторить это над вилкой.
Спасибо, я протестирую, если эта ошибка исправит

Вассилис
Вторник 05 июня 2018 г., 14:00
Стив, Джамперы на Boot-1 и Boot-0 необходимы на Bluepill. Если вы удалили эти прыгуны, Hid-Bootloader не работает должным образом. Пожалуйста, если вы используете чертеж, держите эти два перемычки подключены к «0».

Изменения
1. Я применил Bootsector's Исправление ошибок в USB.C файл (новый загрузчик .Файлы корзины).
2. Я удалил задержку за 3 секунды между начальной повышением уровня последовательного порта и поиском устройства USB HID. Вместо этой задержки, спрятана.Exe пытается 6 раз, чтобы найти устройство HID (каждые 1 секунду). Это ускоряет процесс поиска.
-
hid_bootloader_180605_01.молния
(31.75 киб) скачано 17 раз

Пито
Вторник 05 июня 2018 г. 18:19
С последним выше (загрузочные переключатели = 0, Win7 64bit):
1. После прошивки в загрузчике быстро мигает LED13
2. Я отключаю/плагин bpill
3. Я получаю устройство HID и Maple Com (x), оно работает нормально, с 10 повторяющимися загрузками (10x нажимает значок загрузки), в том же порте USB, что и во время установки.." +----------------------------------------------------------------------+ | HID-Flash v1.4h - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for F055:0001 HID device... ## > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ................................................................. > Done! > Sending command... > Error while sending command. COM33 is Ready !

Стивестронг
Втюд 05 июня 2018 г., 19:08
Когда вы подключите плату к коду пользователя в первый раз после удаления устройства HID, нормально, что система видит COM -порт (Active Code пользователя), поэтому он его устанавливает.

Когда код пользователя вспыхнут, устройство HID сохраняется только для Miliseconds, поэтому установить драйвер HID, вы должны оставаться в режиме загрузчика, установив загрузку1 на 1.

Стивестронг
Втюд 05 июня 2018 г., 19:24
Новый Hid-Flash сейчас намного быстрее, протестированный как с старым, так и новым загрузчиком Bin Bin Bin PC13. +----------------------------------------------------------------------+ | HID-Flash v1.4h - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for F055:0001 HID device... ## > F055:0001 device is found ! > Sending command... > Flashing firmware... ....................................................................... ........................................................................ ................................. > Done! > Sending command...

Пито
Вт, 05 июня 2018 г., 19:25
Хорошо,

0. Когда устройство HID BL было удалено из Win7, я должен установить устройство HID BL обратно, установив Boot1 = 1 и заменив
После подключения BP к порту:
1. Когда установлено boot1 = 1, он устанавливает устройство HID BL, оно не устанавливает Maple Comx
После следующей замены BP:
2. Когда установлено boot1 = 0, он устанавливает Maple Comx
3. Когда я делаю загрузку, это работает, как описано выше.

Стивестронг
Втюд 05 июня 2018 г., 19:27
Именно так это должно работать.
Вассилис, пожалуйста, поправьте меня, если я ошибаюсь.

Пито
Вторник 05 июня 2018 г., 19:29
Было бы здорово, если бы он установил устройство HID BL автоматически, с помощью Boot0/1 = 0, когда устройство HID BL не установлено. Почему такое осложнение?
Для меня это было что -то «как обычно, как обычно», поэтому я проверил, что происходит, когда устройство HID BL удалено из Win7..

Fredbox
Вт, 05 июня 2018 г., 19:32
Протестирован 0605 Bootloader на синих таблетках (PC13) и Black Pill (PB12).
Кажется, работает как раньше. Я прошивал Blink 10x на обеих досках без сбоев.

Стивестронг
Вт, 05 июня 2018 г., 19:34
[Пито - Вторник 05 июня 2018 г., 19:29] - Было бы здорово, если бы он установил устройство HID BL автоматически, с помощью Boot0/1 = 0, когда устройство HID BL не установлено. Почему такое осложнение?
Для меня это было что -то «как обычно, как обычно», поэтому я проверил, что происходит, когда устройство HID BL удалено форм Win7..
Я думаю, что это хороший компромисс между быстрым запуском кода пользователя (после каждой загрузки) и установкой драйвера HID (один раз).

Пито
Вт, 05 июня 2018 г., 19:37
Итак, у вас была возможность проверить этот компромисс на практике с «Pito - стандартным пользователем» :) :)

Пито
Ср. 06, 2018, 10:44
Я сделал Com Clean-Up (снято 58 COMS, зарезервированных Maple), и я не получаю ошибку с отправкой команды MCU перезагрузки MCU.

Это занимает 4 секунды между > Sending command...

Стивестронг
Ср. 06 июня 2018 г., 11:05
Я даже не получаю это сообщение, но com -порт почти мгновенно доступен после завершения загрузки.

Пито
Ср. 06 июня 2018 г., 11:30
Это происходит от hid_upload.летучая мышь, вы используете что -то другое?
@echo off rem: Note %~dp0 get path of this batch file rem: Need to change drive if My Documents is on a drive other than C: set driverLetter=%~dp0 set driverLetter=%driverLetter:~0,2% %driverLetter% cd %~dp0 rem: the two line below are needed to fix path issues with incorrect slashes before the bin file name set str=%1 set str=%str:/=\% set comport=%2 rem: ------------- use hid_flash CLI hid_flash\hid-flash.exe %str% %comport% for /l %%x in (1, 1, 10) do ( ping -w 50 -n 1 192.0.2.1 > nul ) mode %comport% | find "RTS" > nul if errorlevel 1 ( echo Error: %comport% not found ) else ( echo %comport% is Ready ! )

Вассилис
Ср. 06 июня 2018 12:45
Пито, hid_upload.летучая мышь Файл больше не используется.
  1. Застраховать, что платформа.Файл TXT включает в себя следующий код # HID upload tools.hid_upload.cmd=hid_upload tools.hid_upload.cmd.windows=hid-flash.exe tools.hid_upload.cmd.macosx=hid_flash tools.hid_upload.path={runtime.hardware.path}/tools/win tools.hid_upload.path.macosx={runtime.hardware.path}/tools/macosx tools.hid_upload.path.linux={runtime.hardware.path}/tools/linux tools.hid_upload.path.linux64={runtime.hardware.path}/tools/linux64 tools.hid_upload.upload.params.verbose=-d tools.hid_upload.upload.params.quiet=n tools.hid_upload.upload.pattern="{path}/{cmd}" "{build.path}/{build.project_name}.bin" {serial.port.file}

Пито
Ср. 06, 2018, 14:06
Приятно знать! :)
Заменил..
Я сделал 25 загрузки нормально.
4 раза у меня есть > Done! > Sending command... > Error while sending command.

Стивестронг
Ср 13 июня 2018 12:24
Hid-Flash v1.4H выглядит очень стабильно (Win10, 64b).

Я мог бы восстановить загрузчик с помощью PB2, установленного для ввода, и теперь он работает для меня без какого -либо набора перемычки Boot1 (R10 Bridged).

Мне нравится быстрое доступность COM (через 1 секунду после сброса)!!!

+10 : P

Сжимать
Ср 13 июня 2018 12:47
Ага! очень быстро, потому что в условиях по умолчанию (режим DowLoading) загрузчик прыгает непосредственно на пользовательскую программу без перечисления DFU...

Вассилис
Ср 13 июня 2018 г., 13:40
Приятно слышать, что Hid-Bl работает нормально на ваших компьютерах.

С тех пор, официально, Hid-Bl будет использовать свой собственный зарегистрированный PID.

Вид: 1209
Пид: Беба

Fredbox
Пт 15 июня 2018 г. 14:27
Я пропустил загрузчик 1209/Beba на синей таблетках и заменил Hid-Flash на новейшую версию.

Я обновил/и т. Д./UDEV/Правила.D/49-Hidbootloader.правила #allow non-root access to hid bootloader SUBSYSTEM=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="beba", MODE="0666" GROUP="plugdev"

Стивестронг
Пт 15 июня 2018 г., 17:29
Vassilis, можем ли мы получить файл Hid-Flash EXE для нового VIP/PID?
Я разделил ваш проект загрузчика, я могу создать загрузчик, но я не хочу загружать инструменты, необходимые для создания инструмента Flash.

Fredbox
Пт 15 июня 2018 г. 18:39
спрятанный.exe в патче.zip -файл датирован 10 июня. Я использовал версию Linux, и у нее был новый VID/PID.

Стивестронг
SAT 16 июня 2018 г., 7:56 утра
Спасибо, я понял, и это работает.

https: // github.com/serasidis/stm32_hid_ ... 610_01.молния
----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > unable to open comport > Searching for 1209:BEBA HID device... > 1209:BEBA device is found ! > Sending command... > Flashing firmware... ....................................................................... ........................................................................ ......................................................... > Done! > Sending command...

Fredbox
Sun 24 июня 2018 г., 16:38
Идея: используйте те же определения в конфигурации.H для светодиода, как в Roger Maple 2.0 Bootloader. #elif defined TARGET_GENERIC_F103_PC13 #define HAS_LED1_PIN #define LED1_CLOCK_EN (RCC->APB2ENR |= RCC_APB2ENR_IOPCEN) #define LED1_CLOCK_DIS (RCC->APB2ENR &= ~RCC_APB2ENR_IOPCEN) #define LED1_BIT_0 (GPIOC->CRH |= GPIO_CRH_CNF13_0) #define LED1_BIT_1 (GPIOC->CRH &= ~GPIO_CRH_CNF13_1) #define LED1_MODE (GPIOC->CRH |= GPIO_CRH_MODE13) #define LED1_OFF (GPIOC->BSRR = GPIO_BSRR_BS13) #define LED1_ON (GPIOC->BRR = GPIO_BRR_BR13)

заглядывать
Пт 29 июня 2018 г., 14:35
Я пытаюсь скрыть работу на Maple Mini (OSX), но я не могу заставить серийный порт работать, что я делаю не так:

Мои шаги видео здесь: https: // asciinema.org/a/muveiiwgzcl67lx1kw57dq5jd

Вассилис
Пт 29 июня 2018 г., 15:00
Серийный USB (CDC) является частью ядра STM32Duino Core. Не включен в загрузчик.

1. Примените патч ZIP в папку arduino_stm32
2. Подключить контакт Boot-1 (не Boot-0) к 3.3 В через резистор (1 - 10K для безопасности)
3. Скомпилируйте и мигайте набросок мигания к Maple Mini, от Arduino IDE, выбрав Hid-Bootloader "из меню
4. Отсоедините штифт Boot-1 от 3.3В

заглядывать
Пт 29 июня 2018 г. 15:15
На конфигурации есть опечатка, потому что мне пришлось вручную переименовать Hid-Flash в HID_FLASH (подчеркивается)

Поэтому я стерла, пропустил загрузчик до 0x8000000, и синий светодиод начинает быстро мигать, затем я подключил провод от Boot1 к VCC и подключил USB -кабель.
Затем выбрано на чипе Arduino:
Изображение

Затем я попытался загрузить эскиз, он не удается, без серийного порта .. Я что -то упускаю?


Users/paulo/Documents/Arduino/hardware/Arduino_STM32/tools/macosx/hid_flash /var/folders/73/85msrtvj4_j99ncvssd7qn7r0000gn/T/arduino_build_328508/Blink.ino.bin cu.SLAB_USBtoUART error, counldn't open comport /dev/cu.SLAB_USBtoUART +----------------------------------------------------------------------+ | HID-Flash v1.4e - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ Trying to open the comport... Unable to open the HID device. a porta série Unable to open the HID device. selecionada não existe ou a placa não está ligada.

заглядывать
Пт 29 июня 2018 г. 15:35
Я признал это, но серийный порт не работает STM32F HID Bootloader: Product ID: 0xbeba Vendor ID: 0x1209 Version: 0.01 Speed: Up to 12 Mb/sec Manufacturer: www.serasidis.gr Location ID: 0xfa120000 / 5 Current Available (mA): 500 Current Required (mA): 100 Extra Operating Current (mA): 0

заглядывать
Пт 29 июня 2018 г., 16:31
Наконец -то я получил это работа, Фу... После составления последней версии... (Вам нужна конфигурация по безмождению, она не явно не на Readme :()

Теперь я понимаю. Boot 1 PIN -код на MM плавает, и вам нужно поместить его 1, чтобы спрятать загрузчик и 0 в обычный режим запуска, или у вас будут неловкие результаты.

Теперь я думаю, что мне нужно положить сериал, работая в эскизе, чтобы снять скрытую без необходимости менять булавки, не так ли?

Сжимать
Пт 29 июня 2018 г., 20:39
Для «Autoreset» и автоматической функции загрузчика вам нужен сериал USB в вашем эскизе.

заглядывать
Сб 30 июня 2018 г. 9:48 утра
Не могу заставить Usserial работать :(

Я пытался:
STM32DUINO + HID BL 1.4f + сериал.begin () не работает :(
STM32DUINO + DFU BL 2.0 + серийный.begin () работает!
Mbed + stlink + usbserial Works!

Мне нужно внедрить конкретную либера?



PS: Я также попробовал сумасшедшую вещь: загрузил корзину, скомпилированную с MBED и Usserial с Hid BL, и он загружен, но не работает : P, Это было бы так аккуратно, если бы вы могли использовать BL для обеих рамок. Mbed с онлайн -компилятором и небольшим сценарием для обнаружения файла bin и загрузки через HID.

заглядывать
SAT 30 июня 2018 г. 13:30
Я получил это работа с последовательным портом, теперь все работает нормально!

Решение: Мне пришлось положить PB9 к НИЗКИЙ!! Вот причина, это было так просто. :ржу не могу:
Я думаю, что вам не нужно на загрузчике DFU ?!
pinMode(PB9,OUTPUT); digitalWrite(PB9,LOW); Serial.begin();

заглядывать
Сб 30 июня 2018 г. 15:17
Я нашел еще одну ошибку: вам нужно изолировать с базовым именем на ARGS

Hid-Flash ~/blink_serial_mm.бин /разработчик /cu.USBMODEM411
+----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... error, counldn't open comport /dev//dev/cu.usbmodem411 > Searching for 1209:BEBA HID device... > Unable to open the HID device.

Fredbox
Сб 30 июня 2018 г. 15:19
Другой Maple Mini Bootloader выходит на высокий штифт, а затем сразу же низкий. #ifdef HAS_MAPLE_HARDWARE /* Setup USB DISC pin as output open drain */ SET_REG(GPIO_CR(USB_DISC_BANK,USB_DISC_PIN),(GET_REG(GPIO_CR(USB_DISC_BANK,USB_DISC_PIN)) & crMask(USB_DISC_PIN)) | CR_OUTPUT_OD << CR_SHITF(USB_DISC_PIN)); gpio_write_bit(USB_DISC_BANK,USB_DISC_PIN,1); /* turn on the USB clock */ //pRCC->APB1ENR |= RCC_APB1ENR_USB_CLK;// done in setupCLK() gpio_write_bit(USB_DISC_BANK,USB_DISC_PIN,0); /* present ourselves to the host */

Fredbox
Сб 30 июня 2018 г. 15:48
Вассилис,

Я создал немного кода Python, чтобы помочь в создании светодиодных определений для разных контактов порта.
Это также создает модификации, необходимые для Makefile.
Я также создал make_all.летучая мышь как тот, который Роджер использует в стандартном загрузке.
См. Файл ZIP для примеров. Примерные номера выводов в основном взяты из стандартного загрузчика.

Вассилис
SAT 30 июня 2018 г. 16:52
[Fredbox - Сб 30 июня 2018 г., 15:48] - Вассилис,

Я создал немного кода Python, чтобы помочь в создании светодиодных определений для разных контактов порта.
Это также создает модификации, необходимые для Makefile.
Я также создал make_all.летучая мышь как тот, который Роджер использует в стандартном загрузке.
См. Файл ZIP для примеров. Примерные номера выводов в основном взяты из стандартного загрузчика.
Спасибо !

заглядывать
SAT 30 июня 2018 г., 17:01
Я только что заметил, что положил DigitalWrite (PB9, вывод) в код вместо низкого уровня : D , Я буду редактировать выше, лол

заглядывать
Сб 30 июня 2018 г., 17:14
Мне любопытно, какой адрес ST-Flash, если я хочу использовать ST-Link и сохранить загрузочный загрузчик, может быть, 0x8001000?

Стивестронг
SAT 30 июня 2018 г., 17:18
Да для загрузчика HID.
Но бинар должен быть составлен по этому адресу начала.

заглядывать
Сб 30 июня 2018 г., 17:37
Так что, если я составлю какую -либо основу для этого адреса, он будет работать? (Попытка с mbed)

Вассилис
Солнце 01 июля 2018 г., 6:12
1. Благодаря Fredbox, Я добавил дополнительные варианты STM32F`03 в MakeFile
2. Я добавил определение на случай, если вы хотите включить внутреннее раскрытие на PB2 PIN-код. Просто добавьте следующую строку в нужный вариант, который вы хотите. См. Maple Mini Variant в конфигурация.час файл. По умолчанию режим плавающего ввода включен на PB2 (PIN-1).#define PB2_PULLDOWN

Вассилис
Sun 1 июля 2018 г., 6:31
[заглядывать - Сб 30 июня 2018 г., 17:01] - Я только что заметил, что положил DigitalWrite (PB9, вывод) в код вместо низкого уровня : D , Я буду редактировать выше, лол
Подожди, Я видел на вашем видео, что вы вспыхнули hid_maple_mini.бин загрузчик на вашей плате. Эта прошивка предназначена для Maple Mini Boards. В вашем следующем посте я прочитал, что вы установили Arduino IDE для Общая серия STM32F103 доски. Это не правильно. Кроме того, Maple Mini не имеет PB9, чтобы установить его из эскиза.

Если у вас есть Maple Mini Board hid_maple_mini.бин прошивка и выберите Доска: Maple Mini от Arduino Ide.
Если у вас есть Bluepill Board hid_generic_pc13.бин прошивка и выберите Доска: Generic STM32F103 серия от Arduino Ide.

заглядывать
Sun 1 июля 2018 12:30
[Вассилис - Солнце 1 июля 2018 г. 6:31 утра] -
[заглядывать - Сб 30 июня 2018 г., 17:01] - Я только что заметил, что положил DigitalWrite (PB9, вывод) в код вместо низкого уровня : D , Я буду редактировать выше, лол
Подожди, Я видел на вашем видео, что вы вспыхнули hid_maple_mini.бин загрузчик на вашей плате. Эта прошивка предназначена для Maple Mini Boards. В вашем следующем посте я прочитал, что вы установили Arduino IDE для Общая серия STM32F103 доски. Это не правильно. Кроме того, Maple Mini не имеет PB9, чтобы установить его из эскиза.

Если у вас есть Maple Mini Board hid_maple_mini.бин прошивка и выберите Доска: Maple Mini от Arduino Ide.
Если у вас есть Bluepill Board hid_generic_pc13.бин прошивка и выберите Доска: Generic STM32F103 серия от Arduino Ide.

Argghhhh! Я следовал учебному пособию на первой странице и выбрал неверную доску, есть так много вариантов, которые я легко запутался, поэтому серийный диск не работал без меня, чтобы установить его на низкий!
О боже, большое спасибо за то, что помогли мне!

Итак, в двух словах, чтобы активировать BL, вам нужен Boot1 = VCC, чтобы запустить программу Boot1 = GND. Затем, если ваш эскиз включен серийный. Одна вещь, которую я заметил, у вас должен быть boot1 = gnd, вы не можете оставить его плавающим или у вас есть результаты случайного сброса.

Hakko1
Сб 25 августа 2018 г., 17:32
Привет! Я модифицировал синюю плату с STM32F103C8 с 1.Резистор 5K на R10. Я пропустил последнюю версию HID Bootloader (от Gihub и других файлов также спрятали Flash и Patch). Моя проблема в том, что я всегда получаю эту ошибку при загрузке: > Done! > Sending command... > Error while sending command.

Вассилис
Сб 25 августа 2018 г., 17:43
@hakko1
1. Пожалуйста, убедитесь, что желтые перемычки связаны с «0», как и следующая картина (это очень важно).
Изображение

2. Пожалуйста, убедитесь, что вы применили следующий патч к своему RPI3 Arduino IDE
https: // github.com/serasidis/stm32_hid_ ... 809_02.молния

Hakko1
Сб 25 августа 2018 г., 17:58
ПРИВЕТ! Настройки загрузки перемычки являются по умолчанию (0,0). Да, я применил патчи.

Одна вещь, которую я заметил, что ошибка в Windows исчезла после того, как я перестал использовать USB -концентратор и подключил плату непосредственно на порт USB ПК.
На RPI я не использую каких -либо центров, но USB -порты на RPI3 - это концентратор?

Вассилис
Солнце 26 августа 2018 г., 5:06 утра
Я проверю Hid-Bl на своем RPI3

michael_l
Ср. 19 сентября 2018 г. 8:13
Если это работает на Blue Mini F407VET6 ? Я только что попробовал это (bootloader_only_binaries / generic_407_pe0.HEX), но по какой -то причине это не узнает Windows. F1 версия работает.

Изображение

Стивестронг
Ср. 19 сентября 2018 г. 8:30
Мини -плата F4VET6 имеет 25 МГц xTal вместо 8 МГц платы Black F4, поэтому я думаю, что тот же загрузок не будет работать.

michael_l
Ср. 19 сентября 2018 г. 9:06 утра
[Стивестронг - Ср. 19 сентября 2018 г., 8:30 утра] - Мини -плата F4VET6 имеет 25 МГц xTal вместо 8 МГц платы Black F4, поэтому я думаю, что тот же загрузок не будет работать.
Правильный. Я только что понял то же самое. Я постараюсь придумать изменение для этого.

michael_l
Ср. 19 сентября 2018 г. 9:29
Изменение этих строк сделало свое дело в основном.C: 239

Rcc_oscinitstruct.PLL.PLLM = 25;
Rcc_oscinitstruct.PLL.Plln = 336;

Но теперь, после того, как мигающая доска остается в режиме загрузчика.

Изображение

Стивестронг
Ср. 19 сентября 2018 г. 9:37 утра
Установите PE0 на GND (вниз)?

michael_l
Ср. 19 сентября 2018 г. 10:07
[Стивестронг - Ср. 19 сентября 2018 г. 9:37] - Установите PE0 на GND (вниз)?
Это не помогло, оставаться в режиме загрузчика. PE0 первоначально устанавливается как светодиод в коде, я изменил его на PB9 для этой платы, но без изменений.

У этой голубой мини -платы также PD15 маршрутируется на Boot1, как Black Poard?

РЕДАКТИРОВАТЬ: Добавлены некоторые данные отладки

Кажется, что Boot1 низкий, а магическое число - 0. Вот почему он остается в режиме загрузчика.

Изображение
/* In case of incoming magic number or is LOW, jump to HID bootloader */ if((magic_val != 0x424C)&&(HAL_GPIO_ReadPin(BOOT_1_PORT, BOOT_1_PIN))){

Rogerclark
Ср. 19 сентября 2018 12:00
[Вассилис - Солнце 26 августа 2018 5:06] - Я проверю Hid-Bl на своем RPI3

К вашему сведению

В настоящее время существует проблема с RPI 3B+, где старый загрузчик DFU не работает правильно

Проблема заключается в том, что сброс импульс должен быть намного дольше на 3B+, чем 3B или старшие доски

Я знаю, что кто -то пытался сделать импульс сброса намного намного дольше, e.глин. 1 мс, и это заставляет его работать на 3B+, а также на других платах RPI, однако это загрузчик больше не работает на всех ПК, особенно более новые ПК

Вероятно, существует компромиссное значение для длины импульса сброса, которое будет работать на RPI 3B+, но, поскольку эта плата кажется аномалией, может быть лучше создать версию, которая специально предназначена для этой платы.

Примечание. Ядро Libmaple также имеет проблемы с сбросом импульсной длины на 3B+, но я не намерен менять его, как это’S, вероятно, сломает несколько ПК и Mac, если я изменю длину импульса сброса

Стивестронг
Ср. 19 сентября 2018 г., 13:40
@michael, это может быть что -то не так при создании собственной версии. Магическое число должно быть рассмотрено из регистров BKP, и он может потерпеть неудачу, если адрес неверен.

michael_l
Ср. 19 сентября 2018 г. 13:58
ОК, что пишет волшебный номер ?

Стивестронг
Ср. 19 сентября 2018 г. 15:55
А (первое) Волшебная последовательность должен быть написан над интерфейсом USB Serial Com, E.глин. hid_flasher.

Затем крючок в серийном коде USB RX пишет для регистров BKP здесь еще одно (второе) магическое число:
https: // github.com/rogerclarkmelbourne/ ... л.CPP#L315
Чтобы это работала, вы должны обновить репо, потому что адрес был установлен Vassilis пару месяцев назад: https: // github.com/rogerclarkmelbourne/ ... /533/файлы

И чтение из второго магического номера здесь:
https: // github.com/serasidis/stm32_hid_ ... айн.C#L141: magic_val = *(__IO uint32_t *)(BKPSRAM_BASE); // Read the magic number 0x0x424C an Backup SRAM address 0x40024000

michael_l
Ср. 19 сентября 2018 г., 21:14
Стив, спасибо за тщательный ответ. Ценю это. Я постараюсь заставить это работать в вашем репо /libmaple /stm32f4.

C_D
Чт 20 сентября 2018 г. 12:07
Я только что попробовал это как на платах Bluepill и VCC-GND F407Vet6 (MINI). Похоже, я довольно близок, но еще не работаю. Любые указатели на то, что я, возможно, пропустил? Я использую версию Stevstrong Rogers Core на Arduino 1.8.5

BluePill:
Вспыхнул предварительно построенный бинар от GitHub. Появляется как устройство HID под Windows, светодиодные вспыхивания, как и ожидалось, загрузка через Arduino выходит из строя, как ниже:
+----------------------------------------------------------------------+ | HID-Flash v1.4f - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > unable to open comport > Searching for 1209:BEBA HID device... > 1209:BEBA device is found ! > Sending command... > Error while sending command. > Error while sending command.

Стивестронг
Чт 20 сентября 2018 г. 8:28 утра
Вы должны взять последнюю HID Flasher из пакета ZIP: https: // github.com/serasidis/stm32_hid_ ... 809_02.молния.

Если вы опубликуете здесь скомпилированный загрузчик HID для Mini F4, я проверю его позже сегодня.

michael_l
Чт 20 сентября 2018 г., 19:57
[C_D - Чт 20 сентября 2018 г. 12:07] -
F407Vet6 mini:
Изменили настройки генератора, как указано Michael_L выше, и изменил #Defines в Main.H для Boot1 (PB2) и LED (PB9). Добавлено следующее в досках.TXT, чтобы получить Hid Bootloader 2.0 меню:
Просто любопытно, как вы узнали, что PB2 - это Boot1 ? . Я пытался найти это также, но не повезло, это в настоящее время неверно в моем коде.

Изменить: это было в схеме. Я слеп... : шок:

Я сделал изменение в загрузчике для PB2 - Boot1 и для светодиодного штифта.

Использование репо Стива F4.. О патче Вассилиса. Нужно было добавить #define APP_RX_DATA_SIZE 2048

C_D
Пт 21 сентября 2018 г., 4:02
[michael_l - Чт 20 сентября 2018 г., 19:57] - Просто любопытно, как вы узнали, что PB2 - это Boot1 ? . Я пытался найти это также, но не повезло, это в настоящее время неверно в моем коде.
DataSheet F407, а затем мультиметр, чтобы дважды проверить :)

Можете ли вы опубликовать изменения, которые вы внесли для компиляции загрузчика для вашего F407 Mini? Должно быть, каждый из них сделал что -то немного другое, так как мои результаты не совпадают с вашими.

Что на самом деле делает Boot1 в загрузке? Из инструкций загрузки эскиза он выглядит так, как будто его предназначено в любом случае, чтобы его можно было потянуть низко?

Сегодня вечером не было времени играть, но у меня появился еще одна трещина и посмотрю, куда я добрался до.

Вассилис
Пт 21 сентября 2018 г., 4:57 утра
[Rogerclark - Ср. 19 сентября 2018 г. 12:00 вечера] -
[Вассилис - Солнце 26 августа 2018 5:06] - Я проверю Hid-Bl на своем RPI3

К вашему сведению

В настоящее время существует проблема с RPI 3B+, где старый загрузчик DFU не работает правильно

Проблема заключается в том, что сброс импульс должен быть намного дольше на 3B+, чем 3B или старшие доски

Я знаю, что кто -то пытался сделать импульс сброса намного намного дольше, e.глин. 1 мс, и это заставляет его работать на 3B+, а также на других платах RPI, однако это загрузчик больше не работает на всех ПК, особенно более новые ПК

Вероятно, существует компромиссное значение для длины импульса сброса, которое будет работать на RPI 3B+, но, поскольку эта плата кажется аномалией, может быть лучше создать версию, которая специально предназначена для этой платы.

Примечание. Ядро Libmaple также имеет проблемы с сбросом импульсной длины на 3B+, но я не намерен менять его, как это’S, вероятно, сломает несколько ПК и Mac, если я изменю длину импульса сброса
Спасибо, Роджер !

Rogerclark
Пт 21 сентября 2018 г. 5:03 утра
@Vassilis

Не беспокойся.

Стивестронг
Пт 21 сентября 2018 г. 9:33 утра
Я только что взял на себя обязательство по репо необходимым изменениям, чтобы поддержать HID -загрузку для серии F4 (Generic и Mini).
Так что вам не нужны файлы патчей.

C_D
Пт 21 сентября 2018 г. 10:58 утра
Стив, это здорово, спасибо!

Я только что попытался использовать вашу последнюю версию, и я все еще получаю Java.ланг.NullPointerException 'в Arduino. Но мой загрузчик не мигает его светодиод.

Я прикрепил свой бинар с загрузчиком, если кто -нибудь хочет попробовать.

Редактировать:
С Stevstrongs последнее ядро, это Bootloader Binary Walls Withing с загрузчиком HID Bootloader.

michael_l
Пт 21 сентября 2018 г., 11:22
Спасибо, Стив, я попробую это тоже сегодня позже.

@C_D: Вы не забыли, чтобы полностью стереть память своей платы, прежде чем сжечь загрузчик? Как сказано в инструкциях.. Я этого не делал, но я подозреваю, что это не проблема.

C_D
Пт 21 сентября 2018 г., 11:27 утра
Да, полный стерт.

Стивестронг
Пт 21 сентября 2018 12:34
Я только что быстро посмотрел код загрузчика F4.

AFAICS, светодиод будет мигать только во время процесса мигания (поиск кода для "LED_1_PIN").
=> Нет входящих данных, без мигания.

Чтобы остаться в режиме загрузчика, штифт Boot1 должен быть установлен на низком уровне (!).
https: // github.com/serasidis/stm32_hid_ ... айн.C#L143: /* В случае входящего магического номера или <Boot_1_pin> низкий, прыгайте, чтобы спрятать загрузчик *// Таким образом, для запуска пользовательского кода Boot1 должен быть установлен высоко !
В качестве альтернативы вы можете активировать встроенный резистор подтягивания здесь: https: // github.com/serasidis/stm32_hid_ ... айн.C#L305.

Код ошибки Java может быть потому, что код пользователя не использует сериал USB, поэтому мигалка не может отправить (первую) магическую последовательность по (несуществующим) USB COM-порту.
Или вам нужно обновить свою версию Java.

michael_l
Пт 21 сентября 2018 г. 14:51
Обновлено последнее репо Стива и начал отлаживать это.

Когда я использую Hid-Flash вручную из Cmdline. MCU идет в Hardfault..
+----------------------------------------------------------------------+ | HID-Flash v2.0 - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > unable to open comport > Searching for 1209:BEBA HID device... # > 1209:BEBA device is found ! > Sending command... > Flashing firmware... . 1024 Bytes

Стивестронг
Пт 21 сентября 2018 г. 15:05
Может быть, нужно отключить прерывания перед миганием.

Это может быть проблема стека?
https: // github.com/serasidis/stm32_hid_ ... #L344-L345

michael_l
Пт 21 сентября 2018 г. 16:16
Получил это. Проблема заключалась в том, что бинарный был слишком велик, я изменил оптимизацию компиляции с -og на -o0. Изменился на -og, и теперь он работает.

Для получения режима загрузчика переключатель DIP в этой синей мини -плате Boot1 должен быть изменен на 0. Если вы хотите загрузить программу снова изменить ее на 1. Так что для этого занимает немного дополнительного времени.



Вот где он в настоящее время висит, когда проходит мигание, а COM12 перечислен.
D:\DL\STM32_HID_Bootloader-master\cli>hid-flash.exe C:\Users\Michael\AppData\Local\Temp\arduino_build_642902\Blink.in o.bin com12 +----------------------------------------------------------------------+ | HID-Flash v2.0 - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR...

Стивестронг
Сб 22 сентября 2018 г. 14:42
Мне удалось восстановить и прошить загрузчик HID для моей черной платы F4VET на Win10, с измененными Boot1 и светодиодными выводами (PB2, PA7).

Но загрузив с Arduino IDE, я получаю ту же ошибку, что и @michael: Sketch uses 63212 bytes (12%) of program storage space. Maximum is 514288 bytes. Global variables use 18688 bytes (14%) of dynamic memory, leaving 112384 bytes for local variables. Maximum is 131072 bytes. java.lang.NullPointerException at cc.arduino.packages.uploaders.SerialUploader.uploadUsingProgrammer(SerialUploader.java:314) at cc.arduino.packages.uploaders.SerialUploader.uploadUsingPreferences(SerialUploader.java:89) at cc.arduino.UploaderUtils.upload(UploaderUtils.java:78) at processing.app.SketchController.upload(SketchController.java:732) at processing.app.SketchController.exportApplet(SketchController.java:703) at processing.app.Editor$DefaultExportHandler.run(Editor.java:2030) at java.lang.Thread.run(Thread.java:748)

Стивестронг
Солнце 23 сентября 2018 14:56
Я решил проблему, вставив в доски.txt по линии generic_f407v.menu.upload_method.HIDUploadMethod.upload.protocol=hid_boot

C_D
Пн 24 сентября 2018 г. 9:37
Оно работает : D

Так что этот Bootloader Binary я прикрепил несколько сообщений назад, на самом деле нормально.

Это только я или настройка булавки Boot1 назад? Конечно, ваш эскиз должен работать, когда он низкий, а затем вы тянете его высоко, чтобы включить загрузчик?

Стивестронг
Пн 24 сентября 2018 г. 9:51
[C_D - Пн 24 сентября 2018 г. 9:37] - IIS это только я или настройка PIN -кода Boot1 назад? Конечно, ваш эскиз должен работать, когда он низкий, а затем вы тянете его высоко, чтобы включить загрузчик?
Да, я тоже так думал. Можно изменить это в коде.
Но я думал далее, я бы дал загрузку 1 второй раз, чтобы обнаружить любую связь HID, прежде чем прыгнуть с кодом пользователя, чтобы загрузка могла быть выполнена даже без первой магической последовательности, в случае, если USB -сериал не используется, без необходимости Чтобы переключить любой перемычку или нажать любую кнопку.

C_D
Пн 24 сентября 2018 г., 9:59
ОК, может быть, нет. Это сработало один раз.

Успешно загружено «мигание». Эскиз есть и работает. Но теперь загрузчик отображается в Windows с «Descriptor Descriptor», и я не могу получить его обратно.

Согласитесь, что последовательность загрузки на основе времени была бы лучшей. Я обычно не помещаю в свои доски Jumpers Boot1/Boot0, они занимают ценное пространство.

michael_l
Пн 24 сентября 2018 г., 10:50 утра
Моя нынешняя проблема, кажется, заключается в том, что Hid-Flasher не «сбрасывает» доску, чтобы она не могла снова повторно вытекать. Если плата «вынуждена» в режиме загрузки Hid Bootloader, загрузка работает нормально.

Rogerclark
Пн 24 сентября 2018 г. 10:52
Я думаю, по крайней мере, для загрузчика DFU aka Maple AKA STM32DUINO Bootloader, включен пульсай.

Однако с некоторыми досками я заметил, что у них есть подтягивание 10K на Boot1, что является проблемой, потому что это намного сильнее, чем внутренний резистор 30K - 50K внутри STM32

Я не проверил загрузчик HID, но было бы легко включить Outldown на Boot1

Стивестронг
Пн 24 сентября 2018 г., 11:18
Хид-флашер может сбросить плату только после того, как USB-сериал включен в код пользователя. В противном случае только кнопка сброса помогает.

Если ваш эскиз Blink (код пользователя) не использует USB -последовательный, нормально, что плата не распознается, поскольку USB сначала установлен в ближайшее время, чтобы скрыть загрузчиком, но затем он заброшен и не перепрограммируется для CDC (последовательно) в Код пользователя, поэтому ОС забивается.

Принуждение режима загрузчика перед загрузкой будет легко программировать на плате Black F4, так как у него есть еще одна кнопка (PA0/WK_UP Ploating, привязана к 3.3V при нажатии) рядом с кнопкой сброса, чтобы одна была одновременно нажать обе кнопки одним пальцем и отпустить сброс, прежде чем выпустить другой.

На мини-плате F4 на Boot1 есть 10K, так что, как предложил Роджер, выпадает на Boot1, так что в целом включение внутреннего выключения на Boot1, или другой выбранная штифт не нанесет вреда.

michael_l
Вторник 25 сентября 2018 г. 6:47 утра
@stevestrong, спасибо за обновления. Загрузка из Arduino больше не падает. Я сделал эскиз с серийным USB, но все же загрузчик с совокупность не может сбросить плату. Интересно, имеет ли BKP правильное значение, обновленное в памяти. Я тестировал с Mini и Black F4. Я не против небольшой задержки в стартапе, пока мне не нужно трогать доску, чтобы загрузить новый эскиз.

Стивестронг
Вторник 25 сентября 2018 г. 7:32 утра
Да, я тем не менее пытался реализовать задержку, но при следующей загрузке она висит после отправки Flash Reset.
Так что есть что -то большее, чтобы улучшить там.

smarq8
Солнце 25 ноября 2018 г. 10:09
Мне нужна помощь, чтобы реализовать это для моего доски с STM32F405. Через много часов я наконец -то успешно загрузил что -то, но мой код Exaple все еще не работает.

Я уже загружаю свой скетах, используя это в maple_upload.летучая мышь: dfu-util-0.9-win64\dfu-util -a 0 -s %5 -D %4

Вассилис
Пн 26 ноября 2018 г. 8:16 утра
Прошивка загрузчика, которую вы сгорели, использует PD15 булавка, чтобы выбрать низкий -> Вынужден запустить Hid Bootloader, High -> Для нормальной работы.
Я думаю, вы используете эту доску: https: // eleccelerator.com/stm32f4stamp-breakout-board/
У STM32F405RGT нет доступного PD15 PIN.
Попробуйте сжечь MCU с bootloader_f4/bootloader_only_binaries/generic_407_pb3.гекс и подключить резистор подтягивания к PB4 Прижмите или включите внутреннее подтягивание на этом выводе и перекомпилируйте исходный код, чтобы создать новый шестнадцатеричный файл.

Когда вы сжигаете первый эскиз в MCU, перезагрузится, и будет доступен новый серийный ком (USB -сериал). Выберите этот серийный COM из вашей Arduino IDE, чтобы автоматически переосмыслить MCU во время программирования.

smarq8
Пн 26 ноября 2018 г., 18:55
Я уже сжигаю generic_407_pb3.HEX, как вы сказали, и резистор 1K5 припалой 1K5 к PB4, но я все еще не понимаю, как он должен быть запрограммирован без компенсации. После "отправки <Перезагрузите MCU> командование...«Я слышу только от Windows».
Я также не понимаю, почему я должен вытащить PB4, в то время как File говорит PB3?

Вот на доске - в настоящее время у меня нет никакой схемы соответствующей схемы :плакать: :
Изображение

Вассилис
Пн 26 ноября 2018 г., 23:02
Я также не понимаю, почему я должен вытащить PB4, в то время как File говорит PB3? Встроенный светодиод подключен к PB3, а переключатель (или перемычка) подключен к PB4, чтобы заставить MCU в режиме программирования.

Когда вы подключаете USB к ПК, MCU остается в режиме программирования ?
Я имею в виду, когда вы запускаете «USB Deview». Вы всегда видите, что устройство прикреплено как «загрузчик STM32» ?

В любом случае, вы пытались сделать новый вариант (F405). Может, вы забыли добавить параметр в доски.TXT -файл для этого варианта.

У меня нет MCU F405, поэтому я не могу проверить, что ваша настройка работает или нет.

smarq8
Вт 27 ноября 2018 г. 9:29
Итак, я перекомпилирую загрузчик, используя это: #define BOOT_1_PIN GPIO_PIN_0 // OUT#1 - temporarily not used #define BOOT_1_PORT GPIOB #define LED_1_PIN GPIO_PIN_5 // BUILDIN_LED #define LED_1_PORT GPIOB

Вассилис
Вт 27 ноября 2018 г., 17:30
[smarq8 - Вт 27 ноября 2018 г. 9:29] - Итак, я перекомпилирую загрузчик, используя это: #define BOOT_1_PIN GPIO_PIN_0 // OUT#1 - temporarily not used #define BOOT_1_PORT GPIOB #define LED_1_PIN GPIO_PIN_5 // BUILDIN_LED #define LED_1_PORT GPIOB

smarq8
Сб 08 декабря 2018 г. 18:13
Можно ли загрузить эскиз Witch, в настоящее время используемый com -порт, например, с помощью платтера без повторного открытия его? Только каждый раз, когда я использую платтер или монитор Arduino, мне нужно повторно открыть его после загрузки из -за ошибки «обработка.приложение.Serialexception ", он всегда появляется до конца загрузки при использовании платтера/монитора.
Szkic używa 26296 bajtów (5%) pamięci programu. Maksimum to 514288 bajtów. Zmienne globalne używają 12272 bajtów (9%) pamięci dynamicznej, pozostawiając 118800 bajtów dla zmiennych lokalnych. Maksimum to 131072 bajtów. +----------------------------------------------------------------------+ | HID-Flash v2.0 - STM32 HID Bootloader Flash Tool | | (c) 04/2018 - Bruno Freitas - http://www.brunofreitas.com/ | | (c) 04/2018 - Vassilis Serasidis - http://www.serasidis.gr/ | | Customized for STM32duino ecosystem - http://www.stm32duino.com/ | +----------------------------------------------------------------------+ > Trying to open the comport... > Toggling DTR... > Searching for 1209:BEBA HID device... ## > 1209:BEBA device is found ! > Sending command... > Flashing firmware... . 1024 Bytes . 2048 Bytes . 3072 Bytes . 4096 Bytes . 5120 Bytes . 6144 Bytes . 7168 Bytes . 8192 Bytes . 9216 Bytes . 10240 Bytes . 11264 Bytes . 12288 Bytes . 13312 Bytes . 14336 Bytes . 15360 Bytes . 16384 Bytes . 17408 Bytes . 18432 Bytes . 19456 Bytes . 20480 Bytes . 21504 Bytes . 22528 Bytes . 23552 Bytes . 24576 Bytes . 25600 Bytes . 26624 Bytes . 27648 Bytes . 28672 Bytes . 29696 Bytes . 30720 Bytes . 31744 Bytes processing.app.SerialException: Błąd otwarcia portu szeregowego 'COM19'. at processing.app.Serial.(Serial.java:147) at processing.app.Serial.(Serial.java:82) at processing.app.SerialMonitor$4.(SerialMonitor.java:101) at processing.app.SerialMonitor.open(SerialMonitor.java:101) at processing.app.AbstractMonitor.resume(AbstractMonitor.java:104) at processing.app.Editor.resumeOrCloseSerialMonitor(Editor.java:2078) at processing.app.Editor.access$1400(Editor.java:114) at processing.app.Editor$DefaultExportHandler.run(Editor.java:2056) at java.lang.Thread.run(Thread.java:748) Caused by: jssc.SerialPortException: Port name - COM19; Method name - openPort(); Exception type - Port not found. at jssc.SerialPort.openPort(SerialPort.java:167) at processing.app.Serial.(Serial.java:136) ... 8 more Błąd otwarcia portu szeregowego 'COM19'. . 32768 Bytes > Done! > Sending command...