无法通过platformio.ini覆盖board_vendor(USB制造商)

问题描述 投票:1回答:1

我想在我的Sparkfun Pro Micro上覆盖USB_PRODUCTUSB_MANUFACTURER字符串。

根据文档(http://docs.platformio.org/en/latest/boards/atmelavr/sparkfun_promicro16.html#configuration),我可以

使用board_***选项覆盖每个构建环境的默认SparkFun Pro Micro 5V / 16MHz设置

Pro Micro的board settings json具有build.usb_productvendor字段(默认值为SparkFun Pro MicroSparkFun)。

我可以用此USB_PRODUCT覆盖platformio.ini

[env:sparkfun_promicro16]
platform = atmelavr
board = sparkfun_promicro16
framework = arduino
board_build.usb_product = "MyProduct"
board_vendor = "MyCompany"

正确的定义将显示在.vscode/c_cpp_properties.json中:

...
        "defines": [
            "PLATFORMIO=30602",
            "ARDUINO_AVR_PROMICRO16",
            "F_CPU=16000000L",
            "ARDUINO_ARCH_AVR",
            "ARDUINO=10805",
            "USB_VID=0x1B4F",
            "USB_PID=0x9203",
            "USB_PRODUCT=\"MyProduct\"",
            "USB_MANUFACTURER=\"MyCompany\"",
            "__AVR_ATmega32U4__",
            ""
        ],
...

但是如dmesg所示,仅应用USB_PRODUCT,而不应用USB_MANUFACTURER

[119019.190230] usb 1-1: new full-speed USB device number 115 using xhci_hcd
[119019.344882] usb 1-1: New USB device found, idVendor=1b4f, idProduct=9203, bcdDevice= 1.00
[119019.344888] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[119019.344892] usb 1-1: Product: MyProduct
[119019.344896] usb 1-1: Manufacturer: SparkFun
[119019.346978] cdc_acm 1-1:1.0: ttyACM0: USB ACM device

相关代码在https://github.com/platformio/platform-atmelavr/blob/master/builder/frameworks/arduino.py#L40。看起来build_vendor设置应该起作用?

我想念什么?

arduino visual-studio-code usb avr platformio
1个回答
0
投票

我目前遇到同一问题;您最终找到了解决方案吗?

© www.soinside.com 2019 - 2024. All rights reserved.