Pin Function
Title: Pin Function
| Type | object |
| Required | No |
| Additional properties | Any type allowed |
Description: Primary logical function of a 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 |
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"
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. Property port
| Type | string |
| Required | No |
Description: GPIO port identifier (e.g. A, B, C for STM32)
4. Property bit
| Type | integer |
| Required | No |
Description: Bit number within the GPIO port
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 |
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) |
5.1.1. Property connect_to
| Type | string |
| Required | Yes |
Description: Net name to connect the address pin to (e.g. GND, VCC, SDA)
5.1.2. Property i2c_address
| Type | string |
| Required | Yes |
Description: Resulting 7-bit I2C address in hex (e.g. 0x48)
Generated using json-schema-for-humans on 2026-03-30 at 10:42:33 +0000