Skip to content

Commit df925a7

Browse files
zackeesclaude
andcommitted
Add fbuild board back-fill (8 curated VID:PID rows)
Closes the six ⚠️ PID follow-up rows and three "_not in fbuild boards_" rows in FastLED/fbuild#740's Board-name match table by supplying authoritative runtime USB VID:PID for community boards not covered by the platformio / arduino / vendors upstream layers. New product rows (all sourced from vendor bootloader board.h files, Arduino core boards.txt manifests, CircuitPython mpconfigboard.mk, or vendor product documentation — see the _provenance block): - 239a:80f8 Adafruit QT Py RP2040 - 2e8a:000a Seeed Studio XIAO RP2040 - 2886:0062 Seeed Studio XIAO MG24 - 239a:00b3 nice!nano - 1209:5284 nRFMicro (nRF52840) - 10c4:ea60 CP210x UART Bridge (ESP32-S2-Saola-1 + generic CP2102 boards) - 1366:0101 J-Link (SparkFun Thing Plus Matter onboard debugger) - 1a86:8010 WCH-LinkE (RISC-V mode; CH32V003F4P6-EVT-R0) Ingested via `builders/extract_other.py`'s flat-record path. Records land as product rows in the layer-4 aggregate; the vidpid_board_links polyfill is not needed since these boards' upstream JSONs (once FastLED/fbuild PR #917 merges) will carry hwids that build_sqlite.py's INSERT OR IGNORE junction will use. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 4bcd781 commit df925a7

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

fbuild_board_backfill.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
[
2+
{
3+
"_comment": "Curated USB VID:PID rows for community boards fbuild ships (or wants to identify) that weren't in an upstream layer. Sourced 2026-07-01 during FastLED/fbuild#740 back-fill. Each `_source` field points to authoritative vendor documentation (bootloader `board.h`, Arduino core `boards.txt`, or CircuitPython `mpconfigboard.mk`). Cross-checked against fbuild's `crates/fbuild-config/assets/boards/json/` after PR FastLED/fbuild#917.",
4+
"_provenance": [
5+
"adafruit_qt_py_rp2040 (239a:80f8): adafruit/circuitpython/ports/raspberrypi/boards/adafruit_qtpy_rp2040/mpconfigboard.mk — USB_VID = 0x239A / USB_PID = 0x80F8. BOOTSEL bootloader stays at 2e8a:0003 like every RP2040.",
6+
"seeed_xiao_rp2040 (2e8a:000a): earlephilhower/arduino-pico/tools/json/seeed_xiao_rp2040.json — usb_vid=0x2E8A usb_pid=0x000A hwids [2e8a:00c0, 2e8a:000a]. Seeed did not sub-license a dedicated PID; runtime uses the RP2040 default.",
7+
"seeed_xiao_mg24 (2886:0062): SiliconLabsSoftware/arduino/boards.txt — xiao_mg24.vid.0=0x2886 / xiao_mg24.pid.0=0x0062. Exposed USB device is the onboard SAMD11 running Seeed CMSIS-DAP firmware (EFR32MG24 has no USB).",
8+
"nice_nano (239a:00b3): adafruit/Adafruit_nRF52_Bootloader/src/boards/nice_nano/board.h — USB_DESC_VID 0x239A / USB_DESC_UF2_PID 0x00B3 / USB_DESC_CDC_ONLY_PID 0x00B3. Bootloader and runtime PID intentionally unified.",
9+
"nrfmicro (1209:5284): adafruit/Adafruit_nRF52_Bootloader/src/boards/nrfmicro/board.h — USB_DESC_VID 0x1209 / USB_DESC_UF2_PID 0x5284 / USB_DESC_CDC_ONLY_PID 0x5284. pid.codes openmoko allocation, confirmed at https://pid.codes/1209/5284/.",
10+
"esp32-s2-saola-1 (10c4:ea60): docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s2/esp32-s2-saola-1/user_guide_v1.2.html — 'Single USB-UART bridge chip provides transfer rates up to 3 Mbps.' Chip is a CP2102 with the default Silicon Labs descriptor.",
11+
"sparkfun_thingplusmatter (1366:0101): learn.sparkfun.com/tutorials/sparkfun-thing-plus-matter---mgm240p-hookup-guide/all — 'An EFM32GG12B410F1024GL120-A microcontroller is used as J-Link programmer and debugging IC on the board.' VID 1366 is Segger; 0101 is the standard J-Link PID (uncertain vs 0105 J-Link OB CDC without a physical dump). Silicon Labs Arduino boards.txt omits VID/PID for this board.",
12+
"ch32v003f4p6_evt_r0 (1a86:8010): docs.zephyrproject.org/latest/boards/wch/ch32v003f4p6_dev_board — the EVT board has no onboard USB and is shipped with a WCH-LinkE debugger. RISC-V mode 8010 is required (ARM mode 8012 cannot flash RISC-V chips)."
13+
],
14+
"_skip": "ignored by extract_other.py (only records with vid+pid+vendor/product fields are ingested)"
15+
},
16+
17+
{"vid": "239a", "pid": "80f8", "product": "Adafruit QT Py RP2040",
18+
"_source": "adafruit/circuitpython/ports/raspberrypi/boards/adafruit_qtpy_rp2040/mpconfigboard.mk"},
19+
20+
{"vid": "2e8a", "pid": "000a", "product": "Seeed Studio XIAO RP2040",
21+
"_source": "earlephilhower/arduino-pico/tools/json/seeed_xiao_rp2040.json"},
22+
23+
{"vid": "2886", "pid": "0062", "product": "Seeed Studio XIAO MG24",
24+
"_source": "SiliconLabsSoftware/arduino/boards.txt"},
25+
26+
{"vid": "239a", "pid": "00b3", "product": "nice!nano",
27+
"_source": "adafruit/Adafruit_nRF52_Bootloader/src/boards/nice_nano/board.h"},
28+
29+
{"vid": "1209", "pid": "5284", "product": "nRFMicro (nRF52840)",
30+
"_source": "adafruit/Adafruit_nRF52_Bootloader/src/boards/nrfmicro/board.h; pid.codes/1209/5284"},
31+
32+
{"vid": "10c4", "pid": "ea60", "product": "CP210x UART Bridge (Espressif ESP32-S2-Saola-1 and other CP2102-based boards)",
33+
"_source": "docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s2/esp32-s2-saola-1/user_guide_v1.2.html"},
34+
35+
{"vid": "1366", "pid": "0101", "product": "J-Link (SparkFun Thing Plus Matter onboard debugger)",
36+
"_source": "learn.sparkfun.com/tutorials/sparkfun-thing-plus-matter---mgm240p-hookup-guide/all"},
37+
38+
{"vid": "1a86", "pid": "8010", "product": "WCH-LinkE (RISC-V mode; bundled with CH32V003F4P6-EVT-R0)",
39+
"_source": "docs.zephyrproject.org/latest/boards/wch/ch32v003f4p6_dev_board"}
40+
]

0 commit comments

Comments
 (0)