Properly Rename XIAO SAMD21 USB Device

Hi, been scratching my head over this since trying to make my first USB device using a XIAO SAMD21. I’m trying to create a USB emulator/adapter for a pair of otherwise broken Thrustmaster racing pedals, but so far, I’ve kept running into this issue:


In the “Game Controllers” control panel (also known as joy.cpl), the device name does not seem to exceed more than 4 characters. This also happened prior to renaming of the device (It would show as “Seee”).

I’m using PlatformIO/VSCode to develop, and have already tried setting the usb_product string, which names it correctly in other places (see the other windows in the screenshot), but so far for this particular window I’ve only managed to rename it via changing the device VID/PID through a python pre-build script. Even then, it still refuses to show the full name of the manufacturer, let alone the full product name.

I’ve also tried clearing the device OEMName entry in the registry editor and re-plugging it in to avoid any “cache” issues but to no avail.

Anyone knows how I can get this to work? Not sure if I’m not sending a proper descriptor or something, everything else works except the name.

1 Like

this is a good question… i do not have the answer… but even in arduino IDE it will name the device some unit that i never had in my life… What Da?

1 Like

Hi there,

AFAIK, there IS NOT a Seeed registered VID or PID So sorry , registry hack is the only other way :crossed_fingers: YMMV

HTH
GL :slight_smile: PJ :v:

That’s the thing, I’m not sure where the device supplies information for Windows to populate the registry entry in the first place.

But I do know Seeed has a VID, I saw it while searching up a VID database (2886). Changing the VID does change the first 4 characters displayed, but the bigger issue is that it’s not even showing the full name (“Seee” instead of “Seeed”).

USB descriptor dumping tools seem to have no problem with this, it’s just the name in the “Game Controllers” window.

Even the Pro Micro I previously used shows up as “Pro Micro”, which is longer than 4 characters.

are you using windows? if so maybe in device com port