{
  "metadata": {
    "id": "raspberry-pi-5",
    "name": "Raspberry Pi 5",
    "type": "MCU-Board",
    "description": "Raspberry Pi 5, Raspberry Pi Foundation",
    "manufacturer": "Raspberry Pi Foundation",
    "part_number": "Raspberry Pi 5",
    "datasheet_url": "https://www.raspberrypi.com/documentation/computers/raspberry-pi.html",
    "tags": [
      "mcu-board",
      "mcu",
      "raspberry-pi",
      "raspberry-pi-5",
      "pcm",
      "i2c",
      "spi",
      "uart"
    ],
    "schema_version": "1.4.0",
    "version": "0.1.0",
    "taxonomy": [
      "microcontroller.raspberry_pi"
    ]
  },
  "domains": [
    {
      "domain": "electrical",
      "power_domains": [
        {
          "id": "usb-c-5v",
          "name": "USB-C 5V",
          "nominal_voltage_V": 5,
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "USB-C 5V supply"
        },
        {
          "id": "5v_regulator",
          "name": "pin_2",
          "nominal_voltage_V": 5,
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "5V Regulator pin"
        },
        {
          "id": "5v_regulator_2",
          "name": "pin_4",
          "nominal_voltage_V": 5,
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "5V Regulator 2 pin"
        },
        {
          "id": "3v3_regulator",
          "name": "pin_1",
          "description": "3.3V Regulator pin",
          "nominal_voltage_V": 3.3,
          "isolation_type": "non_isolated",
          "ground_reference": "common"
        },
        {
          "id": "3v3_regulator_2",
          "name": "pin_17",
          "nominal_voltage_V": 3.3,
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "3.3V Regulator 2 pin"
        }
      ],
      "resources": [
        {
          "id": "usb-c-5v",
          "name": "USB-C 5V",
          "description": "USB-C 5V supply",
          "functions": [
            {
              "name": "USB-C 5V"
            }
          ]
        },
        {
          "id": "5v_regulator",
          "name": "pin_2",
          "description": "5V Regulator pin",
          "functions": [
            {
              "name": "5V Regulator"
            }
          ]
        },
        {
          "id": "5v_regulator_2",
          "name": "pin_4",
          "description": "5V Regulator 2 pin",
          "functions": [
            {
              "name": "5V Regulator"
            }
          ]
        },
        {
          "id": "3v3_regulator",
          "name": "pin_1",
          "description": "3.3V Regulator pin",
          "functions": [
            {
              "name": "3v3 Regulator"
            }
          ]
        },
        {
          "id": "3v3_regulator_2",
          "name": "pin_17",
          "description": "3.3V Regulator 2 pin",
          "functions": [
            {
              "name": "3v3 Regulator"
            }
          ]
        },
        {
          "id": "pin_3",
          "name": "pin_3",
          "description": "GPIO 2 and SDA pin for I2C",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "SDA"
            }
          ]
        },
        {
          "id": "pin_5",
          "name": "pin_5",
          "description": "GPIO 3 and SCL pin for I2C",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "SCL"
            }
          ]
        },
        {
          "id": "external_ground_1",
          "name": "pin_6",
          "description": "Ground Reference pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_7",
          "name": "pin_7",
          "description": "GPIO 4 pin",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_8",
          "name": "pin_8",
          "description": "GPIO 14 pin and UART TXD Pin",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "TXD"
            }
          ]
        },
        {
          "id": "external_ground_2",
          "name": "pin_9",
          "description": "Ground Reference 2 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_10",
          "name": "pin_10",
          "description": "GPIO 15 pin and UART RXD Pin",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "RXD"
            }
          ]
        },
        {
          "id": "pin_11",
          "name": "pin_11",
          "description": "GPIO 17",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_12",
          "name": "pin_12",
          "description": "GPIO 18 and CLK pin for PCM",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "CLK"
            }
          ]
        },
        {
          "id": "pin_13",
          "name": "pin_13",
          "description": "GPIO 27",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "external_ground_3",
          "name": "pin_14",
          "description": "Ground Reference 3 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_15",
          "name": "pin_15",
          "description": "GPIO 22",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_16",
          "name": "pin_16",
          "description": "GPIO 23",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_18",
          "name": "pin_18",
          "description": "GPIO 24",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_19",
          "name": "pin_19",
          "description": "GPIO 10 and MOSI pin for SPI",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "MOSI"
            }
          ]
        },
        {
          "id": "external_ground_4",
          "name": "pin_20",
          "description": "Ground Reference 4 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_21",
          "name": "pin_21",
          "description": "GPIO 9 and MISO pin for SPI",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "MISO"
            }
          ]
        },
        {
          "id": "pin_22",
          "name": "pin_22",
          "description": "GPIO 25",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_23",
          "name": "pin_23",
          "description": "GPIO 11 and SCLK pin for SPI",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "SCLK"
            }
          ]
        },
        {
          "id": "pin_24",
          "name": "pin_24",
          "description": "GPIO 8 and CE0 pin for SPI",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "CE0"
            }
          ]
        },
        {
          "id": "external_ground_5",
          "name": "pin_25",
          "description": "Ground Reference 5 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_26",
          "name": "pin_26",
          "description": "GPIO 7 and CE1 pin for SPI",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "CE1"
            }
          ]
        },
        {
          "id": "pin_27",
          "name": "pin_27",
          "description": "ID SD for Pi HATs",
          "functions": [
            {
              "name": "ID SD"
            }
          ]
        },
        {
          "id": "pin_28",
          "name": "pin_28",
          "description": "ID SC for Pi HATs",
          "functions": [
            {
              "name": "ID SC"
            }
          ]
        },
        {
          "id": "pin_29",
          "name": "pin_29",
          "description": "GPIO 5",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "external_ground_6",
          "name": "pin_30",
          "description": "Ground Reference 6 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_31",
          "name": "pin_31",
          "description": "GPIO 6",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_32",
          "name": "pin_32",
          "description": "GPIO 12",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_33",
          "name": "pin_33",
          "description": "GPIO 13",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "external_ground_7",
          "name": "pin_34",
          "description": "Ground Reference 7 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_35",
          "name": "pin_35",
          "description": "GPIO 19 and FS pin for PCM",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "FS"
            }
          ]
        },
        {
          "id": "pin_36",
          "name": "pin_36",
          "description": "GPIO 16",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_37",
          "name": "pin_37",
          "description": "GPIO 26",
          "functions": [
            {
              "name": "GPIO"
            }
          ]
        },
        {
          "id": "pin_38",
          "name": "pin_38",
          "description": "GPIO 20 and DIN pin for PCM",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "DIN"
            }
          ]
        },
        {
          "id": "external_ground_8",
          "name": "pin_39",
          "description": "Ground Reference 8 pin",
          "functions": [
            {
              "name": "EXT Ground",
              "signal_class": "ground"
            }
          ]
        },
        {
          "id": "pin_40",
          "name": "pin_40",
          "description": "GPIO 21 and DOUT pin for PCM",
          "functions": [
            {
              "name": "GPIO"
            },
            {
              "name": "DOUT"
            }
          ]
        },
        {
          "id": "camera_1",
          "name": "Camera 1",
          "description": "camera 1 connector",
          "functions": [
            {
              "name": "Camera"
            }
          ]
        },
        {
          "id": "camera_2",
          "name": "Camera 2",
          "description": "Camera 2 connector",
          "functions": [
            {
              "name": "Camera"
            }
          ]
        },
        {
          "id": "pcie",
          "name": "PCIE",
          "description": "PCIe connector",
          "functions": [
            {
              "name": "PCIe"
            }
          ]
        },
        {
          "id": "ethernet",
          "name": "Ethernet",
          "description": "Ethernet connector",
          "functions": [
            {
              "name": "Ethernet"
            }
          ]
        },
        {
          "id": "usb3.0",
          "name": "USB 3.0",
          "description": "USB 3.0",
          "functions": [
            {
              "name": "USB 3.0"
            }
          ]
        },
        {
          "id": "usb3.2",
          "name": "USB 3.2",
          "description": "USB 3.2",
          "functions": [
            {
              "name": "USB 3.2"
            }
          ]
        },
        {
          "id": "usb2.0-1",
          "name": "USB 2.0 (1)",
          "description": "(1) USB 2.0",
          "functions": [
            {
              "name": "USB 2.0"
            }
          ]
        },
        {
          "id": "usb2.0-2",
          "name": "USB 2.0 (2)",
          "description": "(2) USB 2.0",
          "functions": [
            {
              "name": "USB 2.0"
            }
          ]
        }
      ],
      "interfaces": [
        {
          "id": "5v_regulator",
          "name": "5V Regulator",
          "description": "5V Regulator pin",
          "type": "power",
          "role": "master",
          "requires": [
            {
              "function": "5V Regulator",
              "count": 1
            },
            {
              "function": "EXT Ground",
              "count": 1
            }
          ]
        },
        {
          "id": "3v3_regulator",
          "name": "3.3V Regulator",
          "description": "3.3V Regulator pin",
          "type": "power",
          "role": "master",
          "requires": [
            {
              "function": "3v3 Regulator",
              "count": 1
            },
            {
              "function": "EXT Ground",
              "count": 1
            }
          ]
        },
        {
          "id": "external_ground",
          "name": "EXT Ground",
          "description": "available ground pins surrounding the GPIO pins",
          "protocol": {
            "type": "ground",
            "role": "ground"
          },
          "requires": [
            {
              "function": "EXT Ground",
              "count": 1
            }
          ]
        },
        {
          "id": "gpio",
          "name": "GPIO",
          "description": "General Input/Output pins",
          "protocol": {
            "type": "gpio",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "GPIO",
              "count": 1
            }
          ]
        },
        {
          "id": "uart",
          "name": "UART",
          "description": "UART TXD and RXD Pins",
          "protocol": {
            "type": "UART",
            "role": "master"
          },
          "requires": [
            {
              "function": "TXD",
              "count": 1
            },
            {
              "function": "RXD",
              "count": 1
            }
          ]
        },
        {
          "id": "camera",
          "name": "Camera",
          "description": "Camera port",
          "protocol": {
            "type": "camera",
            "role": "master"
          },
          "requires": [
            {
              "function": "Camera",
              "count": 1
            }
          ]
        },
        {
          "id": "pcie",
          "name": "PCIe",
          "description": "PCIe port",
          "protocol": {
            "type": "pcie",
            "role": "master"
          },
          "requires": [
            {
              "function": "PCIe",
              "count": 1
            }
          ]
        },
        {
          "id": "ethernet",
          "name": "Ethernet",
          "description": "Ethernet port",
          "protocol": {
            "type": "ethernet",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "Ethernet",
              "count": 1
            }
          ]
        },
        {
          "id": "usb3.0",
          "name": "USB 3.0",
          "description": "USB 3.0 port",
          "protocol": {
            "type": "usb",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "USB 3.0",
              "count": 1
            }
          ]
        },
        {
          "id": "usb3.2",
          "name": "USB 3.2",
          "description": "USB 3.2 data port",
          "protocol": {
            "type": "usb",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "USB 3.2",
              "count": 1
            }
          ]
        },
        {
          "id": "usb2.0",
          "name": "USB 2.0",
          "description": "USB 2.0 port",
          "protocol": {
            "type": "usb",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "USB 2.0",
              "count": 1
            }
          ]
        },
        {
          "id": "i2c",
          "name": "I2C",
          "description": "I2C bus",
          "protocol": {
            "type": "i2c",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "SDA",
              "count": 1
            },
            {
              "function": "SCL",
              "count": 1
            }
          ]
        },
        {
          "id": "spi",
          "name": "SPI",
          "description": "SPI bus",
          "protocol": {
            "type": "spi",
            "role": "master"
          },
          "requires": [
            {
              "function": "MOSI",
              "count": 1
            },
            {
              "function": "MISO",
              "count": 1
            },
            {
              "function": "SCLK",
              "count": 1
            },
            {
              "function": "CE0",
              "count": 1
            },
            {
              "function": "CE1",
              "count": 1
            }
          ]
        },
        {
          "id": "pcm",
          "name": "PCM",
          "description": "PCM bus",
          "protocol": {
            "type": "pcm",
            "role": [
              "master",
              "slave"
            ]
          },
          "requires": [
            {
              "function": "CLK",
              "count": 1
            },
            {
              "function": "FS",
              "count": 1
            },
            {
              "function": "DIN",
              "count": 1
            },
            {
              "function": "DOUT",
              "count": 1
            }
          ]
        },
        {
          "id": "pi_hat_interface",
          "name": "Pi Hat Interface",
          "description": "EEPROM interface pin and CLK pin for external boards (Pi HATs)",
          "protocol": {
            "type": "pi hat",
            "role": "Master"
          },
          "requires": [
            {
              "function": "ID SD",
              "count": 1
            },
            {
              "function": "ID SC",
              "count": 1
            }
          ]
        }
      ]
    }
  ]
}