by adom
2020 Addressable RGB LED · 800 Kbps single-line cascade · 16 mA per channel (V1.0 sheet), 12 mA from V1.2
master
John Lauer
Laser mark by the planner (adom-aiflow 0.1.49): re-etched, outlines regenerated, GLB / hero / outline symbol rebuilt; l…
3e191fb
16d ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
{
"tool": "build_ws2812b_2020_v2.py",
"name": "WS2812B-2020",
"plain": true,
"doc": "WS2812B-2020 (Worldsemi) 3D model, rebuilt from the datasheet drawings (AI-generated, 2026-10-03, v2).\n\nWorldsemi publishes no 3D model and KiCad's library has none for this package, so every feature here is\ntaken from the Worldsemi WS2812B-2020 datasheet (V1.0 release; rev. V1.3 PDF), p.1-2 \"Mechanical\nDimensions\". Dimensioned values are used as printed; undimensioned ones were measured off the drawings at\n600 dpi, with the printed 2.20 and 2.00 mm edges as the scale (350 px/mm on both axes):\n\n printed: package 2.20 (X) x 2.00 (Y); total height 0.84; substrate 0.28; clear moulding 1.45 (X), full\n 2.00 (Y), centred, straight sides; terminal pitch 1.00 (Y); gap between bottom pads 1.13.\n measured: bottom pads 0.535 (from the 1.13 gap) x 0.78, centred on the 1.00 pitch (y 0.11..0.89 from\n centre); castellation radius 0.20 at each terminal centre, on the package edge; top-side terminal\n metal fills the 0.375 strip outside the moulding over y 0.18..0.88 with rounded inner corners;\n polarity stripe on the underside 0.525 wide, 0.05 from the pin 1/2 pads, full length;\n IC outline 0.67 x 0.52 and R/G/B dies 0.19 x 0.21 from the top-view sketch (positions illustrative).\n photos: features the drawings leave out, taken from product photos (v3, 2026-10-04):\n - lead-frame stubs: Worldsemi's WS2812B family photo (world-semi.com) shows four metal stubs with\n rounded ends on the long (2.20) faces, one near each end. Measured with the 2.20 edge as scale\n (72 px/mm): 0.41 long, 0.11..0.52 in from each end, standing 0.06 proud of the face. A top-view\n photo cannot show their height; they are placed at the top of the 0.28 base, 0.10 thick, beside\n the top-side terminal metal (estimated).\n - polarity stripe colour: LCSC's underside photo of WS2812B-2020 (C965555, 2025-08-12) shows the\n stripe mint green, sRGB (123, 242, 203), carrying a Worldsemi logo (not modelled), not dark.\n - top surface: both photos show the base white outside the 1.45 moulding; the top-side terminal metal\n the Top View draws is not visible, so a white mask covers it (the metal stays modelled beneath).\n - IC die: 0.53 x 0.29, centred (0.11, -0.25) in the model frame, from Worldsemi's photo at 144.5 px/mm.\n - LED dies, located by their bond wires in Worldsemi's photo (the photo is in the datasheet Top View's\n orientation: IC above, dies below; the model turns it 180 deg): three emitters in a row about 0.37\n below the IC. The centre one is round with a single wire (a vertical die): red. The two beside it are\n rectangular with two wires each; the V6 Top View orders the dies G R B, so green and blue sit either\n side. Model frame: G 0.09 x 0.13 at (0.27, 0.37), R 0.12 round at (-0.03, 0.38), B 0.09 x 0.15 at\n (-0.38, 0.36).\n - Worldsemi logo on the stripe (LCSC underside photo, perspective-corrected to 400 px/mm): the ring-and-WS\n mark, 0.875 across, centred (0.04, 0.09), on a white disc knocked out of the green stripe, reading\n upright with its top toward -Y. Its outline is traced from Worldsemi's own logo file\n (worldsemi_logo.json, trace_logo.py). The photo shows no pin cue besides the stripe, so which end of\n the stripe the logo favours (0.09 off centre) and which way up it reads are from the photo's framing,\n not tied to a pin; the stripe itself is the polarity mark and sits beside pins 1/2 as every drawing shows.\n\nFrame: mm, Z up, seated on z = 0, origin at the package centre, oriented for the page footprint (pad 1 at\n(-X,+Y) in 3D = the datasheet top view turned 180 deg): pin 1 DO (-X,+Y), 2 GND (-X,-Y), 3 DI (+X,-Y),\n4 VDD (+X,+Y). Usage: build_ws2812b_2020_v2.py OUT.step REPORT.json [--name MPN] [--plain]\n --plain: the uncoloured model: same package, terminals, window and polarity mark, no IC or die patches.",
"source": {
"doc": "Worldsemi WS2812B-2020 datasheet (V1.0 release, rev. V1.3 PDF)",
"url": "https://cdn-shop.adafruit.com/product-files/4684/4684_WS2812B-2020_V1.3_EN.pdf",
"pages": "1-2 Mechanical Dimensions: Back View, Top View, Side View, PCB Solder Pad"
},
"dims_mm": {
"package": [
2.2,
2.0
],
"height": 0.84,
"substrate": 0.28,
"window_x": 1.45,
"pitch": 1.0,
"bottom_pad": [
0.5350000000000001,
0.78
],
"bottom_pad_y": [
0.11,
0.89
],
"castellation_r": 0.2,
"top_terminal_y": [
0.18,
0.88
],
"top_terminal_corner_r": 0.15,
"plating": 0.02,
"stripe": [
0.525,
0.05
],
"lead_frame_stub": {
"in_from_end": [
0.11,
0.52
],
"proud": 0.06,
"thick": 0.1
}
},
"photos": {
"stubs": "https://www.world-semi.com/assets/products/ws2812b-family/ws2812b-v6-v7-package-family.webp",
"underside": "https://www.lcsc.com/product-detail/C965555.html"
},
"parts": [
{
"name": "body",
"srgb": [
0.95,
0.95,
0.93
],
"alpha": null
},
{
"name": "pin1_DO",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "pin2_GND",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "pin3_DI",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "pin4_VDD",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "polarity_mark",
"srgb": [
0.4823529411764706,
0.9490196078431372,
0.796078431372549
],
"alpha": null
},
{
"name": "worldsemi_logo",
"srgb": [
0.4823529411764706,
0.9490196078431372,
0.796078431372549
],
"alpha": null
},
{
"name": "lead_frame_stub_--",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "lead_frame_stub_-+",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "lead_frame_stub_+-",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "lead_frame_stub_++",
"srgb": [
0.8,
0.81,
0.83
],
"alpha": null
},
{
"name": "window",
"srgb": [
0.9,
0.92,
0.94
],
"alpha": 0.45
},
{
"name": "top_mask",
"srgb": [
0.95,
0.95,
0.93
],
"alpha": null
}
]
}