Lib-electronic-components vialabs

VIA Labs (ViaLabs) MPN encoding patterns, series identification, and handler guidance. Use when working with USB hub/PD controller ICs or ViaLabsHandler.

install
source · Clone the upstream repo
git clone https://github.com/Cantara/lib-electronic-components
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Cantara/lib-electronic-components "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/manufacturers/vialabs" ~/.claude/skills/cantara-lib-electronic-components-vialabs && rm -rf "$T"
manifest: .claude/skills/manufacturers/vialabs/SKILL.md
source content

VIA Labs Manufacturer Skill

MPN Structure

VIA Labs MPNs follow this general structure:

VL[SERIES][VARIANT][PACKAGE][-REEL]
 |   |       |        |       |
 |   |       |        |       └── Optional: REEL, TR, TUBE, TRAY for packaging
 |   |       |        └── Package code (Q, L, B, T, or explicit QFN/LQFP)
 |   |       └── Variant letter (optional)
 |   └── 3-digit series number (7xx, 8xx, 82x, 10x)
 └── VL = VIA Labs prefix

Example Decoding

VL817-Q7
│  │  │
│  │  └── Q7 = QFN package variant
│  └── 817 = USB 3.0 hub controller
└── VL = VIA Labs prefix

VL822
│  │
│  └── 822 = USB 3.2 hub controller
└── VL = VIA Labs prefix

Product Series

VL7xx Series - USB 2.0 Hub Controllers

SeriesPortsDescription
VL7504USB 2.0 4-port hub
VL7514USB 2.0 4-port hub (variant)
VL7527USB 2.0 7-port hub

VL8xx Series - USB 3.0 Hub Controllers

SeriesPortsDescription
VL8124USB 3.0 4-port hub (1st gen)
VL8134USB 3.0 4-port hub (2nd gen)
VL8154USB 3.0 4-port hub (3rd gen)
VL8174USB 3.0 4-port hub (latest)

VL82x Series - USB 3.2 Hub Controllers

SeriesPortsDescription
VL8204USB 3.2 4-port hub
VL8224USB 3.2 4-port hub (2nd gen)
VL8234USB 3.2 4-port hub (latest)

VL10x Series - USB Power Delivery Controllers

SeriesTypeDescription
VL100PDUSB Power Delivery controller
VL102PDUSB PD controller (variant)
VL103PDUSB PD controller (latest)

Package Codes

CodePackageNotes
QQFNQuad Flat No-Lead
QFNQFNExplicit form
LLQFPLow-profile Quad Flat Package
LQFPLQFPExplicit form
BBGABall Grid Array
TTQFPThin Quad Flat Package

USB Version by Series

SeriesUSB Version
VL750USB 2.0
VL751USB 2.0
VL752USB 2.0
VL812USB 3.0
VL813USB 3.0
VL815USB 3.0
VL817USB 3.0
VL820USB 3.2
VL822USB 3.2
VL823USB 3.2
VL10xUSB PD

Generation/Evolution

USB 3.0 Hub Evolution

VL812 (Gen 1) -> VL813 (Gen 2) -> VL815 (Gen 3) -> VL817 (Gen 4 - Latest)

USB 3.2 Hub Evolution

VL820 (Gen 1) -> VL822 (Gen 2) -> VL823 (Gen 3 - Latest)

Handler Implementation Notes

Pattern Matching

// VL7xx series - USB 2.0 hub controllers
"^VL7[0-9]{2}[A-Z]*.*"

// VL8xx series - USB 3.0 hub controllers
"^VL8[0-9]{2}[A-Z]*.*"

// VL82x series - USB 3.2 hub controllers (more specific)
"^VL82[0-9][A-Z]*.*"

// VL10x series - USB Power Delivery controllers
"^VL10[0-9][A-Z]*.*"

Series Extraction

// Series is always "VL" + 3 digits = 5 characters
// VL817-Q7 -> VL817
// VL822 -> VL822

if (upperMpn.matches("^VL8[0-9]{2}.*")) {
    return upperMpn.substring(0, 5);
}

Package Code Extraction

// Handle suffix after hyphen
// VL817-Q7 -> Q -> QFN

// Handle trailing suffix without hyphen
// VL817Q -> Q -> QFN

Replacement Compatibility

USB 2.0 Hub Family

All VL7xx series are generally interchangeable:

  • VL750, VL751 (4-port)
  • VL752 is NOT interchangeable (7-port)

USB 3.0 Hub Upgrade Path

Newer generations can replace older:

  • VL817 can replace VL815, VL813, VL812
  • VL815 can replace VL813, VL812
  • VL813 can replace VL812

USB 3.2 Hub Upgrade Path

Newer generations can replace older:

  • VL823 can replace VL822, VL820
  • VL822 can replace VL820

Cross-Version Compatibility

NOT compatible across USB versions:

  • VL7xx (USB 2.0) NOT compatible with VL8xx (USB 3.0)
  • VL8xx (USB 3.0) NOT compatible with VL82x (USB 3.2)
  • Different USB versions have different electrical requirements

Port Count Reference

SeriesDownstream Ports
VL7504
VL7514
VL7527
VL812-VL8174
VL820-VL8234

Common Applications

Product TypeTypical Series
Basic USB 2.0 hubVL750, VL751
7-port USB 2.0 hubVL752
USB 3.0 hubVL817 (current), VL815
USB 3.2 hubVL823 (current), VL822
USB-C PD controllerVL100, VL102, VL103

Related Files

  • Handler:
    manufacturers/ViaLabsHandler.java
  • Component types:
    ComponentType.IC

Learnings & Edge Cases

  • VL prefix for all parts: Unlike VIA Technologies (VT prefix), VIA Labs uses VL prefix
  • 3-digit numbering scheme: 7xx = USB 2.0, 8xx = USB 3.0, 82x = USB 3.2, 10x = PD
  • Generation within series: Higher second digit = newer generation (812 < 813 < 815 < 817)
  • USB 3.2 overlaps with 8xx: VL82x is technically VL8xx but specifically USB 3.2
  • 4-port is standard: Most VIA Labs hubs are 4-port; VL752 is exception with 7 ports
  • Package suffix format varies: Can be hyphenated (VL817-Q7) or appended (VL817Q)
<!-- Add new learnings above this line -->