selenaalpha77-sketch/arduino-nano

This code defines the physical hardware layout of an Arduino Nano-compatible board, incorporating key components such as the ATmega328P microcontroller, CH340C USB-to-serial converter, AMS1117 voltage regulators, and USB connector with their associated footprints and pin configurations.

Version
1.0.0
License
unset
Stars
0

lib/NanoUsbSection.tsx

import { CH340C } from "../imports/CH340C"
import { AMS1117_3_3 } from "../imports/AMS1117_3_3"

export const NanoUsbSection = () => (
  <group name="usb_section">
    {/* Mini-USB connector */}
    <chip
      name="USB1"
      manufacturerPartNumber="USB_MINI_B"
      supplierPartNumbers={{ jlcpcb: ["C46398"] }}
      schX={-20}
      schY={0}
      pcbX="-18mm"
      pcbY="0mm"
      footprint="usb_mini_b"
      connections={{
        VBUS: "net.USB_VBUS",
        D_NEG: "net.USB_D_NEG",
        D_POS: "net.USB_D_POS",
        GND: "net.GND",
        ID: "net.GND",
      }}
    />

    {/* CH340C USB-to-Serial converter */}
    <CH340C
      name="U2"
      pcbX="-8mm"
      pcbY="6mm"
      schX={-10}
      schY={0}
      connections={{
        GND: "net.GND",
        VCC: "net.V5",
        V3: "net.V3_3",
        UD_POS: "net.USB_D_POS",
        UD_NEG: "net.USB_D_NEG",
        TXD: "net.USB_TX",
        RXD: "net.USB_RX",
        DTR: "net.USB_DTR",
        RTS: "net.USB_RTS",
      }}
    />

    {/* CH340C decoupling capacitor */}
    <capacitor
      name="C7"
      capacitance="100nF"
      footprint="0402"
      pcbX="-12mm"
      pcbY="6mm"
      schX={-16}
      schY={-4}
      connections={{
        pin1: "net.V5",
        pin2: "net.GND",
      }}
    />

    {/* USB VBUS decoupling */}
    <capacitor
      name="C8"
      capacitance="100nF"
      footprint="0402"
      pcbX="-16mm"
      pcbY="4mm"
      schX={-20}
      schY={-4}
      connections={{
        pin1: "net.USB_VBUS",
        pin2: "net.GND",
      }}
    />

    {/* TX/RX series resistors */}
    <resistor
      name="R3"
      resistance="1k"
      footprint="0402"
      pcbX="-4mm"
      pcbY="6mm"
      schX={-4}
      schY={-2}
      connections={{
        pin1: "net.USB_TX",
        pin2: "net.D0",
      }}
    />
    <resistor
      name="R4"
      resistance="1k"
      footprint="0402"
      pcbX="-4mm"
      pcbY="4mm"
      schX={-4}
      schY={2}
      connections={{
        pin1: "net.USB_RX",
        pin2: "net.D1",
      }}
    />

    {/* TX LED */}
    <resistor
      name="R5"
      resistance="1k"
      footprint="0402"
      pcbX="-14mm"
      pcbY="-4mm"
      schX={-18}
      schY={-8}
      connections={{
        pin1: "net.V5",
        pin2: "net.TX_LED_A",
      }}
    />
    <led
      name="LED_TX"
      color="yellow"
      footprint="0603"
      pcbX="-12mm"
      pcbY="-4mm"
      schX={-14}
      schY={-8}
      connections={{
        anode: "net.TX_LED_A",
        cathode: "net.USB_TX",
      }}
    />

    {/* RX LED */}
    <resistor
      name="R6"
      resistance="1k"
      footprint="0402"
      pcbX="-14mm"
      pcbY="-6mm"
      schX={-18}
      schY={-12}
      connections={{
        pin1: "net.V5",
        pin2: "net.RX_LED_A",
      }}
    />
    <led
      name="LED_RX"
      color="yellow"
      footprint="0603"
      pcbX="-12mm"
      pcbY="-6mm"
      schX={-14}
      schY={-12}
      connections={{
        anode: "net.RX_LED_A",
        cathode: "net.USB_RX",
      }}
    />

    {/* AMS1117-3.3 voltage regulator (5V -> 3.3V) */}
    <AMS1117_3_3
      name="U3"
      pcbX="-6mm"
      pcbY="-6mm"
      schX={-6}
      schY={-20}
      connections={{
        VIN: "net.V5",
        VOUT1: "net.V3_3",
        VOUT2: "net.V3_3",
        GND: "net.GND",
      }}
    />
    <capacitor
      name="C9"
      capacitance="10uF"
      footprint="0603"
      pcbX="-9mm"
      pcbY="-6mm"
      schX={-12}
      schY={-20}
      connections={{
        pin1: "net.V5",
        pin2: "net.GND",
      }}
    />
    <capacitor
      name="C10"
      capacitance="10uF"
      footprint="0603"
      pcbX="-3mm"
      pcbY="-6mm"
      schX={0}
      schY={-20}
      connections={{
        pin1: "net.V3_3",
        pin2: "net.GND",
      }}
    />

    {/* Power LED */}
    <resistor
      name="R7"
      resistance="1k"
      footprint="0402"
      pcbX="-16mm"
      pcbY="-4mm"
      schX={-22}
      schY={-8}
      connections={{
        pin1: "net.V5",
        pin2: "net.PWR_LED",
      }}
    />
    <led
      name="LED_PWR"
      color="green"
      footprint="0603"
      pcbX="-16mm"
      pcbY="-6mm"
      schX={-22}
      schY={-12}
      connections={{
        anode: "net.PWR_LED",
        cathode: "net.GND",
      }}
    />
  </group>
)