AnasSarkiz/ESP32_D0WD

This circuit features an ESP32-D0WD microcontroller in a QFP49 package, with pins connected to power, ground, sensors, GPIOs, and integrated oscillators to enable Wi-Fi, Bluetooth, and sensor interfacing.

Usage: To import and use the ESP32_D0WD component in a project: 1. Import the component: ```tsx import { ESP32_D0WD } from "@tsci/AnasSarkiz.ESP32_D0WD" ``` 2. Use the component in a board layout: ```tsx <board> <ESP32_D0WD name="U1" /> </board> ``` The component includes 49 pins with specific labels, and can be positioned and connected using tscircuit's trace and selection features. Key configuration options include: - `name`: Unique identifier for the component - Supports standard tscircuit chip properties and positioning

Version
0.0.1
License
unset
Stars
1

index.ts

PCBPCB preview for index.ts
SchematicSchematic preview for index.ts
import { createUseComponent } from "@tscircuit/core"

const pinLabels = {
  pin1: ["VDDA"],
  pin2: ["LNA_IN"],
  pin3: ["VDD3P3"],
  pin4: ["VDD3P3"],
  pin5: ["SENSOR_VP"],
  pin6: ["SENSOR_CAPP"],
  pin7: ["SENSOR_CAPN"],
  pin8: ["SENSOR_VN"],
  pin9: ["CHIP_PU"],
  pin10: ["VDET_1"],
  pin11: ["VDET_2"],
  pin12: ["32K_XP"],
  pin13: ["32K_XN"],
  pin14: ["GPIO25"],
  pin15: ["GPIO26"],
  pin16: ["GPIO27"],
  pin17: ["MTMS"],
  pin18: ["MTDI"],
  pin19: ["VDD3P3_RTC"],
  pin20: ["MTCK"],
  pin21: ["MTDO"],
  pin22: ["GPIO2"],
  pin23: ["GPIO0"],
  pin24: ["GPIO4"],
  pin25: ["GPIO16"],
  pin26: ["VDD_SDIO"],
  pin27: ["GPIO17"],
  pin28: ["SD_DATA_2"],
  pin29: ["SD_DATA_3"],
  pin30: ["SD_CMD"],
  pin31: ["SD_CLK"],
  pin32: ["SD_DATA_0"],
  pin33: ["SD_DATA_1"],
  pin34: ["GPIO5"],
  pin35: ["GPIO18"],
  pin36: ["GPIO23"],
  pin37: ["VDD3P3_CPU"],
  pin38: ["GPIO19"],
  pin39: ["GPIO22"],
  pin40: ["U0RXD"],
  pin41: ["U0TXD"],
  pin42: ["GPIO21"],
  pin43: ["VDDA"],
  pin44: ["XTAL_N"],
  pin45: ["XTAL_P"],
  pin46: ["VDDA"],
  pin47: ["CAP1"],
  pin48: ["CAP2"],
  pin49: ["GND"],
} as const

export const ESP32_D0WD = (props: { name: string }) => (
  <chip
    {...props}
    pinLabels={pinLabels}
    schHeight={6}
    schWidth={6}
    manufacturerPartNumber="ESP32-D0WD"
    schPortArrangement={{
      leftSide: {
        pins: [
          "pin14",
          "pin13",
          "pin12",
          "pin11",
          "pin10",
          "pin9",
          "pin8",
          "pin7",
          "pin6",
          "pin5",
          "pin4",
          "pin3",
          "pin2",
          "pin1",
        ],
        direction: "right-to-left",
      },
      bottomSide: {
        pins: [
          "pin24",
          "pin23",
          "pin22",
          "pin21",
          "pin20",
          "pin19",
          "pin18",
          "pin17",
          "pin16",
          "pin15",
        ],
        direction: "top-to-bottom",
      },
      rightSide: {
        pins: [
          "pin38",
          "pin37",
          "pin36",
          "pin35",
          "pin34",
          "pin33",
          "pin32",
          "pin31",
          "pin30",
          "pin29",
          "pin28",
          "pin27",
          "pin26",
          "pin25",
        ],
        direction: "left-to-right",
      },
      topSide: {
        pins: [
          "pin49",
          "pin48",
          "pin47",
          "pin46",
          "pin45",
          "pin44",
          "pin43",
          "pin42",
          "pin41",
          "pin40",
          "pin39",
        ],
        direction: "bottom-to-top",
      },
    }}
    schPinStyle={{
      pin49: {
        rightMargin: 2,
      },
    }}
    schPinSpacing={0.3}
    footprint="qfp49"
  />
)

export const useESP32_D0WD = createUseComponent(ESP32_D0WD, pinLabels)