# adom-ds2sf

**Datasheet â symbol + footprint + provenance. Read a chip's PDF, extract its pins and pads, and emit structured JSON the rest of the Adom EDA tools build on.**

adom-ds2sf ("datasheet to symbol & footprint") reads a manufacturer datasheet PDF and extracts the part's electrical interface â pin names, numbers, types, and logical groups (POWER, GROUND, GPIO split by port, DEBUGâ¦) â plus the land pattern when the datasheet provides one, into `<MPN>-symbol.extracted.json` and `<MPN>-footprint.extracted.json` with **per-field provenance**: every pin and every dimension records the datasheet page it came from. It's the source that lets **adom-symbol** auto-generate a clean, balanced, grouped symbol straight from the datasheet â independent of any vendor's CAD draw.

## What it does

- **`extract`** â datasheet PDF â symbol + footprint + provenance JSON.
- **`inspect`** â summarize an existing extraction in a chip directory.
- **`svg`** â regenerate the authoritative footprint SVG from cached JSON (no re-extraction).

Note: a datasheet without a land-pattern table yields a symbol but no footprint pads â adom-ds2sf reports exactly what it could and couldn't extract, with provenance on every datapoint.

# Seven worked examples

Each example below was produced by `adom-ds2sf extract` on the manufacturer's own datasheet. For every part you can see the **generated symbol + footprint**, the **full extracted pin list**, the **provenance JSON** (with the datasheet page each datapoint came from), and **the actual datasheet pages** adom-ds2sf read â plus a link to the original PDF. Seven different part types, seven different packages.

## 1. DMG2305UX-7 â P-channel MOSFET

*Diodes Incorporated Â· SOT-23 Â· [original datasheet PDF](https://www.diodes.com/assets/Datasheets/DMG2305UX.pdf)*

P-channel enhancement-mode MOSFET in SOT-23. -20V Vds, -4.2A continuous Id at Ta=25Â°C (Vgs=-4.5V), Rds(on) typ 40 mÎ© at Vgs=-4.5V / 52 mÎ© at Vgs=-2.5V. Low-Vgs(th) load-switch / power-management device.

**Symbol + footprint, generated by adom-ds2sf:**

![DMG2305UX-7 symbol and footprint generated by adom-ds2sf](docs/ex-DMG2305UX-7-symfp.png)

**Extracted pin list (3 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | G | `input` | CONTROL |
| 2 | S | `passive` | POWER |
| 3 | D | `passive` | POWER |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "DMG2305UX-7",
  "datasheet": {
    "url": "https://www.diodes.com/assets/Datasheets/DMG2305UX.pdf",
    "page_count": 6,
    "sha256": "7421a75157a2e700â¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 1,
      "pin_name": "G",
      "pin_number": "1",
      "table_caption": "Top View / Internal Schematic (page 1)"
    },
    {
      "confidence": "high",
      "page": 1,
      "pin_name": "S",
      "pin_number": "2",
      "table_caption": "Top View / Internal Schematic (page 1)"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "Package Outline Dimensions â SOT23 (Standard)",
      "page": 5,
      "value": 2.9
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "Package Outline Dimensions â SOT23 (Standard)",
      "page": 5,
      "value": 1.3
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.1) and the package drawing (p.5):

![DMG2305UX-7 datasheet pin-configuration page](docs/ex-DMG2305UX-7-dspin.png)

![DMG2305UX-7 datasheet package-dimensions page](docs/ex-DMG2305UX-7-dspkg.png)

[â Open the original DMG2305UX-7 datasheet](https://www.diodes.com/assets/Datasheets/DMG2305UX.pdf)

## 2. LM358D â Dual op-amp

*Texas Instruments Â· SOIC-8 Â· [original datasheet PDF](https://www.ti.com/lit/ds/symlink/lm358.pdf)*

Industry-standard dual general-purpose operational amplifier. Operates from a single 3V to 32V supply (or split Â±1.5V to Â±16V), with an input common-mode range that includes ground and a typical 1.2 MHz gain-bandwidth product. SOIC-8 (D)â¦

**Symbol + footprint, generated by adom-ds2sf:**

![LM358D symbol and footprint generated by adom-ds2sf](docs/ex-LM358D-symfp.png)

**Extracted pin list (8 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | OUT1 | `output` | OTHER |
| 2 | IN1- | `input` | OTHER |
| 3 | IN1+ | `input` | OTHER |
| 4 | V- | `power_in` | POWER |
| 5 | IN2+ | `input` | OTHER |
| 6 | IN2- | `input` | OTHER |
| 7 | OUT2 | `output` | OTHER |
| 8 | V+ | `power_in` | POWER |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "LM358D",
  "datasheet": {
    "url": "https://www.ti.com/lit/ds/symlink/lm358.pdf",
    "page_count": 68,
    "sha256": "9c879c3a3e9291c5â¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 3,
      "pin_name": "OUT1",
      "pin_number": "1",
      "table_caption": "Table 4-1. Pin Functions"
    },
    {
      "confidence": "high",
      "page": 3,
      "pin_name": "IN1-",
      "pin_number": "2",
      "table_caption": "Table 4-1. Pin Functions"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "D0008A Package Outline â SOIC - 1.75 mm max height",
      "page": 59,
      "value": 4.91
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "D0008A Package Outline â SOIC - 1.75 mm max height",
      "page": 59,
      "value": 3.9
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.3) and the package drawing (p.60):

![LM358D datasheet pin-configuration page](docs/ex-LM358D-dspin.png)

![LM358D datasheet package-dimensions page](docs/ex-LM358D-dspkg.png)

[â Open the original LM358D datasheet](https://www.ti.com/lit/ds/symlink/lm358.pdf)

## 3. TPS62840YBGR â Buck converter

*Texas Instruments Â· WCSP-6 (YBG, DSBGA) Â· [original datasheet PDF](https://www.ti.com/lit/ds/symlink/tps62840.pdf)*

1.8-V to 6.5-V input, 750-mA step-down (buck) converter with ultra-low 60-nA operating quiescent current and 100% duty-cycle mode (120-nA Iq). DCS-Control architecture with 1.8-MHz nominal switching, 16 selectable output voltages via VSETâ¦

**Symbol + footprint, generated by adom-ds2sf:**

![TPS62840YBGR symbol and footprint generated by adom-ds2sf](docs/ex-TPS62840YBGR-symfp.png)

**Extracted pin list (6 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| A1 | GND | `power_in` | GROUND |
| A2 | VOS | `input` | POWER |
| B1 | VIN | `power_in` | POWER |
| B2 | SW | `power_out` | POWER |
| C1 | EN | `input` | CONTROL |
| C2 | VSET | `input` | CONTROL |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "TPS62840YBGR",
  "datasheet": {
    "url": "https://www.ti.com/lit/ds/symlink/tps62840.pdf",
    "page_count": 45,
    "sha256": "b715ae80beb8f08bâ¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 5,
      "pin_name": "GND",
      "pin_number": "A1",
      "table_caption": "Pin Functions"
    },
    {
      "confidence": "high",
      "page": 5,
      "pin_name": "VOS",
      "pin_number": "A2",
      "table_caption": "Pin Functions"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "YBG0006 Package Outline â DSBGA - 0.5 mm max height (D: 1.498/1.438 mm, E: 0.998/0.938 mm)",
      "page": 39,
      "value": 0.968
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "YBG0006 Package Outline â DSBGA - 0.5 mm max height (D: 1.498/1.438 mm, E: 0.998/0.938 mm)",
      "page": 39,
      "value": 1.468
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.5) and the package drawing (p.40):

![TPS62840YBGR datasheet pin-configuration page](docs/ex-TPS62840YBGR-dspin.png)

![TPS62840YBGR datasheet package-dimensions page](docs/ex-TPS62840YBGR-dspkg.png)

[â Open the original TPS62840YBGR datasheet](https://www.ti.com/lit/ds/symlink/tps62840.pdf)

## 4. INA226AIDGSR â Current / power monitor

*Texas Instruments Â· VSSOP-10 Â· [original datasheet PDF](https://www.ti.com/lit/ds/symlink/ina226.pdf)*

36V, 16-bit ultra-precise IÂ²C/SMBus current, voltage, and power monitor with alert. Senses bus voltages from 0V to 36V (high- or low-side), with Â±81.92 mV shunt range, 0.1% gain error, 10 ÂµV offset, and configurable averaging. Operatesâ¦

**Symbol + footprint, generated by adom-ds2sf:**

![INA226AIDGSR symbol and footprint generated by adom-ds2sf](docs/ex-INA226AIDGSR-symfp.png)

**Extracted pin list (10 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | A1 | `input` | CONTROL |
| 2 | A0 | `input` | CONTROL |
| 3 | Alert | `output` | ALERT |
| 4 | SDA | `bidirectional` | I2C |
| 5 | SCL | `input` | I2C |
| 6 | VS | `power_in` | POWER |
| 7 | GND | `power_in` | GROUND |
| 8 | VBUS | `input` | ADC |
| 9 | IN- | `input` | ADC |
| 10 | IN+ | `input` | ADC |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "INA226AIDGSR",
  "datasheet": {
    "url": "https://www.ti.com/lit/ds/symlink/ina226.pdf",
    "page_count": 40,
    "sha256": "8652754621863692â¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 3,
      "pin_name": "A1",
      "pin_number": "1",
      "table_caption": "Table 4-1. Pin Functions"
    },
    {
      "confidence": "high",
      "page": 3,
      "pin_name": "A0",
      "pin_number": "2",
      "table_caption": "Table 4-1. Pin Functions"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "DGS0010A Package Outline â VSSOP - 1.1 mm max height (JEDEC MO-187 BA)",
      "page": 37,
      "value": 3.0
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "DGS0010A Package Outline â VSSOP - 1.1 mm max height (JEDEC MO-187 BA)",
      "page": 37,
      "value": 3.0
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.3) and the package drawing (p.38):

![INA226AIDGSR datasheet pin-configuration page](docs/ex-INA226AIDGSR-dspin.png)

![INA226AIDGSR datasheet package-dimensions page](docs/ex-INA226AIDGSR-dspkg.png)

[â Open the original INA226AIDGSR datasheet](https://www.ti.com/lit/ds/symlink/ina226.pdf)

## 5. MSP430G2553IPW20 â 16-bit MCU

*Texas Instruments Â· TSSOP-20 Â· [original datasheet PDF](https://www.ti.com/lit/ds/symlink/msp430g2553.pdf)*

Ultra-low-power 16-bit RISC microcontroller with 16 KB flash, 512 B SRAM, 10-bit ADC, and integrated UART/SPI/IÂ²C interfaces. Operates at 1.8â3.6 V with active mode consumption of 230 ÂµA/MHz and RTC mode of 0.1 ÂµA.

**Symbol + footprint, generated by adom-ds2sf:**

![MSP430G2553IPW20 symbol and footprint generated by adom-ds2sf](docs/ex-MSP430G2553IPW20-symfp.png)

**Extracted pin list (20 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | DVCC | `power_in` | POWER |
| 2 | P1.0/TA0CLK/ACLK/A0/CA0 | `bidirectional` | GPIO |
| 3 | P1.1/TA0.0/UCA0RXD/UCA0SOMI/A1/CA1 | `bidirectional` | GPIO |
| 4 | P1.2/TA0.1/UCA0TXD/UCA0SIMO/A2/CA2 | `bidirectional` | GPIO |
| 5 | P1.3/ADC10CLK/A3/VREF-/VREF+/CA3/CAOUT | `bidirectional` | GPIO |
| 6 | P1.4/SMCLK/UCB0STE/UCA0CLK/A4/VREF+/CA4/TCK | `bidirectional` | GPIO |
| 7 | P1.5/TA0.0/UCB0CLK/UCAOSSTE/A5/CA5/TMS | `bidirectional` | GPIO |
| 8 | P2.0/TA1.0 | `bidirectional` | GPIO |
| 9 | P2.1/TA1.1 | `bidirectional` | GPIO |
| 10 | P2.2/TA1.1 | `bidirectional` | GPIO |
| 11 | P2.3/TA1.0 | `bidirectional` | GPIO |
| 12 | P2.4/TA1.2 | `bidirectional` | GPIO |
| 13 | P2.5/TA1.2 | `bidirectional` | GPIO |
| 14 | NC | `unconnected` | NC |
| 15 | P1.6/TA0.1/A6/CA6/UCB0SOMI/UCB0SCL/TDI/TCLK | `bidirectional` | GPIO |
| 16 | P1.7/A7/CA7/CAOUT/UCB0SIMO/UCB0SDA/TDO/TDI | `bidirectional` | GPIO |
| 17 | TEST/SBWTCK | `input` | DEBUG |
| 18 | XOUT/P2.7 | `bidirectional` | TIMING |
| 19 | XIN/P2.6/TA0.1 | `bidirectional` | TIMING |
| 20 | DVSS | `power_in` | GROUND |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "MSP430G2553IPW20",
  "datasheet": {
    "url": "https://www.ti.com/lit/ds/symlink/msp430g2553.pdf",
    "page_count": 85,
    "sha256": "c94b53fef9ba6065â¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 3,
      "pin_name": "DVCC",
      "pin_number": "1",
      "table_caption": "Device Pinout, MSP430G2x13 and MSP430G2x53, 20-Pin Devices, TSSOP and PDIP"
    },
    {
      "confidence": "high",
      "notes": "Muxed pin with multiple peripheral functions; configure via software.",
      "page": 6,
      "pin_name": "P1.0/TA0CLK/ACLK/A0/CA0",
      "pin_number": "2",
      "table_caption": "Table 2. Terminal Functions"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "PW0020A Package Outline",
      "page": 76,
      "value": 6.6
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "PW0020A Package Outline",
      "page": 76,
      "value": 4.5
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.6) and the package drawing (p.77):

![MSP430G2553IPW20 datasheet pin-configuration page](docs/ex-MSP430G2553IPW20-dspin.png)

![MSP430G2553IPW20 datasheet package-dimensions page](docs/ex-MSP430G2553IPW20-dspkg.png)

[â Open the original MSP430G2553IPW20 datasheet](https://www.ti.com/lit/ds/symlink/msp430g2553.pdf)

## 6. BMI270 â 6-axis IMU

*Bosch Â· LGA-14 Â· [original datasheet PDF](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmi270-ds000.pdf)*

Ultra-low-power 16-bit 6-axis IMU (accelerometer + gyroscope) with integrated motion-triggered interrupts, gesture recognition, and advanced power management. Dual-protocol interface supporting IÂ²C and SPI with optional auxiliary sensorâ¦

**Symbol + footprint, generated by adom-ds2sf:**

![BMI270 symbol and footprint generated by adom-ds2sf](docs/ex-BMI270-symfp.png)

**Extracted pin list (14 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | SDO | `output` | I2C |
| 2 | ASDx | `bidirectional` | OTHER |
| 3 | ASCx | `input` | OTHER |
| 4 | INT1 | `output` | ALERT |
| 5 | VDDIO | `power_in` | POWER |
| 6 | GNDIO | `passive` | GROUND |
| 7 | GND | `passive` | GROUND |
| 8 | VDD | `power_in` | POWER |
| 9 | INT2 | `output` | ALERT |
| 10 | OCSB | `input` | OTHER |
| 11 | OSDO | `output` | OTHER |
| 12 | CSB | `input` | SPI |
| 13 | SCx | `input` | I2C |
| 14 | SDx | `bidirectional` | I2C |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "BMI270",
  "datasheet": {
    "url": "https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmi270-ds000.pdf",
    "page_count": 150,
    "sha256": "51818aed4619bcccâ¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "notes": "SPI MISO (4-wire), I2C address bit-0 select; open-drain output",
      "page": 135,
      "pin_name": "SDO",
      "pin_number": "1",
      "table_caption": "Table 22: Pin-out and pin connections"
    },
    {
      "confidence": "high",
      "notes": "Secondary interface; muxed for Aux I2C SDA, OIS SDI, or DNC",
      "page": 135,
      "pin_name": "ASDx",
      "pin_number": "2",
      "table_caption": "Table 22: Pin-out and pin connections"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "Section 8.1, Package outline dimensions",
      "page": 143,
      "value": 3.0
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "Section 8.1, Package outline dimensions",
      "page": 143,
      "value": 2.5
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.135) and the package drawing (p.145):

![BMI270 datasheet pin-configuration page](docs/ex-BMI270-dspin.png)

![BMI270 datasheet package-dimensions page](docs/ex-BMI270-dspkg.png)

[â Open the original BMI270 datasheet](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmi270-ds000.pdf)

## 7. ESP32-S3-WROOM-1-N4 â Wi-Fi + BLE module

*Espressif Systems Â· SMD-41 (18 x 25.5 x 3.1 mm castellated module, PCB antenna) Â· [original datasheet PDF](https://www.espressif.com/sites/default/files/documentation/esp32-s3-wroom-1_wroom-1u_datasheet_en.pdf)*

ESP32-S3-WROOM-1-N4 is a Wi-Fi (802.11 b/g/n) and Bluetooth LE 5 module built around the ESP32-S3 SoC (dual-core Xtensa LX7 @ 240 MHz, vector instructions for ML). The -N4 variant integrates 4 MB SPI flash and no PSRAM. Module exposes upâ¦

**Symbol + footprint, generated by adom-ds2sf:**

![ESP32-S3-WROOM-1-N4 symbol and footprint generated by adom-ds2sf](docs/ex-ESP32-S3-WROOM-1-N4-symfp.png)

**Extracted pin list (41 pins):**

| # | Name | Type | Group |
|---|------|------|-------|
| 1 | GND | `power_in` | GROUND |
| 2 | 3V3 | `power_in` | POWER |
| 3 | EN | `input` | CONTROL |
| 4 | IO4 | `bidirectional` | GPIO |
| 5 | IO5 | `bidirectional` | GPIO |
| 6 | IO6 | `bidirectional` | GPIO |
| 7 | IO7 | `bidirectional` | GPIO |
| 8 | IO15 | `bidirectional` | GPIO |
| 9 | IO16 | `bidirectional` | GPIO |
| 10 | IO17 | `bidirectional` | GPIO |
| 11 | IO18 | `bidirectional` | GPIO |
| 12 | IO8 | `bidirectional` | GPIO |
| 13 | IO19 | `bidirectional` | USB |
| 14 | IO20 | `bidirectional` | USB |
| 15 | IO3 | `bidirectional` | GPIO |
| 16 | IO46 | `bidirectional` | GPIO |
| 17 | IO9 | `bidirectional` | GPIO |
| 18 | IO10 | `bidirectional` | GPIO |
| 19 | IO11 | `bidirectional` | GPIO |
| 20 | IO12 | `bidirectional` | GPIO |
| 21 | IO13 | `bidirectional` | GPIO |
| 22 | IO14 | `bidirectional` | GPIO |
| 23 | IO21 | `bidirectional` | GPIO |
| 24 | IO47 | `bidirectional` | GPIO |
| 25 | IO48 | `bidirectional` | GPIO |
| 26 | IO45 | `bidirectional` | GPIO |
| 27 | IO0 | `bidirectional` | GPIO |
| 28 | IO35 | `bidirectional` | GPIO |
| 29 | IO36 | `bidirectional` | GPIO |
| 30 | IO37 | `bidirectional` | GPIO |
| 31 | IO38 | `bidirectional` | GPIO |
| 32 | IO39 | `bidirectional` | DEBUG |
| 33 | IO40 | `bidirectional` | DEBUG |
| 34 | IO41 | `bidirectional` | DEBUG |
| 35 | IO42 | `bidirectional` | DEBUG |
| 36 | RXD0 | `bidirectional` | UART |
| 37 | TXD0 | `bidirectional` | UART |
| 38 | IO2 | `bidirectional` | GPIO |
| 39 | IO1 | `bidirectional` | GPIO |
| 40 | GND | `power_in` | GROUND |
| 41 | EPAD | `power_in` | GROUND |

**Provenance** â every field traces back to a datasheet page:

```json
{
  "mpn": "ESP32-S3-WROOM-1-N4",
  "datasheet": {
    "url": "https://www.espressif.com/sites/default/files/documentation/esp32-s3-wroom-1_wroom-1u_datasheet_en.pdf",
    "page_count": 87,
    "sha256": "2d5a7cb7fd559d8dâ¦"
  },
  "symbol.pin_provenance": [
    {
      "confidence": "high",
      "page": 11,
      "pin_name": "GND",
      "pin_number": "1",
      "table_caption": "Table 3-1. Pin Definitions"
    },
    {
      "confidence": "high",
      "page": 11,
      "pin_name": "3V3",
      "pin_number": "2",
      "table_caption": "Table 3-1. Pin Definitions"
    }
  ],
  "footprint.dimension_provenance": [
    {
      "field": "bodyDimensions.x",
      "figure_label": "Figure 10-1. ESP32-S3-WROOM-1 Physical Dimensions",
      "page": 42,
      "value": 18.0
    },
    {
      "field": "bodyDimensions.y",
      "figure_label": "Figure 10-1. ESP32-S3-WROOM-1 Physical Dimensions",
      "page": 42,
      "value": 25.5
    }
  ]
}
```

**The datasheet pages adom-ds2sf read** â the pin table (p.11) and the package drawing (p.45):

![ESP32-S3-WROOM-1-N4 datasheet pin-configuration page](docs/ex-ESP32-S3-WROOM-1-N4-dspin.png)

![ESP32-S3-WROOM-1-N4 datasheet package-dimensions page](docs/ex-ESP32-S3-WROOM-1-N4-dspkg.png)

[â Open the original ESP32-S3-WROOM-1-N4 datasheet](https://www.espressif.com/sites/default/files/documentation/esp32-s3-wroom-1_wroom-1u_datasheet_en.pdf)

# Open source â check it out, vibe-code it, send it back

adom-ds2sf is MIT and **fully open**. The complete Rust source is in this page's **Files** tab.

1. **Build it.** `cargo build --release` drops a standalone binary.
2. **Point your install at your checkout.** `adompkg link john/adom-ds2sf ./adom-ds2sf`.
3. **Vibe-code a change.** Open it in Claude Code â a new provenance field, a different grouping heuristic, another datasheet quirk to handle.
4. **Send it back.** Open a **pull request** on this page, or start a discussion thread.

## Part of the Adom EDA family

adom-ds2sf is the extractor; its results are *viewed and used* through **adom-symbol** / **adom-footprint** (it has no viewer of its own). It feeds **adom-chip-fetcher**'s source carat as the "adom-ds2sf Â· datasheet" source.

## Run it

```bash
adom-ds2sf extract <chip-dir>     # datasheet PDF â symbol + footprint + provenance JSON
adom-ds2sf inspect <chip-dir>     # summarize an extraction
```
MIT, contributions welcome.

## Contributing & forking — open source under the Adom org

**adom-ds2sf** is **open source** under the **adom** org on the [Adom Wiki](https://wiki.adom.inc/adom/adom-ds2sf). The full source lives in this page's repo — open the **Files** tab, or `adompkg install adom/adom-ds2sf` and edit the package. Third-party developers are welcome to modify it and contribute back.

**Modify it**
- Get the source from the Files tab (or `adompkg install adom/adom-ds2sf`), make your changes, and rebuild.

**Contribute back to Adom — two paths**
1. **Pull request (preferred).** The wiki runs a PR-per-page flow: propose your change on this page and the maintainer reviews + merges it — no fork needed.
2. **Fork + breadcrumb.** Prefer your own fork or add-on? Publish it as your own wiki page, then drop a **breadcrumb on _this_ page** pointing at your fork so it's discoverable:
   - Read existing trails: `GET https://wiki.adom.inc/api/v1/pages/adom-ds2sf/breadcrumbs`
   - Attach a breadcrumb from your fork's page targeting this anchor (a short label + your slug).

   The breadcrumb leaves a **linked path back here**, so **Adom's AI can auto-discover your fork** and surface it to users — the trail is followable both ways. Your fork stays yours; the original stays discoverable.

## License

**MIT** — © 2026 Adom Industries Inc. Open source; see [LICENSE](LICENSE). Modify, fork, and redistribute freely.
