krishnax12/t113-minimal-linux

Allwinner T113-S3 dual-Cortex-A7 SoC with integrated 128MB DDR3, multi-rail decoupling, 24MHz and 32.768kHz oscillators, filtering, and exposed test points.

Version
0.1.1
License
unset
Stars
0

circuits/StorageDebug.tsx

import { TF_01A } from "../imports/TF_01A"
import { TS_1088_AR02016 } from "../imports/TS_1088_AR02016"
import { C, R, Silk, TP, Wire } from "./helpers"

export function StorageDebug() {
  const sd: Record<number, string> = {
    1: "SD_D2",
    2: "SD_D3",
    3: "SD_CMD",
    4: "V3V3",
    5: "SD_CLK",
    6: "GND",
    7: "SD_D0",
    8: "SD_D1",
    9: "SD_CD_N",
    10: "GND",
    11: "GND",
    12: "GND",
    13: "GND",
  }
  return (
    <>
      <TF_01A name="J_SD" pcbX={-12} pcbY={-47} schWidth={3} schHeight={5} />
      {Object.entries(sd).map(([pin, net]) => (
        <Wire key={pin} from={`.J_SD > .pin${pin}`} net={net} />
      ))}
      <R name="R_SD_CLK" value="33" a="SD_CLK_SOC" b="SD_CLK" x={-3} y={-11} />
      {["SD_CMD", "SD_D0", "SD_D1", "SD_D2", "SD_D3", "SD_CD_N"].map(
        (net, i) => (
          <R
            key={net}
            name={`R_SD_PU${i + 1}`}
            value="10k"
            a={net}
            b="V3V3"
            x={-18 + i * 2.5}
            y={-37}
            rotation={90}
          />
        ),
      )}
      <C
        name="C_SD_BULK"
        value="10uF"
        a="V3V3"
        x={-20}
        y={-39.5}
        footprint="0805"
      />
      <C name="C_SD_100N" value="100nF" a="V3V3" x={-17} y={-39.5} />
      <Silk text="microSD  /  BOOT" x={-12} y={-34} size={1.2} />

      <TS_1088_AR02016 name="SW_RESET" pcbX={-7} pcbY={20} />
      <Wire from=".SW_RESET > .pin1" net="RESET_REQUEST_N" />
      <Wire from=".SW_RESET > .pin2" net="GND" />
      <TS_1088_AR02016 name="SW_BOOT" pcbX={3} pcbY={20} />
      <Wire from=".SW_BOOT > .pin1" net="BOOT_BUTTON" />
      <Wire from=".SW_BOOT > .pin2" net="GND" />
      <R name="R_BOOT_LIMIT" value="100" a="PC4" b="BOOT_BUTTON" x={3} y={16} />
      <R name="R_BOOT_SEL0" value="10k" a="PC4" b="V3V3" x={0} y={16} />
      <R name="R_BOOT_SEL1" value="10k" a="PC5" b="V3V3" x={-3} y={16} />
      <R name="R_SPI0_CS" value="10k" a="PC3" b="V3V3" x={-15} y={14} />
      <R name="R_SPI0_WP" value="10k" a="PC6" b="V3V3" x={-15} y={17} />
      <R name="R_SPI0_HOLD" value="10k" a="PC7" b="V3V3" x={-15} y={20} />
      <Silk text="RESET" x={-7} y={24} />
      <Silk text="BOOT SELECT" x={3} y={24} />
      <Silk text="RECOVERY: REMOVE SD + RESET" x={1} y={27} size={0.8} />

      <group
        name="uart_connector"
        pcbPack
        pcbPackGap="1mm"
        pcbX={20}
        pcbY={-26}
        width={18}
        height={14}
        schMatchAdapt
      >
        <pinheader
          name="J_UART"
          manufacturerPartNumber="TSW-103-07-G-S"
          pinCount={3}
          pitch="2.54mm"
          gender="male"
          pinLabels={{ pin1: "GND", pin2: "TX", pin3: "RX" }}
          connections={{
            pin1: "net.GND",
            pin2: "net.UART_HEADER_TX",
            pin3: "net.UART_HEADER_RX",
          }}
        />
        <resistor
          name="R_UART_TX"
          resistance="1k"
          footprint="0603"
          connections={{ pin1: "net.UART0_TX", pin2: "net.UART_HEADER_TX" }}
        />
        <resistor
          name="R_UART_RX"
          resistance="1k"
          footprint="0603"
          connections={{ pin1: "net.UART_HEADER_RX", pin2: "net.UART0_RX" }}
        />
      </group>
      <Silk text="UART0: GND TX RX" x={20} y={-36} size={0.8} />

      <TP name="TP_SD_CLK" net="SD_CLK" x={-6} y={-13} />
      <TP name="TP_SD_GND" net="GND" x={-10} y={-13} />
    </>
  )
}