Skip to content

VID/PID Hardware ID simulation

In your Arduino setup, you can easily define which VID, PID, and USB product name you want to simulate. To override these variables without modifying the Arduino core, simply create a boards.local.txt file in your Arduino profile path (e.g. on Linux: ~/.arduino15/packages/arduino/hardware/avr/1.8.7). You can find ideas for USB IDs at http://www.linux-usb.org/usb.ids.

Official USB ID from Arduino

boards.local.txt
leonardo.build.vid=0x2341
leonardo.build.pid=0x8036
leonardo.build.usb_product="Arduino Leonardo"

If you change VID/PID, don’t forget to also adapt the codes in your boards.txt / boards.local.txt, so the Arduino IDE can find the board.

boards.txt
[...]
leonardo.vid.0=0x2341
leonardo.pid.0=0x0036
leonardo.vid.1=0x2341
leonardo.pid.1=0x8036
leonardo.vid.2=0x2A03
leonardo.pid.2=0x0036
leonardo.vid.3=0x2A03
leonardo.pid.3=0x8036
leonardo.upload_port.0.vid=0x2341
leonardo.upload_port.0.pid=0x0036
leonardo.upload_port.1.vid=0x2341
leonardo.upload_port.1.pid=0x8036
leonardo.upload_port.2.vid=0x2A03
leonardo.upload_port.2.pid=0x0036
leonardo.upload_port.3.vid=0x2A03
leonardo.upload_port.3.pid=0x8036
leonardo.upload_port.4.board=leonardo
[...]