{
  "metadata": {
    "id": "adafruit-ens160-breakout",
    "name": "Adafruit ENS160 MOX Gas Sensor Breakout",
    "type": "sensor",
    "description": "ScioSense ENS160 MOX multi-gas sensor on STEMMA QT/Qwiic breakout. 3–5 V input with 3.3 V regulator and level shifting. I2C default 0x53, alt 0x52; SPI pads present.",
    "manufacturer": "Adafruit",
    "part_number": "5606",
    "datasheet_url": "https://www.sciosense.com/wp-content/uploads/2023/12/ENS160-Datasheet.pdf",
    "tags": [
      "ens160",
      "mox",
      "gas",
      "tvoc",
      "eco2",
      "aqi",
      "i2c",
      "spi",
      "stemmaqt",
      "qwiic",
      "0x53",
      "0x52"
    ],
    "schema_version": "1.4.0",
    "version": "1.1.0",
    "taxonomy": [
      "sensor.gas",
      "expansion.breakout"
    ]
  },
  "domains": [
    {
      "domain": "electrical",
      "power_domains": [
        {
          "id": "vin_3to5",
          "name": "VIN (3–5 V)",
          "nominal_voltage_V": 3.3,
          "voltage_range_V": [
            3,
            5
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Board input to onboard 3.3 V regulator with I2C level shifting"
        },
        {
          "id": "vdd_3v3_out",
          "name": "3Vo output",
          "nominal_voltage_V": 3.3,
          "voltage_range_V": [
            3.2,
            3.4
          ],
          "isolation_type": "non_isolated",
          "ground_reference": "common",
          "description": "Regulated 3.3 V output (light loads)"
        }
      ],
      "resources": [
        {
          "id": "vin",
          "name": "VIN",
          "functions": [
            {
              "name": "power_in",
              "signal_class": "power"
            }
          ],
          "connector_type": "pin_header",
          "power_domain_id": "vin_3to5"
        },
        {
          "id": "gnd",
          "name": "GND",
          "functions": [
            {
              "name": "ground",
              "signal_class": "ground"
            }
          ],
          "connector_type": "pin_header",
          "power_domain_id": "vin_3to5"
        },
        {
          "id": "vout3v3",
          "name": "3Vo",
          "functions": [
            {
              "name": "power_out",
              "signal_class": "power"
            }
          ],
          "connector_type": "pin_header",
          "power_domain_id": "vdd_3v3_out"
        },
        {
          "id": "i2c_sda",
          "name": "SDA/SDI",
          "functions": [
            {
              "name": "i2c_sda",
              "signal_class": "data"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "i2c_scl",
          "name": "SCL/SCK",
          "functions": [
            {
              "name": "i2c_scl",
              "signal_class": "clock"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "spi_sck",
          "name": "SCK",
          "functions": [
            {
              "name": "spi_sck",
              "signal_class": "clock"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "spi_cipo",
          "name": "SDO",
          "functions": [
            {
              "name": "spi_cipo",
              "signal_class": "data"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "spi_copi",
          "name": "SDI",
          "functions": [
            {
              "name": "spi_copi",
              "signal_class": "data"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "spi_cs",
          "name": "CS",
          "functions": [
            {
              "name": "spi_cs",
              "signal_class": "data"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "int",
          "name": "INT",
          "functions": [
            {
              "name": "interrupt",
              "signal_class": "data"
            }
          ],
          "connector_type": "pin_header"
        },
        {
          "id": "stemmaqta",
          "name": "STEMMA QT A",
          "functions": [
            {
              "name": "i2c_sda",
              "signal_class": "data",
              "shareable_with": [
                "i2c_scl"
              ]
            },
            {
              "name": "i2c_scl",
              "signal_class": "clock",
              "shareable_with": [
                "i2c_sda"
              ]
            },
            {
              "name": "power_in",
              "signal_class": "power"
            },
            {
              "name": "ground",
              "signal_class": "ground"
            }
          ],
          "connector_type": "jst-sh",
          "power_domain_id": "vin_3to5",
          "description": "JST-SH 4-pin I2C"
        },
        {
          "id": "stemmaqtb",
          "name": "STEMMA QT B",
          "functions": [
            {
              "name": "i2c_sda",
              "signal_class": "data",
              "shareable_with": [
                "i2c_scl"
              ]
            },
            {
              "name": "i2c_scl",
              "signal_class": "clock",
              "shareable_with": [
                "i2c_sda"
              ]
            },
            {
              "name": "power_in",
              "signal_class": "power"
            },
            {
              "name": "ground",
              "signal_class": "ground"
            }
          ],
          "connector_type": "jst-sh",
          "power_domain_id": "vin_3to5",
          "description": "JST-SH 4-pin I2C (pass-through)"
        }
      ],
      "interfaces": [
        {
          "id": "i2c_target",
          "name": "I2C target",
          "protocol": {
            "type": "i2c",
            "role": "target"
          },
          "requires": [
            {
              "function": "i2c_sda",
              "count": 1,
              "shareable_with": [
                "i2c_scl"
              ]
            },
            {
              "function": "i2c_scl",
              "count": 1,
              "shareable_with": [
                "i2c_sda"
              ]
            }
          ],
          "timing": {
            "max_i2c_freq_hz": 400000
          },
          "description": "7-bit address 0x53 default; 0x52 via ADDR/SDO low. Pull-ups on board."
        },
        {
          "id": "spi_target",
          "name": "SPI target",
          "protocol": {
            "type": "spi",
            "role": "target"
          },
          "requires": [
            {
              "function": "spi_sck",
              "count": 1
            },
            {
              "function": "spi_copi",
              "count": 1
            },
            {
              "function": "spi_cipo",
              "count": 1
            },
            {
              "function": "spi_cs",
              "count": 1
            }
          ],
          "timing": {
            "max_spi_freq_hz": 10000000
          },
          "description": "SPI pads exposed; some libraries are I2C-only."
        }
      ],
      "supply_voltage_V": [
        3,
        5
      ],
      "metadata": {
        "i2c_addresses_7bit": [
          "0x53",
          "0x52"
        ],
        "i2c_pullups_present": true
      }
    },
    {
      "domain": "mechanical",
      "package_type": "PCB Module",
      "dimensions_mm": {
        "length": 25.4,
        "width": 17.6,
        "height": 4.5
      },
      "resources": [],
      "interfaces": []
    }
  ],
  "design_rules": [
    "Warm-up before use; expect <3 min to stable readings and 24 h continuous operation for baseline retention.",
    "If two I2C devices share an address on the same bus, change this board’s ADDR to avoid conflicts.",
    "Do not exceed light-load use of 3Vo; treat as regulated output, not an input.",
    "Adafruit libraries target I2C; SPI requires custom driver."
  ],
  "warnings": [
    "Not for safety-critical or life-protecting applications.",
    "Avoid condensing humidity and solvent exposure at the sensing area."
  ]
}