Skip to content

SilicAI Component

Title: SilicAI Component

Type object
Required No
Additional properties Any type allowed

Description: Structured description of an electronic component for AI-assisted circuit design

Property Pattern Type Deprecated Definition Title/Description
- $schema No string No - -
- $schema_version No string No - -
+ component No object No - -

1. Property $schema

Type string
Required No

2. Property $schema_version

Type string
Required No

3. Property component

Type object
Required Yes
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
+ mpn No string No - Manufacturer Part Number (e.g. STM32F405RGT6, TMP117AIDRVR)
+ manufacturer No string No - Component manufacturer name (e.g. Texas Instruments, STMicroelectronics)
+ category No enum (of string) No - Component category for grouping and AI-assisted selection
+ package No string No - Physical package (e.g. WSON-6, LQFP-64, SOT-23)
- datasheet No string No - URL to the official datasheet PDF
- kicad_symbol No string No - KiCad library symbol reference, e.g. Sensor_Temperature:TMP117xxYBG
- specifications No object No In defs/specifications.schema.json Specifications
- absolute_maximum_ratings No array No - Conditions that must never be exceeded to avoid permanent damage
- recommended_operating_conditions No array No - Conditions for normal operation as specified in the datasheet
- temperature_range No object No In defs/temperature_range.schema.json Temperature Range
- power_consumption No array No - Supply current per operating mode for power budgeting
- timing No array No - Timing parameters (setup/hold times, propagation delays, rise/fall times)
- rails No array No - Power supply rails with their decoupling requirements
+ pins No array No - Pin definitions including electrical characteristics and functions
- interfaces No array No - Communication interfaces exposed by the component
- remark No string No - Free-form note about this component (e.g. known errata, special design requirements, recommended alternatives)

3.1. Property mpn

Type string
Required Yes

Description: Manufacturer Part Number (e.g. STM32F405RGT6, TMP117AIDRVR)

3.2. Property manufacturer

Type string
Required Yes

Description: Component manufacturer name (e.g. Texas Instruments, STMicroelectronics)

3.3. Property category

Type enum (of string)
Required Yes

Description: Component category for grouping and AI-assisted selection

Must be one of: * "mcu" * "mpu" * "power_ic" * "power_discrete" * "analog" * "logic" * "memory" * "wireless" * "sensor" * "passive" * "connector" * "discrete"

3.4. Property package

Type string
Required Yes

Description: Physical package (e.g. WSON-6, LQFP-64, SOT-23)

3.5. Property datasheet

Type string
Required No
Format uri

Description: URL to the official datasheet PDF

3.6. Property kicad_symbol

Type string
Required No

Description: KiCad library symbol reference, e.g. Sensor_Temperature:TMP117xxYBG

3.7. Property specifications

Title: Specifications

Type object
Required No
Additional properties Any type allowed
Defined in defs/specifications.schema.json

Description: Primary electrical specifications (for passive components)

Property Pattern Type Deprecated Definition Title/Description
- resistance No object No In measured_value.schema.json Measured Value
- capacitance No object No Same as resistance Measured Value
- inductance No object No Same as resistance Measured Value
- tolerance No object No Same as resistance Measured Value
- voltage_rating No object No Same as resistance Measured Value
- power_rating No object No Same as resistance Measured Value
- current_rating No object No Same as resistance Measured Value
- dc_resistance No object No Same as resistance Measured Value
- temperature_coefficient No object No Same as resistance Measured Value
- temperature_range No object No In range_value.schema.json Range Value
- dielectric No string No - Capacitor dielectric type (e.g. X5R, X7R, C0G)

3.7.1. Property resistance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Defined in measured_value.schema.json

Description: Resistance value (for resistors)

Property Pattern Type Deprecated Definition Title/Description
+ value No number No - Numeric quantity
+ unit No string No - Unit of measurement. Must be an SI unit or SI-derived unit, optionally with an SI prefix (e.g. V, mV, A, mA, Ω, kΩ, F, nF, µF, H, nH, Hz, kHz, MHz, W, mW, °C, m, mm). Dimensionless ratios such as ppm and % are also accepted.
3.7.1.1. Property value
Type number
Required Yes

Description: Numeric quantity

3.7.1.2. Property unit
Type string
Required Yes

Description: Unit of measurement. Must be an SI unit or SI-derived unit, optionally with an SI prefix (e.g. V, mV, A, mA, Ω, kΩ, F, nF, µF, H, nH, Hz, kHz, MHz, W, mW, °C, m, mm). Dimensionless ratios such as ppm and % are also accepted.

3.7.2. Property capacitance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Capacitance value (for capacitors)

3.7.3. Property inductance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Inductance value (for inductors)

3.7.4. Property tolerance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Component tolerance (e.g. {value: 1, unit: %})

3.7.5. Property voltage_rating

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum rated voltage

3.7.6. Property power_rating

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum rated power dissipation

3.7.7. Property current_rating

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum rated continuous current

3.7.8. Property dc_resistance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: DC resistance (for inductors and ferrite beads)

3.7.9. Property temperature_coefficient

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Temperature coefficient (ppm/°C)

3.7.10. Property temperature_range

Title: Range Value

Type object
Required No
Additional properties Not allowed
Defined in range_value.schema.json

Description: Operating temperature range

Property Pattern Type Deprecated Definition Title/Description
+ min No number No - Minimum value of the range
+ max No number No - Maximum value of the range
+ unit No string No - Unit of measurement (e.g. °C, V)
3.7.10.1. Property min
Type number
Required Yes

Description: Minimum value of the range

3.7.10.2. Property max
Type number
Required Yes

Description: Maximum value of the range

3.7.10.3. Property unit
Type string
Required Yes

Description: Unit of measurement (e.g. °C, V)

3.7.11. Property dielectric

Type string
Required No

Description: Capacitor dielectric type (e.g. X5R, X7R, C0G)

3.8. Property absolute_maximum_ratings

Type array
Required No

Description: Conditions that must never be exceeded to avoid permanent damage

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Rating One row of an absolute maximum ratings or recommended operating conditions table

3.8.1. Rating

Title: Rating

Type object
Required No
Additional properties Any type allowed
Defined in defs/rating.schema.json

Description: One row of an absolute maximum ratings or recommended operating conditions table

Property Pattern Type Deprecated Definition Title/Description
+ parameter No string No - Name of the parameter (e.g. Supply voltage, Operating temperature)
+ pins No array of string No - Pin names this rating applies to (empty list for global ratings)
+ unit No string No - Unit of the rating values (e.g. V, mA, °C)
- min No number No - Minimum value
- nom No number No - Nominal (typical) value
- max No number No - Maximum value
- remark No string No - Free-form note about this rating (e.g. latchup test condition, ESD model used)
3.8.1.1. Property parameter
Type string
Required Yes

Description: Name of the parameter (e.g. Supply voltage, Operating temperature)

3.8.1.2. Property pins
Type array of string
Required Yes

Description: Pin names this rating applies to (empty list for global ratings)

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
pins items -
3.8.1.2.1. pins items
Type string
Required No
3.8.1.3. Property unit
Type string
Required Yes

Description: Unit of the rating values (e.g. V, mA, °C)

3.8.1.4. Property min
Type number
Required No

Description: Minimum value

3.8.1.5. Property nom
Type number
Required No

Description: Nominal (typical) value

3.8.1.6. Property max
Type number
Required No

Description: Maximum value

3.8.1.7. Property remark
Type string
Required No

Description: Free-form note about this rating (e.g. latchup test condition, ESD model used)

Type array
Required No

Description: Conditions for normal operation as specified in the datasheet

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Rating One row of an absolute maximum ratings or recommended operating conditions table

3.9.1. Rating

Title: Rating

Type object
Required No
Additional properties Any type allowed
Same definition as Rating

Description: One row of an absolute maximum ratings or recommended operating conditions table

3.10. Property temperature_range

Title: Temperature Range

Type object
Required No
Additional properties Any type allowed
Defined in defs/temperature_range.schema.json

Description: Operating and storage temperature limits, junction temperature, and thermal resistance

Property Pattern Type Deprecated Definition Title/Description
- operating No object No - Ambient temperature range for normal operation
- storage No object No - Allowable temperature range during storage (unpowered)
- junction_max No object No Same as resistance Measured Value
- thermal_resistance_ja No object No Same as resistance Measured Value

3.10.1. Property operating

Type object
Required No
Additional properties Any type allowed

Description: Ambient temperature range for normal operation

Property Pattern Type Deprecated Definition Title/Description
+ min No object No Same as resistance Measured Value
+ max No object No Same as resistance Measured Value
3.10.1.1. Property min

Title: Measured Value

Type object
Required Yes
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.10.1.2. Property max

Title: Measured Value

Type object
Required Yes
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.10.2. Property storage

Type object
Required No
Additional properties Any type allowed

Description: Allowable temperature range during storage (unpowered)

Property Pattern Type Deprecated Definition Title/Description
+ min No object No Same as resistance Measured Value
+ max No object No Same as resistance Measured Value
3.10.2.1. Property min

Title: Measured Value

Type object
Required Yes
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.10.2.2. Property max

Title: Measured Value

Type object
Required Yes
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.10.3. Property junction_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum junction temperature (Tj_max), typically 125°C or 150°C

3.10.4. Property thermal_resistance_ja

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Junction-to-ambient thermal resistance (Θja) in °C/W

3.11. Property power_consumption

Type array
Required No

Description: Supply current per operating mode for power budgeting

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Power Consumption Entry Supply current draw for a specific operating mode, used for power budgeting

3.11.1. Power Consumption Entry

Title: Power Consumption Entry

Type object
Required No
Additional properties Any type allowed
Defined in defs/power_consumption.schema.json

Description: Supply current draw for a specific operating mode, used for power budgeting

Property Pattern Type Deprecated Definition Title/Description
+ mode No string No - Operating mode name (e.g. active, sleep, shutdown, tx, rx, idle)
- description No string No - Human-readable description of the mode and its conditions
- rail No string No - Power rail ID this current is drawn from (references a rail in the component's rails array)
+ current No object No Same as resistance Measured Value
- current_max No object No Same as resistance Measured Value
- conditions No string No - Measurement conditions as stated in the datasheet (e.g. VDD=3.3V, f=64MHz, all peripherals on)
- remark No string No - Free-form note about this power mode (e.g. excludes crystal oscillator current, minimum load required)
3.11.1.1. Property mode
Type string
Required Yes

Description: Operating mode name (e.g. active, sleep, shutdown, tx, rx, idle)

3.11.1.2. Property description
Type string
Required No

Description: Human-readable description of the mode and its conditions

3.11.1.3. Property rail
Type string
Required No

Description: Power rail ID this current is drawn from (references a rail in the component's rails array)

3.11.1.4. Property current

Title: Measured Value

Type object
Required Yes
Additional properties Not allowed
Same definition as resistance

Description: Typical supply current in this mode (e.g. {value: 5, unit: mA})

3.11.1.5. Property current_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum supply current in this mode

3.11.1.6. Property conditions
Type string
Required No

Description: Measurement conditions as stated in the datasheet (e.g. VDD=3.3V, f=64MHz, all peripherals on)

3.11.1.7. Property remark
Type string
Required No

Description: Free-form note about this power mode (e.g. excludes crystal oscillator current, minimum load required)

3.12. Property timing

Type array
Required No

Description: Timing parameters (setup/hold times, propagation delays, rise/fall times)

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Timing Specification A single timing parameter from the datasheet (setup time, hold time, propagation delay, etc.)

3.12.1. Timing Specification

Title: Timing Specification

Type object
Required No
Additional properties Any type allowed
Defined in defs/timing.schema.json

Description: A single timing parameter from the datasheet (setup time, hold time, propagation delay, etc.)

Property Pattern Type Deprecated Definition Title/Description
+ name No string No - Timing parameter name as used in the datasheet (e.g. t_su, t_hd, t_r, t_pd)
- description No string No - Human-readable description (e.g. SDA setup time to SCL rising edge)
- from_pin No string No - Reference pin or signal for the start of the timing interval
- to_pin No string No - Reference pin or signal for the end of the timing interval
- from_edge No enum (of string) No - Triggering edge on from_pin
- to_edge No enum (of string) No - Triggering edge on to_pin
- min No object No Same as resistance Measured Value
- typ No object No Same as resistance Measured Value
- max No object No Same as resistance Measured Value
- conditions No string No - Conditions under which this timing applies (e.g. VDD=3.3V, CL=10pF)
- interface No string No - Interface this timing belongs to (e.g. I2C, SPI, UART)
- remark No string No - Free-form note about this timing parameter (e.g. only applies when CL > 100pF)
3.12.1.1. Property name
Type string
Required Yes

Description: Timing parameter name as used in the datasheet (e.g. t_su, t_hd, t_r, t_pd)

3.12.1.2. Property description
Type string
Required No

Description: Human-readable description (e.g. SDA setup time to SCL rising edge)

3.12.1.3. Property from_pin
Type string
Required No

Description: Reference pin or signal for the start of the timing interval

3.12.1.4. Property to_pin
Type string
Required No

Description: Reference pin or signal for the end of the timing interval

3.12.1.5. Property from_edge
Type enum (of string)
Required No

Description: Triggering edge on from_pin

Must be one of: * "rising" * "falling" * "any"

3.12.1.6. Property to_edge
Type enum (of string)
Required No

Description: Triggering edge on to_pin

Must be one of: * "rising" * "falling" * "any"

3.12.1.7. Property min

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Minimum value

3.12.1.8. Property typ

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Typical value

3.12.1.9. Property max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum value

3.12.1.10. Property conditions
Type string
Required No

Description: Conditions under which this timing applies (e.g. VDD=3.3V, CL=10pF)

3.12.1.11. Property interface
Type string
Required No

Description: Interface this timing belongs to (e.g. I2C, SPI, UART)

3.12.1.12. Property remark
Type string
Required No

Description: Free-form note about this timing parameter (e.g. only applies when CL > 100pF)

3.13. Property rails

Type array
Required No

Description: Power supply rails with their decoupling requirements

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Rail A power supply rail with its decoupling requirements

3.13.1. Rail

Title: Rail

Type object
Required No
Additional properties Any type allowed
Defined in defs/rail.schema.json

Description: A power supply rail with its decoupling requirements

Property Pattern Type Deprecated Definition Title/Description
+ id No string No - Internal identifier for this rail, referenced by pin rail fields (e.g. vplus, vdd_core)
+ net No string No - Net name in the schematic (e.g. VCC_3V3, GND)
- type No enum (of string) No - power: externally supplied rail. internal_node: generated internally (e.g. LDO output).
- input_filter No array No - Ordered list of passive components forming the filter network between the source supply and this rail net. Use 'from' on the first series element to name the source net; the rail net itself is the output node. Shunt elements use 'to: GND'. Example: +3V3 → 33Ω (from: VREG_VIN) → VREG_AVDD → 4.7µF (to: GND).
- bulk_decoupling No array No - Large bulk decoupling capacitors placed near the component
- remark No string No - Free-form note about this rail (e.g. must be sequenced before DVDD, shared with another supply)
3.13.1.1. Property id
Type string
Required Yes

Description: Internal identifier for this rail, referenced by pin rail fields (e.g. vplus, vdd_core)

3.13.1.2. Property net
Type string
Required Yes

Description: Net name in the schematic (e.g. VCC_3V3, GND)

3.13.1.3. Property type
Type enum (of string)
Required No

Description: power: externally supplied rail. internal_node: generated internally (e.g. LDO output).

Must be one of: * "power" * "internal_node"

3.13.1.4. Property input_filter
Type array
Required No

Description: Ordered list of passive components forming the filter network between the source supply and this rail net. Use 'from' on the first series element to name the source net; the rail net itself is the output node. Shunt elements use 'to: GND'. Example: +3V3 → 33Ω (from: VREG_VIN) → VREG_AVDD → 4.7µF (to: GND).

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Passive Component A passive component used in decoupling, filtering, or required external circuits
3.13.1.4.1. Passive Component

Title: Passive Component

Type object
Required No
Additional properties Any type allowed
Defined in passive_component.schema.json

Description: A passive component used in decoupling, filtering, or required external circuits

Property Pattern Type Deprecated Definition Title/Description
+ type No enum (of string) No - Component type
- required No boolean No - True if this component is mandatory for correct operation. False or absent means the component is optional (e.g. a debug button, an optional filter).
- resistance No object No Same as resistance Measured Value
- capacitance No object No Same as resistance Measured Value
- inductance No object No Same as resistance Measured Value
- impedance_at_100mhz No object No Same as resistance Measured Value
- voltage_rating No object No Same as resistance Measured Value
- current_rating No object No Same as resistance Measured Value
- esr No object No Same as resistance Measured Value
- frequency No object No Same as resistance Measured Value
- frequency_tolerance No object No Same as resistance Measured Value
- load_capacitance No object No Same as resistance Measured Value
- series_r No object No Same as resistance Measured Value
- xin_cap No object No Same as resistance Measured Value
- xout_cap No object No Same as resistance Measured Value
- dielectric No array of string No - Acceptable capacitor dielectrics in order of preference (e.g. [X5R, X7R])
- recommended_mpn No string No - Specific manufacturer part number recommended by the IC datasheet or design guide. Deviating requires re-validation.
- package No string No - Recommended component package / footprint (e.g. '0402', '0806')
- condition No string No - Design condition under which this component or value applies (e.g. 'IOVDD=3.3V'). If the condition is not met the component must be re-evaluated.
- placement No enum (of string) No - Required placement proximity relative to the associated pin or component
- orientation No string No - Required mounting orientation for orientation-sensitive components (e.g. shielded inductors whose magnetic field direction affects adjacent components). Presence of this field implies the component must not be rotated arbitrarily. Value should describe the correct placement direction (e.g. 'winding-start towards output capacitor').
- quantity No enum (of string) No - How many instances of this component are needed
- scope No enum (of string) No - component: one per IC instance. bus: shared across all devices on the bus.
- from No string No - Source net or pin name this component connects from (net name in rail input_filter context; pin name in required_external context)
- to No string No - Destination net or pin name this component connects to
- remark No string No - Free-form note about why this component is needed or how to select it
3.13.1.4.1.1. Property type
Type enum (of string)
Required Yes

Description: Component type

Must be one of: * "capacitor" * "resistor" * "ferrite_bead" * "inductor" * "crystal" * "diode" * "switch"

3.13.1.4.1.2. Property required
Type boolean
Required No

Description: True if this component is mandatory for correct operation. False or absent means the component is optional (e.g. a debug button, an optional filter).

3.13.1.4.1.3. Property resistance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Resistance value (for resistors and pull-ups)

3.13.1.4.1.4. Property capacitance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Capacitance value (for capacitors)

3.13.1.4.1.5. Property inductance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Inductance value (for inductors)

3.13.1.4.1.6. Property impedance_at_100mhz

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Impedance at 100 MHz (for ferrite beads)

3.13.1.4.1.7. Property voltage_rating

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum rated voltage

3.13.1.4.1.8. Property current_rating

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum rated continuous current

3.13.1.4.1.9. Property esr

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Equivalent series resistance (max, for capacitors and crystals)

3.13.1.4.1.10. Property frequency

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Nominal oscillation frequency (for crystals)

3.13.1.4.1.11. Property frequency_tolerance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Frequency tolerance (for crystals, unit: ppm)

3.13.1.4.1.12. Property load_capacitance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Specified load capacitance (for crystals, unit: pF)

3.13.1.4.1.13. Property series_r

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Series resistor (Rs) in the oscillator drive path (for crystals only). Rs is placed in series between the MCU oscillator output (XOUT) and the crystal, limiting drive current. The crystal's XOUT-side pin is placed on an intermediate net; Rs bridges that net back to the XOUT pin net.

3.13.1.4.1.14. Property xin_cap

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Load capacitor on the crystal XIN side, placed between the crystal's sense-side terminal (same net as the MCU XIN pin) and GND.

3.13.1.4.1.15. Property xout_cap

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Load capacitor on the crystal XOUT side, placed between the crystal's drive-side terminal and GND. Used together with series_r when the XOUT cap must sit on the crystal side of Rs (not on the MCU XOUT pin directly).

3.13.1.4.1.16. Property dielectric
Type array of string
Required No

Description: Acceptable capacitor dielectrics in order of preference (e.g. [X5R, X7R])

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
dielectric items -
3.13.1.4.1.16.1. dielectric items
Type string
Required No
Type string
Required No

Description: Specific manufacturer part number recommended by the IC datasheet or design guide. Deviating requires re-validation.

3.13.1.4.1.18. Property package
Type string
Required No

Description: Recommended component package / footprint (e.g. '0402', '0806')

3.13.1.4.1.19. Property condition
Type string
Required No

Description: Design condition under which this component or value applies (e.g. 'IOVDD=3.3V'). If the condition is not met the component must be re-evaluated.

3.13.1.4.1.20. Property placement
Type enum (of string)
Required No

Description: Required placement proximity relative to the associated pin or component

Must be one of: * "close" * "nearby" * "per_pin" * "per_component"

3.13.1.4.1.21. Property orientation
Type string
Required No

Description: Required mounting orientation for orientation-sensitive components (e.g. shielded inductors whose magnetic field direction affects adjacent components). Presence of this field implies the component must not be rotated arbitrarily. Value should describe the correct placement direction (e.g. 'winding-start towards output capacitor').

3.13.1.4.1.22. Property quantity
Type enum (of string)
Required No

Description: How many instances of this component are needed

Must be one of: * "1" * "per_pin" * "per_component"

3.13.1.4.1.23. Property scope
Type enum (of string)
Required No

Description: component: one per IC instance. bus: shared across all devices on the bus.

Must be one of: * "component" * "bus"

3.13.1.4.1.24. Property from
Type string
Required No

Description: Source net or pin name this component connects from (net name in rail input_filter context; pin name in required_external context)

3.13.1.4.1.25. Property to
Type string
Required No

Description: Destination net or pin name this component connects to

3.13.1.4.1.26. Property remark
Type string
Required No

Description: Free-form note about why this component is needed or how to select it

3.13.1.5. Property bulk_decoupling
Type array
Required No

Description: Large bulk decoupling capacitors placed near the component

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Passive Component A passive component used in decoupling, filtering, or required external circuits
3.13.1.5.1. Passive Component

Title: Passive Component

Type object
Required No
Additional properties Any type allowed
Same definition as Passive Component

Description: A passive component used in decoupling, filtering, or required external circuits

3.13.1.6. Property remark
Type string
Required No

Description: Free-form note about this rail (e.g. must be sequenced before DVDD, shared with another supply)

3.14. Property pins

Type array
Required Yes

Description: Pin definitions including electrical characteristics and functions

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Pin A single pin of an electronic component with its electrical characteristics and functions

3.14.1. Pin

Title: Pin

Type object
Required No
Additional properties Any type allowed
Defined in defs/pin.schema.json

Description: A single pin of an electronic component with its electrical characteristics and functions

Property Pattern Type Deprecated Definition Title/Description
+ number No integer or string No - Physical pin number as printed on the component package
+ name No string No - Pin name as printed in the datasheet (e.g. SCL, GPIO1, VCC)
+ direction No enum (of string) No - Electrical direction of the pin
- open_drain No boolean No - True if pin is open-drain/open-collector; requires an external pull-up resistor
- must_connect No boolean No - True if pin must be connected and cannot be left floating. Common for RESET, BOOT, and VCC pins.
- rail No string No - ID of the power rail this pin belongs to (references a rail defined in the component's rails array)
- net No string No - Explicit net name override for this pin
- voltage_level No object No Same as resistance Measured Value
- electrical No object No In pin_electrical.schema.json Pin Electrical Characteristics
- primary_function No object No In pin_function.schema.json Pin Function
- alternate_functions No array No - Alternate peripheral functions available when this pin is configured as GPIO
- externals No array No - External components associated with this pin. Set required: true on each item that is mandatory for correct operation; omit or set false for optional components (e.g. debug buttons, optional filters).
- decoupling No array No - Decoupling capacitors placed close to this power pin (one instance generated per pin)
- remark No string No - Free-form note about this pin (e.g. must be tied to GND, do not exceed 1.8V, connects to external crystal)
3.14.1.1. Property number
Type integer or string
Required Yes

Description: Physical pin number as printed on the component package

3.14.1.2. Property name
Type string
Required Yes

Description: Pin name as printed in the datasheet (e.g. SCL, GPIO1, VCC)

3.14.1.3. Property direction
Type enum (of string)
Required Yes

Description: Electrical direction of the pin

Must be one of: * "input" * "output" * "bidirectional" * "tri_state" * "passive" * "open_collector" * "open_emitter" * "power_in" * "power_out" * "no_connect"

3.14.1.4. Property open_drain
Type boolean
Required No

Description: True if pin is open-drain/open-collector; requires an external pull-up resistor

3.14.1.5. Property must_connect
Type boolean
Required No

Description: True if pin must be connected and cannot be left floating. Common for RESET, BOOT, and VCC pins.

3.14.1.6. Property rail
Type string
Required No

Description: ID of the power rail this pin belongs to (references a rail defined in the component's rails array)

3.14.1.7. Property net
Type string
Required No

Description: Explicit net name override for this pin

3.14.1.8. Property voltage_level

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Nominal logic voltage level of the pin

3.14.1.9. Property electrical

Title: Pin Electrical Characteristics

Type object
Required No
Additional properties Any type allowed
Defined in pin_electrical.schema.json

Description: Detailed electrical characteristics from the datasheet (V_IH, V_IL, etc.)

Property Pattern Type Deprecated Definition Title/Description
- v_ih_min No Combination No - Minimum input voltage recognized as logic HIGH
- v_il_max No Combination No - Maximum input voltage recognized as logic LOW
- v_oh_min No Combination No - Minimum output voltage when driving logic HIGH
- v_ol_max No object No Same as resistance Measured Value
- i_oh_max No object No Same as resistance Measured Value
- i_ol_max No object No Same as resistance Measured Value
- i_leak_max No object No Same as resistance Measured Value
3.14.1.9.1. Property v_ih_min
Type combining
Required No
Additional properties Any type allowed

Description: Minimum input voltage recognized as logic HIGH

One of(Option)
Measured Value
Relative Threshold
3.14.1.9.1.1. Property Measured Value

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.14.1.9.1.2. Property Relative Threshold

Title: Relative Threshold

Type object
Required No
Additional properties Not allowed
Defined in relative_threshold.schema.json

Description: A voltage threshold expressed as a fraction of a reference voltage (e.g. 0.7 × V+)

Property Pattern Type Deprecated Definition Title/Description
+ multiplier No number No - Fraction of the reference voltage (e.g. 0.7 for 70%)
+ reference No string No - Reference voltage identifier (e.g. V+, VCC, VDD)
3.14.1.9.1.2.1. Property multiplier
Type number
Required Yes

Description: Fraction of the reference voltage (e.g. 0.7 for 70%)

3.14.1.9.1.2.2. Property reference
Type string
Required Yes

Description: Reference voltage identifier (e.g. V+, VCC, VDD)

3.14.1.9.2. Property v_il_max
Type combining
Required No
Additional properties Any type allowed

Description: Maximum input voltage recognized as logic LOW

One of(Option)
Measured Value
Relative Threshold
3.14.1.9.2.1. Property Measured Value

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.14.1.9.2.2. Property Relative Threshold

Title: Relative Threshold

Type object
Required No
Additional properties Not allowed
Same definition as Relative Threshold

Description: A voltage threshold expressed as a fraction of a reference voltage (e.g. 0.7 × V+)

3.14.1.9.3. Property v_oh_min
Type combining
Required No
Additional properties Any type allowed

Description: Minimum output voltage when driving logic HIGH

One of(Option)
Measured Value
Relative Threshold
3.14.1.9.3.1. Property Measured Value

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: A numeric measurement with an explicit unit

3.14.1.9.3.2. Property Relative Threshold

Title: Relative Threshold

Type object
Required No
Additional properties Not allowed
Same definition as Relative Threshold

Description: A voltage threshold expressed as a fraction of a reference voltage (e.g. 0.7 × V+)

3.14.1.9.4. Property v_ol_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum output voltage when driving logic LOW

3.14.1.9.5. Property i_oh_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum source current when output is HIGH

3.14.1.9.6. Property i_ol_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum sink current when output is LOW

3.14.1.9.7. Property i_leak_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum input leakage current

3.14.1.10. Property primary_function

Title: Pin Function

Type object
Required No
Additional properties Any type allowed
Defined in pin_function.schema.json

Description: Primary logical function of this pin

Property Pattern Type Deprecated Definition Title/Description
+ type No enum (of string) No - Functional role of this pin
- polarity No enum (of string) No - Active polarity for control signals (e.g. RESET, CS, ENABLE)
- port No string No - GPIO port identifier (e.g. A, B, C for STM32)
- bit No integer No - Bit number within the GPIO port
- options No array No - For address_select pins: list of connect_to/i2c_address pairings
3.14.1.10.1. Property type
Type enum (of string)
Required Yes

Description: Functional role of this pin

Must be one of: * "gpio" * "reset" * "boot_select" * "clock_in" * "clock_out" * "power" * "analog_in" * "analog_out" * "differential_pair" * "i2c_scl" * "i2c_sda" * "spi_sck" * "spi_mosi" * "spi_miso" * "spi_cs" * "uart_tx" * "uart_rx" * "usb_dp" * "usb_dm" * "swd_io" * "swd_clk" * "jtag_tdi" * "jtag_tdo" * "jtag_tck" * "jtag_tms" * "nfc_antenna" * "adc" * "alert" * "address_select" * "enable" * "interrupt" * "pwm"

3.14.1.10.2. Property polarity
Type enum (of string)
Required No

Description: Active polarity for control signals (e.g. RESET, CS, ENABLE)

Must be one of: * "active_high" * "active_low"

3.14.1.10.3. Property port
Type string
Required No

Description: GPIO port identifier (e.g. A, B, C for STM32)

3.14.1.10.4. Property bit
Type integer
Required No

Description: Bit number within the GPIO port

3.14.1.10.5. Property options
Type array
Required No

Description: For address_select pins: list of connect_to/i2c_address pairings

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
address_select_option Maps a connection target (net name) to the resulting I2C address
3.14.1.10.5.1. address_select_option
Type object
Required No
Additional properties Any type allowed
Defined in #/$defs/address_select_option

Description: Maps a connection target (net name) to the resulting I2C address

Property Pattern Type Deprecated Definition Title/Description
+ connect_to No string No - Net name to connect the address pin to (e.g. GND, VCC, SDA)
+ i2c_address No string No - Resulting 7-bit I2C address in hex (e.g. 0x48)
3.14.1.10.5.1.1. Property connect_to
Type string
Required Yes

Description: Net name to connect the address pin to (e.g. GND, VCC, SDA)

3.14.1.10.5.1.2. Property i2c_address
Type string
Required Yes

Description: Resulting 7-bit I2C address in hex (e.g. 0x48)

3.14.1.11. Property alternate_functions
Type array
Required No

Description: Alternate peripheral functions available when this pin is configured as GPIO

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Alternate Pin Function An alternate peripheral function available on a GPIO pin
3.14.1.11.1. Alternate Pin Function

Title: Alternate Pin Function

Type object
Required No
Additional properties Any type allowed
Defined in alternate_function.schema.json

Description: An alternate peripheral function available on a GPIO pin

Property Pattern Type Deprecated Definition Title/Description
- af No object No - Alternate function number (microcontroller-specific, e.g. AF4 for STM32)
+ peripheral No string No - Peripheral name (e.g. I2C1, SPI2, USART3)
+ signal No string No - Signal name within the peripheral (e.g. SCL, MOSI, TX)
+ direction No enum (of string) No - Signal direction when this alternate function is active
3.14.1.11.1.1. Property af
Type object
Required No
Additional properties Any type allowed

Description: Alternate function number (microcontroller-specific, e.g. AF4 for STM32)

3.14.1.11.1.2. Property peripheral
Type string
Required Yes

Description: Peripheral name (e.g. I2C1, SPI2, USART3)

3.14.1.11.1.3. Property signal
Type string
Required Yes

Description: Signal name within the peripheral (e.g. SCL, MOSI, TX)

3.14.1.11.1.4. Property direction
Type enum (of string)
Required Yes

Description: Signal direction when this alternate function is active

Must be one of: * "input" * "output" * "bidirectional"

3.14.1.12. Property externals
Type array
Required No

Description: External components associated with this pin. Set required: true on each item that is mandatory for correct operation; omit or set false for optional components (e.g. debug buttons, optional filters).

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Passive Component A passive component used in decoupling, filtering, or required external circuits
3.14.1.12.1. Passive Component

Title: Passive Component

Type object
Required No
Additional properties Any type allowed
Same definition as Passive Component

Description: A passive component used in decoupling, filtering, or required external circuits

3.14.1.13. Property decoupling
Type array
Required No

Description: Decoupling capacitors placed close to this power pin (one instance generated per pin)

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Passive Component A passive component used in decoupling, filtering, or required external circuits
3.14.1.13.1. Passive Component

Title: Passive Component

Type object
Required No
Additional properties Any type allowed
Same definition as Passive Component

Description: A passive component used in decoupling, filtering, or required external circuits

3.14.1.14. Property remark
Type string
Required No

Description: Free-form note about this pin (e.g. must be tied to GND, do not exceed 1.8V, connects to external crystal)

3.15. Property interfaces

Type array
Required No

Description: Communication interfaces exposed by the component

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
Interface A communication interface exposed by the component

3.15.1. Interface

Title: Interface

Type combining
Required No
Additional properties Any type allowed
Defined in defs/interface.schema.json

Description: A communication interface exposed by the component

Property Pattern Type Deprecated Definition Title/Description
+ type No enum (of string) No - Communication protocol type
- instance No integer No - Interface instance number when multiple of the same type exist (e.g. 1 for I2C1, 2 for I2C2)
- speed_min No object No Same as resistance Measured Value
- speed_max No object No Same as resistance Measured Value
- description No string No - -
+ pins No object No - Map of signal role to pin name (e.g. {scl: SCL, sda: SDA}). Role names must match the canonical set for the declared protocol type.
- routing No object No - PCB routing constraints for this interface
All of(Requirement)
item 0
item 1
item 2
item 3
item 4
item 5
item 6
item 7
item 8
item 9
item 10
item 11
item 12
3.15.1.1. Property item 0
Type object
Required No
Additional properties Any type allowed
3.15.1.1.1. If (type = "I2C")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.1.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.2. Property item 1
Type object
Required No
Additional properties Any type allowed
3.15.1.2.1. If (type = "SMBus")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.2.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.3. Property item 2
Type object
Required No
Additional properties Any type allowed
3.15.1.3.1. If (type = "SPI")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.3.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.4. Property item 3
Type object
Required No
Additional properties Any type allowed
3.15.1.4.1. If (type = "UART")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.4.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.5. Property item 4
Type object
Required No
Additional properties Any type allowed
3.15.1.5.1. If (type = "SWD")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.5.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.6. Property item 5
Type object
Required No
Additional properties Any type allowed
3.15.1.6.1. If (type = "JTAG")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.6.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.7. Property item 6
Type object
Required No
Additional properties Any type allowed
3.15.1.7.1. If (type = "USB")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.7.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.8. Property item 7
Type object
Required No
Additional properties Any type allowed
3.15.1.8.1. If (type = "CAN")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.8.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.9. Property item 8
Type object
Required No
Additional properties Any type allowed
3.15.1.9.1. If (type = "I2S")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.9.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.10. Property item 9
Type object
Required No
Additional properties Any type allowed
3.15.1.10.1. If (type = "SAI")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.10.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.11. Property item 10
Type object
Required No
Additional properties Any type allowed
3.15.1.11.1. If (type = "SDIO")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.11.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.12. Property item 11
Type object
Required No
Additional properties Any type allowed
3.15.1.12.1. If (type = "Ethernet")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.12.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.13. Property item 12
Type object
Required No
Additional properties Any type allowed
3.15.1.13.1. If (type = "1-Wire")
Type object
Required No
Additional properties Any type allowed
Property Pattern Type Deprecated Definition Title/Description
- pins No object No - -
3.15.1.13.1.1. Property pins
Type object
Required No
Additional properties Any type allowed
3.15.1.14. Property type
Type enum (of string)
Required Yes

Description: Communication protocol type

Must be one of: * "I2C" * "SPI" * "UART" * "USB" * "CAN" * "Ethernet" * "SDIO" * "I2S" * "SAI" * "ADC" * "DAC" * "JTAG" * "SWD" * "SMBus" * "1-Wire"

3.15.1.15. Property instance
Type integer
Required No

Description: Interface instance number when multiple of the same type exist (e.g. 1 for I2C1, 2 for I2C2)

3.15.1.16. Property speed_min

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Minimum supported interface speed

3.15.1.17. Property speed_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum supported interface speed

3.15.1.18. Property description
Type string
Required No
3.15.1.19. Property pins
Type object
Required Yes
Additional properties Each additional property must conform to the schema

Description: Map of signal role to pin name (e.g. {scl: SCL, sda: SDA}). Role names must match the canonical set for the declared protocol type.

Property Pattern Type Deprecated Definition Title/Description
- No string No - -
3.15.1.19.1. Property additionalProperties
Type string
Required No
3.15.1.20. Property routing
Type object
Required No
Additional properties Any type allowed

Description: PCB routing constraints for this interface

Property Pattern Type Deprecated Definition Title/Description
- differential_impedance No object No Same as resistance Measured Value
- length_mismatch_max No object No Same as resistance Measured Value
3.15.1.20.1. Property differential_impedance

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Required differential trace impedance (e.g. 90 Ω for USB, 100 Ω for LVDS)

3.15.1.20.2. Property length_mismatch_max

Title: Measured Value

Type object
Required No
Additional properties Not allowed
Same definition as resistance

Description: Maximum allowed length mismatch between signals of a differential pair

3.16. Property remark

Type string
Required No

Description: Free-form note about this component (e.g. known errata, special design requirements, recommended alternatives)


Generated using json-schema-for-humans on 2026-03-30 at 10:42:32 +0000