main
Ray Publish 0.1.0 7f531f1 16d ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625
{
  "slug": "tms320f28032pnt",
  "version": "0.1.0",
  "type": "component",
  "description": "Texas Instruments Microcontrollers (MCU/MPU/SOC), LQFP-80(12x12). Pinout cross-checked by two models against the datasheet, KiCad symbol/footprint/3D.",
  "tags": [
    "component",
    "embedded processors & controllers",
    "tms320f28032pnt",
    "factory-2.0.0",
    "extractor-text"
  ],
  "dependencies": {},
  "hero": {
    "type": "image",
    "path": "docs/hero.png"
  },
  "files": [
    "page.json",
    "README.md",
    "tms320f28032pnt.kicad_sym",
    "tms320f28032pnt.kicad_mod",
    "tms320f28032pnt.glb",
    "tms320f28032pnt.step",
    "tms320f28032pnt.lbr",
    "docs/hero.png",
    "docs/tms320f28032pnt-datasheet.pdf",
    "viewers/symbol.html",
    "viewers/footprint.html",
    "tms320f28032pnt-hero.glb",
    "tms320f28032pnt-hero.overlay.json"
  ],
  "component": {
    "mpn": "TMS320F28032PNT",
    "manufacturer": "Texas Instruments",
    "package": "LQFP-80(12x12)",
    "pin_count": 80,
    "category": "Embedded Processors & Controllers",
    "subcategory": "Microcontrollers (MCU/MPU/SOC)",
    "datasheet": "https://www.ti.com/cn/lit/gpn/tms320f28033",
    "parts": {
      "symbol": "tms320f28032pnt.kicad_sym",
      "footprint": "tms320f28032pnt.kicad_mod",
      "model_3d": "tms320f28032pnt-hero.glb",
      "model_3d_plain": "tms320f28032pnt.glb",
      "model_3d_step": "tms320f28032pnt-etched.step",
      "model_3d_step_plain": "tms320f28032pnt.step",
      "lbr": "tms320f28032pnt.lbr"
    },
    "distributor_links": {
      "lcsc": "C1337537",
      "digikey": "296-39321-ND",
      "mouser": "595-TMS320F28032PNT"
    },
    "distributor_check": {
      "checked_at": "2026-10-11T13:47:59Z",
      "source": "Component Ocean /api/assign-pns",
      "digikey": {
        "pn": "296-39321-ND",
        "status": "found"
      },
      "mouser": {
        "pn": "595-TMS320F28032PNT",
        "status": "found"
      }
    },
    "pins": [
      {
        "number": "1",
        "name": "GPIO22/EQEP1S/LINTXA",
        "type": "bidirectional",
        "description": "General-purpose I/O 22 with internal pull-up enabled after reset; alternates are EQEP1 strobe (I/O) and LIN transmit (O). Inputs are not 5 V tolerant."
      },
      {
        "number": "2",
        "name": "GPIO32/SDAA/EPWMSYNCI/ADCSOCAO",
        "type": "bidirectional",
        "description": "General-purpose I/O 32; alternates are I2C-A data (open-drain), ePWM external sync input, and ADC SOC-A output. Inputs are not 5 V tolerant."
      },
      {
        "number": "3",
        "name": "GPIO33/SCLA/EPWMSYNCO/ADCSOCBO",
        "type": "bidirectional",
        "description": "General-purpose I/O 33; alternates are I2C-A clock (open-drain), ePWM external sync output, and ADC SOC-B output. Inputs are not 5 V tolerant."
      },
      {
        "number": "4",
        "name": "GPIO23/EQEP1I/LINRXA",
        "type": "bidirectional",
        "description": "General-purpose I/O 23 with internal pull-up enabled after reset; alternates are EQEP1 index (I/O) and LIN receive (I). Inputs are not 5 V tolerant."
      },
      {
        "number": "5",
        "name": "GPIO42/COMP1OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 42 with internal pull-up enabled after reset; alternate is the direct output of comparator 1 (O)."
      },
      {
        "number": "6",
        "name": "GPIO43/COMP2OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 43 with internal pull-up enabled after reset; alternate is the direct output of comparator 2 (O)."
      },
      {
        "number": "7",
        "name": "VDD",
        "type": "power_in",
        "description": "CPU and logic digital supply; 1.71 V to 1.995 V when the internal VREG is disabled and VDD is externally supplied, and a 1.2 µF minimum capacitor per VDD pin when the internal VREG is used."
      },
      {
        "number": "8",
        "name": "VSS",
        "type": "power_in",
        "description": "Digital ground pin."
      },
      {
        "number": "9",
        "name": "XRS",
        "type": "bidirectional",
        "description": "Device reset input and watchdog reset output; open-drain with internal pull-up, driven low on power-up, brown-out, and watchdog reset; a 2.2 kΩ to 10 kΩ resistor between XRS and VDDIO is recommended, and any noise filter capacitor to VSS should be 100 nF or less."
      },
      {
        "number": "10",
        "name": "TRST",
        "type": "input",
        "description": "JTAG test reset with internal pull-down; must be held low during normal operation and requires an external pull-up (about 2.2 kΩ is typical)."
      },
      {
        "number": "11",
        "name": "ADCINA7",
        "type": "input",
        "description": "ADC group A channel 7 analog input (0 V to 3.3 V full scale with the internal reference)."
      },
      {
        "number": "12",
        "name": "ADCINA6/COMP3A/AIO6",
        "type": "input",
        "description": "ADC group A channel 6 analog input, also comparator 3A input; the AIO6 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "13",
        "name": "ADCINA5",
        "type": "input",
        "description": "ADC group A channel 5 analog input."
      },
      {
        "number": "14",
        "name": "ADCINA4/COMP2A/AIO4",
        "type": "input",
        "description": "ADC group A channel 4 analog input, also comparator 2A input; the AIO4 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "15",
        "name": "ADCINA3",
        "type": "input",
        "description": "ADC group A channel 3 analog input."
      },
      {
        "number": "16",
        "name": "ADCINA2/COMP1A/AIO2",
        "type": "input",
        "description": "ADC group A channel 2 analog input, also comparator 1A input; the AIO2 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "17",
        "name": "ADCINA1",
        "type": "input",
        "description": "ADC group A channel 1 analog input."
      },
      {
        "number": "18",
        "name": "ADCINA0",
        "type": "input",
        "description": "ADC group A channel 0 analog input."
      },
      {
        "number": "19",
        "name": "VREFHI",
        "type": "input",
        "description": "ADC external high reference, used only in external reference mode; it must not exceed VDDA in internal or external reference mode."
      },
      {
        "number": "20",
        "name": "VDDA",
        "type": "power_in",
        "description": "Analog supply, 2.97 V to 3.63 V recommended; a 2.2 µF typical capacitor is connected near this pin."
      },
      {
        "number": "21",
        "name": "VSSA",
        "type": "power_in",
        "description": "Analog ground pin."
      },
      {
        "number": "22",
        "name": "VREFLO",
        "type": "input",
        "description": "ADC external low reference, used in external reference mode."
      },
      {
        "number": "23",
        "name": "ADCINB0",
        "type": "input",
        "description": "ADC group B channel 0 analog input."
      },
      {
        "number": "24",
        "name": "ADCINB1",
        "type": "input",
        "description": "ADC group B channel 1 analog input."
      },
      {
        "number": "25",
        "name": "ADCINB2/COMP1B/AIO10",
        "type": "input",
        "description": "ADC group B channel 2 analog input, also comparator 1B input; the AIO10 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "26",
        "name": "ADCINB3",
        "type": "input",
        "description": "ADC group B channel 3 analog input."
      },
      {
        "number": "27",
        "name": "ADCINB4/COMP2B/AIO12",
        "type": "input",
        "description": "ADC group B channel 4 analog input, also comparator 2B input; the AIO12 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "28",
        "name": "ADCINB5",
        "type": "input",
        "description": "ADC group B channel 5 analog input."
      },
      {
        "number": "29",
        "name": "ADCINB6/COMP3B/AIO14",
        "type": "input",
        "description": "ADC group B channel 6 analog input, also comparator 3B input; the AIO14 digital I/O function is available when selected in AIOMUX1."
      },
      {
        "number": "30",
        "name": "ADCINB7",
        "type": "input",
        "description": "ADC group B channel 7 analog input."
      },
      {
        "number": "31",
        "name": "GPIO27/HRCAP2/SPISTEB",
        "type": "bidirectional",
        "description": "General-purpose I/O 27 with internal pull-up enabled after reset; alternates are HRCAP2 input and SPI-B slave transmit enable (I/O)."
      },
      {
        "number": "32",
        "name": "GPIO31/CANTXA",
        "type": "bidirectional",
        "description": "General-purpose I/O 31 with internal pull-up enabled after reset; alternate is CAN-A transmit (O)."
      },
      {
        "number": "33",
        "name": "GPIO30/CANRXA",
        "type": "bidirectional",
        "description": "General-purpose I/O 30 with internal pull-up enabled after reset; alternate is CAN-A receive (I)."
      },
      {
        "number": "34",
        "name": "GPIO29/SCITXDA/SCLA/TZ3",
        "type": "bidirectional",
        "description": "General-purpose I/O 29 with internal pull-up enabled after reset; alternates are SCI-A transmit (O), I2C-A clock (open-drain), and trip-zone input 3."
      },
      {
        "number": "35",
        "name": "VSS",
        "type": "power_in",
        "description": "Digital ground pin."
      },
      {
        "number": "36",
        "name": "VDDIO",
        "type": "power_in",
        "description": "Digital I/O buffer and flash supply, 2.97 V to 3.63 V recommended; decoupling capacitor required on each pin."
      },
      {
        "number": "37",
        "name": "GPIO26/HRCAP1/SPICLKB",
        "type": "bidirectional",
        "description": "General-purpose I/O 26 with internal pull-up enabled after reset; alternates are HRCAP1 input and SPI-B clock (I/O)."
      },
      {
        "number": "38",
        "name": "TEST2",
        "type": "unconnected",
        "description": "Test pin reserved for TI; must be left unconnected."
      },
      {
        "number": "39",
        "name": "GPIO9/EPWM5B/LINTXA/HRCAP1",
        "type": "bidirectional",
        "description": "General-purpose I/O 9; alternates are ePWM5B output (PWM pins have no pull-up at reset), LIN transmit (O), and HRCAP1 input."
      },
      {
        "number": "40",
        "name": "GPIO28/SCIRXDA/SDAA/TZ2",
        "type": "bidirectional",
        "description": "General-purpose I/O 28 with internal pull-up enabled after reset; alternates are SCI-A receive (I), I2C-A data (open-drain), and trip-zone input 2."
      },
      {
        "number": "41",
        "name": "GPIO18/SPICLKA/LINTXA/XCLKOUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 18; alternates are SPI-A clock (I/O), LIN transmit (O), and XCLKOUT (O/Z, derived from SYSCLKOUT, reset value SYSCLKOUT/4)."
      },
      {
        "number": "42",
        "name": "GPIO17/SPISOMIA/TZ3",
        "type": "bidirectional",
        "description": "General-purpose I/O 17 with internal pull-up enabled after reset; alternates are SPI-A slave output (I/O) and trip-zone input 3."
      },
      {
        "number": "43",
        "name": "GPIO8/EPWM5A/ADCSOCAO",
        "type": "bidirectional",
        "description": "General-purpose I/O 8; alternates are ePWM5A output (PWM pins have no pull-up at reset) and ADC SOC-A output (O)."
      },
      {
        "number": "44",
        "name": "GPIO25/SPISOMIB",
        "type": "bidirectional",
        "description": "General-purpose I/O 25 with internal pull-up enabled after reset; alternate is SPI-B slave output (I/O)."
      },
      {
        "number": "45",
        "name": "GPIO44",
        "type": "bidirectional",
        "description": "General-purpose I/O 44 with internal pull-up enabled after reset; no peripheral alternate function is listed."
      },
      {
        "number": "46",
        "name": "GPIO16/SPISIMOA/TZ2",
        "type": "bidirectional",
        "description": "General-purpose I/O 16 with internal pull-up enabled after reset; alternates are SPI-A slave input (I/O) and trip-zone input 2. This pin is in output group 2 (8 mA source/sink capability)."
      },
      {
        "number": "47",
        "name": "GPIO12/TZ1/SCITXDA/SPISIMOB",
        "type": "bidirectional",
        "description": "General-purpose I/O 12 with internal pull-up enabled after reset; alternates are trip-zone input 1, SCI-A transmit (O), and SPI-B slave input (I/O, PN package only)."
      },
      {
        "number": "48",
        "name": "GPIO41/EPWM7B",
        "type": "bidirectional",
        "description": "General-purpose I/O 41; alternate is ePWM7B output (PWM pins have no pull-up at reset)."
      },
      {
        "number": "49",
        "name": "GPIO7/EPWM4B/SCIRXDA",
        "type": "bidirectional",
        "description": "General-purpose I/O 7; alternates are ePWM4B output (PWM pins have no pull-up at reset) and SCI-A receive (I)."
      },
      {
        "number": "50",
        "name": "GPIO6/EPWM4A/EPWMSYNCI/EPWMSYNCO",
        "type": "bidirectional",
        "description": "General-purpose I/O 6; alternates are ePWM4A output with HRPWM channel (PWM pins have no pull-up at reset), external ePWM sync input, and external ePWM sync output."
      },
      {
        "number": "51",
        "name": "X2",
        "type": "output",
        "description": "On-chip crystal oscillator output; must be connected to a crystal or ceramic resonator with X1 and left unconnected if not used."
      },
      {
        "number": "52",
        "name": "X1",
        "type": "input",
        "description": "1.8 V on-chip crystal oscillator input; must not be driven with a 3.3 V level, and must be tied to GND if unused."
      },
      {
        "number": "53",
        "name": "VSS",
        "type": "power_in",
        "description": "Digital ground pin."
      },
      {
        "number": "54",
        "name": "VDD",
        "type": "power_in",
        "description": "CPU and logic digital supply pin (see VDD on pin 7 for voltage and decoupling requirements)."
      },
      {
        "number": "55",
        "name": "GPIO19/XCLKIN/SPISTEA/LINRXA/ECAP1",
        "type": "bidirectional",
        "description": "General-purpose I/O 19; alternates are external oscillator clock input XCLKIN, SPI-A slave transmit enable (I/O), LIN receive (I), and ECAP1 (I/O). Power-up glitches can occur on this pin when using the internal VREG."
      },
      {
        "number": "56",
        "name": "GPIO39",
        "type": "bidirectional",
        "description": "General-purpose I/O 39 with internal pull-up enabled after reset; no peripheral alternate function is listed."
      },
      {
        "number": "57",
        "name": "GPIO38/TCK/XCLKIN",
        "type": "bidirectional",
        "description": "General-purpose I/O 38; alternates are JTAG test clock TCK with internal pull-up and external oscillator input XCLKIN (disable the XCLKIN path during JTAG debug)."
      },
      {
        "number": "58",
        "name": "GPIO37/TDO",
        "type": "bidirectional",
        "description": "General-purpose I/O 37; alternate is JTAG test data output TDO (O/Z, 8 mA drive), shifted out on TCK falling edge."
      },
      {
        "number": "59",
        "name": "GPIO35/TDI",
        "type": "bidirectional",
        "description": "General-purpose I/O 35; alternate is JTAG test data input TDI with internal pull-up, sampled on TCK rising edge."
      },
      {
        "number": "60",
        "name": "GPIO36/TMS",
        "type": "bidirectional",
        "description": "General-purpose I/O 36; alternate is JTAG test mode select TMS with internal pull-up, sampled on TCK rising edge."
      },
      {
        "number": "61",
        "name": "GPIO11/EPWM6B/LINRXA/HRCAP2",
        "type": "bidirectional",
        "description": "General-purpose I/O 11; alternates are ePWM6B output (PWM pins have no pull-up at reset), LIN receive (I), and HRCAP2 input."
      },
      {
        "number": "62",
        "name": "GPIO5/EPWM3B/SPISIMOA/ECAP1",
        "type": "bidirectional",
        "description": "General-purpose I/O 5; alternates are ePWM3B output (PWM pins have no pull-up at reset), SPI-A slave input (I/O), and ECAP1 (I/O)."
      },
      {
        "number": "63",
        "name": "GPIO4/EPWM3A",
        "type": "bidirectional",
        "description": "General-purpose I/O 4; alternate is ePWM3A output with HRPWM channel (PWM pins have no pull-up at reset)."
      },
      {
        "number": "64",
        "name": "GPIO40/EPWM7A",
        "type": "bidirectional",
        "description": "General-purpose I/O 40; alternate is ePWM7A output with HRPWM channel (PWM pins have no pull-up at reset)."
      },
      {
        "number": "65",
        "name": "GPIO10/EPWM6A/ADCSOCBO",
        "type": "bidirectional",
        "description": "General-purpose I/O 10; alternates are ePWM6A output with HRPWM channel (PWM pins have no pull-up at reset) and ADC SOC-B output (O)."
      },
      {
        "number": "66",
        "name": "GPIO3/EPWM2B/SPISOMIA/COMP2OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 3 with internal pull-up enabled after reset; alternates are ePWM2B output, SPI-A slave output (I/O), and comparator 2 direct output (O)."
      },
      {
        "number": "67",
        "name": "GPIO2/EPWM2A",
        "type": "bidirectional",
        "description": "General-purpose I/O 2; alternate is ePWM2A output with HRPWM channel (PWM pins have no pull-up at reset)."
      },
      {
        "number": "68",
        "name": "GPIO1/EPWM1B/COMP1OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 1; alternates are ePWM1B output (PWM pins have no pull-up at reset) and comparator 1 direct output (O)."
      },
      {
        "number": "69",
        "name": "GPIO0/EPWM1A",
        "type": "bidirectional",
        "description": "General-purpose I/O 0; alternate is ePWM1A output with HRPWM channel (PWM pins have no pull-up at reset)."
      },
      {
        "number": "70",
        "name": "VDDIO",
        "type": "power_in",
        "description": "Digital I/O buffer and flash supply pin (see VDDIO on pin 36)."
      },
      {
        "number": "71",
        "name": "VSS",
        "type": "power_in",
        "description": "Digital ground pin."
      },
      {
        "number": "72",
        "name": "VDD",
        "type": "power_in",
        "description": "CPU and logic digital supply pin (see VDD on pin 7 for voltage and decoupling requirements)."
      },
      {
        "number": "73",
        "name": "VREGENZ",
        "type": "input",
        "description": "Internal regulator enable with internal pull-down: tie to VSS to enable the internal 1.8 V VREG, or to VDDIO to disable it and use an external 1.8 V supply on VDD."
      },
      {
        "number": "74",
        "name": "GPIO34/COMP2OUT/COMP3OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 34 with internal pull-up enabled after reset; alternates are comparator 2 direct output and comparator 3 direct output (O). Power-up glitches can occur on this pin when using the internal VREG."
      },
      {
        "number": "75",
        "name": "GPIO15/TZ1/LINRXA/SPISTEB",
        "type": "bidirectional",
        "description": "General-purpose I/O 15 with internal pull-up enabled after reset; alternates are trip-zone input 1, LIN receive (I), and SPI-B slave transmit enable (I/O)."
      },
      {
        "number": "76",
        "name": "GPIO13/TZ2/SPISOMIB",
        "type": "bidirectional",
        "description": "General-purpose I/O 13 with internal pull-up enabled after reset; alternates are trip-zone input 2 and SPI-B slave output (I/O)."
      },
      {
        "number": "77",
        "name": "GPIO14/TZ3/LINTXA/SPICLKB",
        "type": "bidirectional",
        "description": "General-purpose I/O 14 with internal pull-up enabled after reset; alternates are trip-zone input 3, LIN transmit (O), and SPI-B clock (I/O)."
      },
      {
        "number": "78",
        "name": "GPIO20/EQEP1A/COMP1OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 20 with internal pull-up enabled after reset; alternates are EQEP1A input (I) and comparator 1 direct output (O)."
      },
      {
        "number": "79",
        "name": "GPIO21/EQEP1B/COMP2OUT",
        "type": "bidirectional",
        "description": "General-purpose I/O 21 with internal pull-up enabled after reset; alternates are EQEP1B input (I) and comparator 2 direct output (O)."
      },
      {
        "number": "80",
        "name": "GPIO24/ECAP1/SPISIMOB",
        "type": "bidirectional",
        "description": "General-purpose I/O 24 with internal pull-up enabled after reset; alternates are ECAP1 (I/O) and SPI-B slave input (I/O)."
      }
    ],
    "provenance": {
      "extractor": "extract_pins 0.3",
      "factory_chain": {
        "factory": "2.0.0",
        "extractor": "extract_pins 0.3",
        "primary_model": "claude-haiku-5-5",
        "primary_mode": "text",
        "consensus_model": "claude-sonnet-5-5",
        "consensus": "agreed",
        "guards": "pin_guards 0.1: passed",
        "guard_notes": [
          "extractor flagged: Pin 38 TEST2 is reserved for TI and must remain unconnected; it is marked 'unconnected' in the outpu; Power-pin types: the datasheet describes VDD as either an external 1.71-1.995 V input (VREG disabled; ADC pins that are also AIO or comparator pins (ADCINA2/4/6, ADCINB2/4/6) and the reference pins VREF"
        ],
        "pages_sent": 120,
        "cost_usd": 0.8467,
        "at": "2026-10-11T13:47:28"
      },
      "datasheet": {
        "url": "https://www.ti.com/cn/lit/gpn/tms320f28033",
        "pages": 176,
        "sha256": "cb9ccecfd6b5c484",
        "source_tier": "lcsc"
      },
      "cad": "KiCad official (CC-BY-SA 4.0)",
      "pins": {
        "total": 80,
        "described": 80,
        "cites_pages": true,
        "refuses_to_fabricate": true
      }
    },
    "viewers": {
      "symbol": "viewers/symbol.html",
      "footprint": "viewers/footprint.html"
    },
    "models_3d": [
      {
        "file": "tms320f28032pnt.step",
        "role": "plain",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          14.0,
          14.0,
          1.5
        ],
        "zmin_mm": 0.0,
        "centre_offset_mm": 0.0,
        "footprint_binding": "identity",
        "sha256": "f782bdbc6327d920be33e2b9906695d7c3690117933775c3f145eac71f2013ac",
        "checked": "2026-10-11",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      },
      {
        "file": "tms320f28032pnt-etched.step",
        "role": "eda",
        "up": "Z",
        "units": "mm",
        "origin": "footprint origin = pad-pattern centre",
        "seat": "z = 0",
        "extents_mm": [
          14.0,
          14.0,
          1.5
        ],
        "zmin_mm": 0.0,
        "centre_offset_mm": 0.0,
        "footprint_binding": "identity",
        "sha256": "be7e9c5eea16cdde3a7b77003ed358b0d2a323b060212686e46eb87e43f0589d",
        "checked": "2026-10-11",
        "checked_by": "factory/step_pose.py (Z-up, origin, seat, binding)"
      }
    ]
  }
}