component
MCP4331-103E
Public Made by Adomby adom
Microchip Tech Digital Potentiometers, TSSOP-20. Pinout cross-checked by two models against the datasheet, KiCad symbol/footprint/3D.
main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
{
"slug": "mcp4331-103e",
"version": "0.1.0",
"type": "component",
"description": "Microchip Tech Digital Potentiometers, TSSOP-20. Pinout cross-checked by two models against the datasheet, KiCad symbol/footprint/3D.",
"tags": [
"component",
"adc-dac-data conversion",
"mcp4331-103e",
"factory-2.0.0",
"extractor-text"
],
"dependencies": {},
"hero": {
"type": "image",
"path": "docs/hero.png"
},
"files": [
"page.json",
"README.md",
"mcp4331-103e.kicad_sym",
"mcp4331-103e.kicad_mod",
"mcp4331-103e.glb",
"mcp4331-103e.step",
"mcp4331-103e.lbr",
"docs/hero.png",
"docs/mcp4331-103e-datasheet.pdf",
"viewers/symbol.html",
"viewers/footprint.html",
"mcp4331-103e-hero.glb",
"mcp4331-103e-hero.overlay.json",
"mcp4331-103e-etched.glb"
],
"component": {
"mpn": "MCP4331-103E",
"manufacturer": "Microchip Tech",
"package": "TSSOP-20",
"pin_count": 20,
"category": "ADC/DAC/Data Conversion",
"subcategory": "Digital Potentiometers",
"datasheet": "https://datasheet.lcsc.com/datasheet/pdf/95cf5d94dceb1b2a3b0688e3d6471ed2.pdf",
"parts": {
"symbol": "mcp4331-103e.kicad_sym",
"footprint": "mcp4331-103e.kicad_mod",
"model_3d": "mcp4331-103e-hero.glb",
"model_3d_plain": "mcp4331-103e-etched.glb",
"model_3d_step": "mcp4331-103e-etched.step",
"model_3d_step_plain": "mcp4331-103e.step",
"lbr": "mcp4331-103e.lbr"
},
"distributor_links": {
"lcsc": "C638681"
},
"distributor_check": {
"checked_at": "2026-10-30T21:08:04Z",
"source": "Component Ocean /api/assign-pns",
"digikey": {
"pn": null,
"status": "no match"
},
"mouser": {
"pn": null,
"status": "no match"
}
},
"pins": [
{
"number": "1",
"name": "P3A",
"type": "passive",
"description": "Potentiometer 3 Terminal A, the full-scale end of the resistor network, which must be held between VSS and VDD."
},
{
"number": "2",
"name": "P3W",
"type": "passive",
"description": "Potentiometer 3 wiper terminal, the adjustable terminal, which must be held between VSS and VDD."
},
{
"number": "3",
"name": "P3B",
"type": "passive",
"description": "Potentiometer 3 Terminal B, the zero-scale end (wiper value 0x00), which must be held between VSS and VDD."
},
{
"number": "4",
"name": "CS",
"type": "input",
"description": "SPI chip select input (high-voltage tolerant, Schmitt trigger, smart weak pull-up); VIL enables serial commands and VIHH enables high-voltage serial commands."
},
{
"number": "5",
"name": "SCK",
"type": "input",
"description": "SPI serial clock input (high-voltage tolerant, Schmitt trigger); the device is an SPI slave so this pin is input only."
},
{
"number": "6",
"name": "SDI",
"type": "input",
"description": "SPI serial data input (high-voltage tolerant, Schmitt trigger), connected to the host controller's SDO pin."
},
{
"number": "7",
"name": "VSS",
"type": "power_in",
"description": "Device ground reference."
},
{
"number": "8",
"name": "P1B",
"type": "passive",
"description": "Potentiometer 1 Terminal B, the zero-scale end, which must be held between VSS and VDD."
},
{
"number": "9",
"name": "P1W",
"type": "passive",
"description": "Potentiometer 1 wiper terminal, which must be held between VSS and VDD."
},
{
"number": "10",
"name": "P1A",
"type": "passive",
"description": "Potentiometer 1 Terminal A, the full-scale end, which must be held between VSS and VDD."
},
{
"number": "11",
"name": "P0A",
"type": "passive",
"description": "Potentiometer 0 Terminal A, the full-scale end, which must be held between VSS and VDD."
},
{
"number": "12",
"name": "P0W",
"type": "passive",
"description": "Potentiometer 0 wiper terminal, which must be held between VSS and VDD."
},
{
"number": "13",
"name": "P0B",
"type": "passive",
"description": "Potentiometer 0 Terminal B, the zero-scale end, which must be held between VSS and VDD."
},
{
"number": "14",
"name": "NC",
"type": "unconnected",
"description": "No connect; the pin is not used."
},
{
"number": "15",
"name": "RESET",
"type": "input",
"description": "Hardware reset input (high-voltage tolerant, Schmitt trigger, weak pull-up) that forces the device into the POR/BOR state."
},
{
"number": "16",
"name": "SDO",
"type": "output",
"description": "SPI serial data output, connected to the host controller's SDI pin, used to read registers or monitor the command error bit."
},
{
"number": "17",
"name": "VDD",
"type": "power_in",
"description": "Positive power supply input relative to VSS; device operates from 1.8V to 5.5V, with specifications guaranteed from 2.7V to 5.5V."
},
{
"number": "18",
"name": "P2B",
"type": "passive",
"description": "Potentiometer 2 Terminal B, the zero-scale end, which must be held between VSS and VDD."
},
{
"number": "19",
"name": "P2W",
"type": "passive",
"description": "Potentiometer 2 wiper terminal, which must be held between VSS and VDD."
},
{
"number": "20",
"name": "P2A",
"type": "passive",
"description": "Potentiometer 2 Terminal A, the full-scale end, which must be held between VSS and VDD."
}
],
"provenance": {
"extractor": "extract_pins 0.3",
"factory_chain": {
"factory": "2.0.0",
"extractor": "extract_pins 0.3",
"primary_model": "claude-sonnet-5-5",
"primary_mode": "text",
"consensus_model": "claude-sonnet-5-5",
"consensus": "agreed",
"guards": "pin_guards 0.1: passed",
"guard_notes": [
"extractor flagged: Table 3-1 lists three columns (14L TSSOP, 20L TSSOP, 20L QFN) and the extracted text runs the number; Table 3-1 gives NC a digital-input (I) buffer type, but the text says the pin is not used. I typed i; Sold as MCP4331-103E, which is a quad potentiometer with a 10k RAB. The 20-lead TSSOP pinout applies"
],
"pages_sent": 20,
"cost_usd": 0.1418,
"at": "2026-10-30T21:07:56"
},
"datasheet": {
"url": "https://datasheet.lcsc.com/datasheet/pdf/95cf5d94dceb1b2a3b0688e3d6471ed2.pdf",
"pages": 88,
"sha256": "5666a7337dced900",
"source_tier": "mfr"
},
"cad": "KiCad official (CC-BY-SA 4.0)",
"pins": {
"total": 20,
"described": 20,
"cites_pages": true,
"refuses_to_fabricate": true
}
},
"viewers": {
"symbol": "viewers/symbol.html",
"footprint": "viewers/footprint.html"
},
"models_3d": [
{
"file": "mcp4331-103e.step",
"role": "plain",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
6.4,
6.5,
1.2
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "97339947f3a7196470ec2f1d9f9b92bb2fc2ab66ad53be0cf105192585ef3c9a",
"checked": "2026-10-30",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
},
{
"file": "mcp4331-103e-etched.step",
"role": "eda",
"up": "Z",
"units": "mm",
"origin": "footprint origin = pad-pattern centre",
"seat": "z = 0",
"extents_mm": [
6.4,
6.5,
1.2
],
"zmin_mm": -0.0,
"centre_offset_mm": 0.0,
"footprint_binding": "identity",
"sha256": "14e8e91c8d1a1a36fdfa2b42ff6924e95dd1dbbc2fdf4a5706e7787a43747024",
"checked": "2026-10-30",
"checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
}
]
}
}