Проблема
Коли ви намагаєтеся прошити прошивку за допомогою PlatformIO, ви бачите таке повідомлення про помилку:
platformio_libusb_error.txt
Building in release mode
Checking size .pio/build/nucleo_h743zi/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [= ] 7.4% (used 38876 bytes from 524288 bytes)
Flash: [ ] 3.2% (used 67004 bytes from 2097152 bytes)
Configuring upload protocol...
AVAILABLE: blackmagic, cmsis-dap, jlink, mbed, stlink
CURRENT: upload_protocol = stlink
Uploading .pio/build/nucleo_h743zi/firmware.elf
xPack Open On-Chip Debugger 0.12.0-01004-g9ea7f3d64-dirty (2023-01-30-15:03)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
debug_level: 1
srst_only separate srst_nogate srst_open_drain connect_deassert_srst
Error: libusb_open() failed with LIBUSB_ERROR_ACCESS
Error: open failed
in procedure 'program'
** OpenOCD init failed **
shutdown command invoked
*** [upload] Error 1
======================================================================= [FAILED] Took 1.45 seconds =======================================================================Рішення
Ваш поточний системний користувач не має доступу до USB-пристроїв. Щоб це виправити, використовуйте
add_user_to_plugdev.sh
sudo usermod -a -g plugdev $USERЗверніть увагу, що зміна набуде чинності лише після виходу з системи та повторного входу, або після перезавантаження.
Крім того, потрібно встановити поточні правила udev для PlatformIO:
install_platformio_udev_rules.sh
curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/platformio/assets/system/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rulesа потім перезапустіть udev:
restart_udev.sh
sudo systemctl restart udevПісля цього від’єднайте та знову під’єднайте USB-кабель, що веде до мікроконтролера, або перезавантажте систему.
Виконавши все це, ваше завантаження має працювати:
platformio_upload_success.txt
Checking size .pio/build/nucleo_h743zi/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [= ] 7.4% (used 38876 bytes from 524288 bytes)
Flash: [ ] 3.2% (used 67004 bytes from 2097152 bytes)
Configuring upload protocol...
AVAILABLE: blackmagic, cmsis-dap, jlink, mbed, stlink
CURRENT: upload_protocol = stlink
Uploading .pio/build/nucleo_h743zi/firmware.elf
xPack Open On-Chip Debugger 0.12.0-01004-g9ea7f3d64-dirty (2023-01-30-15:03)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
debug_level: 1
srst_only separate srst_nogate srst_open_drain connect_deassert_srst
[stm32h7x.cpu0] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x0800a0d0 msp: 0x24080000
** Programming Started **
Warn : Adding extra erase range, 0x08010880 .. 0x0801ffff
** Programming Finished **
** Verify Started **
** Verified OK **
** Resetting Target **
shutdown command invoked
=========================
Дивіться схожі статті за категоріями:
PlatformIO
Якщо ця стаття допомогла вам, будь ласка, подумайте про те, щоб купити мені каву або зробити пожертву через PayPal на підтримку досліджень та публікації нових статей на TechOverflow