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

dist/index.cjs

'use strict';

var jsxRuntime = require('react/jsx-runtime');

const pinLabels$4 = {
    pin1: ["pin1"],
    pin2: ["pin2"],
    pin3: ["GND3"],
    pin4: ["VCC2"],
    pin5: ["GND2"],
    pin6: ["VCC1"],
    pin7: ["pin7"],
    pin8: ["pin8"],
    pin9: ["pin9"],
    pin10: ["pin10"],
    pin11: ["pin11"],
    pin12: ["pin12"],
    pin13: ["pin13"],
    pin14: ["pin14"],
    pin15: ["pin15"],
    pin16: ["pin16"],
    pin17: ["pin17"],
    pin18: ["AVCC"],
    pin19: ["ADC6"],
    pin20: ["AREF"],
    pin21: ["GND1"],
    pin22: ["ADC7"],
    pin23: ["pin23"],
    pin24: ["pin24"],
    pin25: ["pin25"],
    pin26: ["pin26"],
    pin27: ["pin27"],
    pin28: ["pin28"],
    pin29: ["pin29"],
    pin30: ["pin30"],
    pin31: ["pin31"],
    pin32: ["pin32"],
};
const ATMEGA328P_AU = (props) => {
    return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$4, supplierPartNumbers: {
            jlcpcb: ["C14877"],
        }, manufacturerPartNumber: "ATMEGA328P_AU", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin32"], pcbX: "-4.381500000000003mm", pcbY: "-2.7999943999999886mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin31"], pcbX: "-4.381500000000003mm", pcbY: "-1.9999959999999817mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin30"], pcbX: "-4.381500000000003mm", pcbY: "-1.1999976000000032mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin29"], pcbX: "-4.381500000000003mm", pcbY: "-0.3999991999999821mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin28"], pcbX: "-4.381500000000003mm", pcbY: "0.39999920000002476mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin27"], pcbX: "-4.381500000000003mm", pcbY: "1.1999976000000032mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin26"], pcbX: "-4.381500000000003mm", pcbY: "1.99999600000001mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin25"], pcbX: "-4.381500000000003mm", pcbY: "2.7999944000000028mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin24"], pcbX: "-2.7999943999999886mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin23"], pcbX: "-1.9999959999999959mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin22"], pcbX: "-1.1999976000000032mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin21"], pcbX: "-0.3999991999999821mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin20"], pcbX: "0.39999919999999634mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin19"], pcbX: "1.1999976000000032mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin18"], pcbX: "1.99999600000001mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin17"], pcbX: "2.7999944000000028mm", pcbY: "4.368800000000007mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin16"], pcbX: "4.381500000000003mm", pcbY: "2.7999944000000028mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin15"], pcbX: "4.381500000000003mm", pcbY: "1.99999600000001mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin14"], pcbX: "4.381500000000003mm", pcbY: "1.1999976000000032mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin13"], pcbX: "4.381500000000003mm", pcbY: "0.39999920000002476mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin12"], pcbX: "4.381500000000003mm", pcbY: "-0.3999991999999821mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin11"], pcbX: "4.381500000000003mm", pcbY: "-1.1999976000000032mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin10"], pcbX: "4.381500000000003mm", pcbY: "-1.9999959999999817mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin9"], pcbX: "4.381500000000003mm", pcbY: "-2.7999943999999886mm", width: "1.6500093999999998mm", height: "0.45001179999999996mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin8"], pcbX: "2.7999944000000028mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin7"], pcbX: "1.99999600000001mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin6"], pcbX: "1.1999976000000032mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin5"], pcbX: "0.39999919999999634mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.3999991999999821mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "-1.1999976000000032mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "-1.9999959999999959mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-2.7999943999999886mm", pcbY: "-4.368799999999993mm", width: "0.45001179999999996mm", height: "1.6500093999999998mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.967482000000004, y: -4.825999999999993 },
                        { x: -2.819400000000016, y: -4.9740820107053025 },
                        { x: -2.6713180000000136, y: -4.825999999999993 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.6713180000000136, y: -4.825999999999993 },
                        { x: -2.819400000000016, y: -4.677917989294684 },
                        { x: -2.967482000000004, y: -4.825999999999993 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.9626559999999813, y: 2.9499560000000145 },
                        { x: -2.9626559999999813, y: -2.949955999999986 },
                        { x: 2.937256000000019, y: -2.949955999999986 },
                        { x: 2.937256000000019, y: 2.9499560000000145 },
                        { x: -2.9626559999999813, y: 2.9499560000000145 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -3.7591999999999928, y: -4.063999999999993 },
                        { x: -3.907941055997668, y: -3.9133579702960617 },
                        { x: -3.7579300000000018, y: -3.763980575985258 },
                        { x: -3.6079189440023356, y: -3.9133579702960617 },
                        { x: -3.7566599999999966, y: -4.063999999999993 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.2123399999999975, y: -1.998980000000003 },
                        { x: -2.4015150142161303, y: -1.86006255080585 },
                        { x: -2.3284212288967012, y: -1.6370321891015465 },
                        { x: -2.0937187711032834, y: -1.6370321891015465 },
                        { x: -2.0206249857838543, y: -1.86006255080585 },
                        { x: -2.209799999999987, y: -1.998980000000003 },
                    ] }), jsxRuntime.jsx("courtyardoutline", { outline: [
                        { x: -5.228400000000008, y: 5.215700000000012 },
                        { x: 5.2283999999999935, y: 5.215700000000012 },
                        { x: 5.2283999999999935, y: -5.215699999999998 },
                        { x: -5.228400000000008, y: -5.215699999999998 },
                        { x: -5.228400000000008, y: 5.215700000000012 },
                    ] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C14877.obj?uuid=4d9f6c3430024506b87ce44b53201fc5",
            // stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C14877.step?uuid=4d9f6c3430024506b87ce44b53201fc5",
            pcbRotationOffset: 90,
            modelOriginPosition: { x: 0, y: 0, z: 0.000917 },
        }, ...props }));
};

const pinLabels$3 = {
    pin1: ["OSC1"],
    pin2: ["GND1"],
    pin3: ["OSC2"],
    pin4: ["GND2"],
};
const X322516MLB4SI = (props) => {
    return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$3, supplierPartNumbers: {
            jlcpcb: ["C13738"],
        }, manufacturerPartNumber: "X322516MLB4SI", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-1.1000739999999496mm", pcbY: "-0.8750299999999243mm", width: "1.3999972mm", height: "1.1999975999999999mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "1.1000739999999496mm", pcbY: "-0.8750299999999243mm", width: "1.3999972mm", height: "1.1999975999999999mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "1.1000739999999496mm", pcbY: "0.8750300000000379mm", width: "1.3999972mm", height: "1.1999975999999999mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-1.1000739999999496mm", pcbY: "0.8750300000000379mm", width: "1.3999972mm", height: "1.1999975999999999mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.029459999999972, y: 1.7213071999999556 },
                        { x: -2.029459999999972, y: -1.6786859999999706 },
                        { x: 2.070531800000026, y: -1.6786859999999706 },
                        { x: 2.070531800000026, y: 1.7213071999999556 },
                        { x: -2.029459999999972, y: 1.7213071999999556 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -2.286000000000058, y: -1.396872999999914 },
                        { x: -2.286000000000058, y: -1.9048729999999523 },
                        { x: -1.7780000000001337, y: -1.9048729999999523 },
                    ] }), jsxRuntime.jsx("courtyardoutline", { outline: [
                        { x: -2.536000000000058, y: 1.9774540000000798 },
                        { x: 2.3327999999999065, y: 1.9774540000000798 },
                        { x: 2.3327999999999065, y: -2.154745999999932 },
                        { x: -2.536000000000058, y: -2.154745999999932 },
                        { x: -2.536000000000058, y: 1.9774540000000798 },
                    ] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C13738.obj?uuid=3d8e5f33629249f9a4089449c02742d4",
            // stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C13738.step?uuid=3d8e5f33629249f9a4089449c02742d4",
            pcbRotationOffset: 0,
            modelOriginPosition: { x: 0, y: 0, z: -0.01 },
        }, ...props }));
};

// Arduino Nano board dimensions: 18mm x 45mm
const atmegaNanoPinLabels = {
    pin1: ["PD3", "D3", "PWM"],
    pin2: ["PD4", "D4"],
    pin3: ["GND3"],
    pin4: ["VCC2"],
    pin5: ["GND2"],
    pin6: ["VCC1"],
    pin7: ["PB6", "XTAL1"],
    pin8: ["PB7", "XTAL2"],
    pin9: ["PD5", "D5", "PWM"],
    pin10: ["PD6", "D6", "PWM"],
    pin11: ["PD7", "D7"],
    pin12: ["PB0", "D8"],
    pin13: ["PB1", "D9", "PWM"],
    pin14: ["PB2", "D10", "SS", "PWM"],
    pin15: ["PB3", "D11", "MOSI", "PWM"],
    pin16: ["PB4", "D12", "MISO"],
    pin17: ["PB5", "D13", "SCK"],
    pin18: ["AVCC"],
    pin19: ["ADC6", "A6"],
    pin20: ["AREF"],
    pin21: ["GND1"],
    pin22: ["ADC7", "A7"],
    pin23: ["PC0", "A0"],
    pin24: ["PC1", "A1"],
    pin25: ["PC2", "A2"],
    pin26: ["PC3", "A3"],
    pin27: ["PC4", "A4", "SDA"],
    pin28: ["PC5", "A5", "SCL"],
    pin29: ["PC6", "RESET"],
    pin30: ["PD0", "D0", "RXD"],
    pin31: ["PD1", "D1", "TXD"],
    pin32: ["PD2", "D2"],
};

const NanoCoreSection = () => (jsxRuntime.jsxs("group", { name: "core_section", children: [jsxRuntime.jsx(ATMEGA328P_AU, { name: "U1", pinLabels: atmegaNanoPinLabels, showPinAliases: true, pcbX: "0mm", pcbY: "0mm", schX: 0, schY: 0, schPinArrangement: {
                topSide: { pins: ["VCC1", "VCC2", "AVCC"], direction: "left-to-right" },
                bottomSide: {
                    pins: ["GND1", "GND2", "GND3", "AREF"],
                    direction: "left-to-right",
                },
                leftSide: {
                    pins: ["RESET", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7"],
                    direction: "top-to-bottom",
                },
                rightSide: {
                    pins: [
                        "A0",
                        "A1",
                        "A2",
                        "A3",
                        "A4",
                        "A5",
                        "D8",
                        "D9",
                        "D10",
                        "D11",
                        "D12",
                        "D13",
                    ],
                    direction: "top-to-bottom",
                },
            }, connections: {
                pin1: "net.D3",
                pin2: "net.D4",
                pin3: "net.GND",
                pin4: "net.V5",
                pin5: "net.GND",
                pin6: "net.V5",
                pin7: "net.XTAL1",
                pin8: "net.XTAL2",
                pin9: "net.D5",
                pin10: "net.D6",
                pin11: "net.D7",
                pin12: "net.D8",
                pin13: "net.D9",
                pin14: "net.D10",
                pin15: "net.D11",
                pin16: "net.D12",
                pin17: "net.D13",
                pin18: "net.V5",
                pin19: "net.A6",
                pin20: "net.AREF",
                pin21: "net.GND",
                pin22: "net.A7",
                pin23: "net.A0",
                pin24: "net.A1",
                pin25: "net.A2",
                pin26: "net.A3",
                pin27: "net.A4",
                pin28: "net.A5",
                pin29: "net.RESET",
                pin30: "net.D0",
                pin31: "net.D1",
                pin32: "net.D2",
            } }), jsxRuntime.jsx(X322516MLB4SI, { name: "X1", pcbX: "-10mm", pcbY: "0mm", schX: -8, schY: 8, connections: {
                OSC1: "net.XTAL1",
                OSC2: "net.XTAL2",
                GND1: "net.GND",
                GND2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C1", capacitance: "22pF", footprint: "0402", pcbX: "-13mm", pcbY: "-2mm", schX: -14, schY: 8, connections: {
                pin1: "net.XTAL1",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C2", capacitance: "22pF", footprint: "0402", pcbX: "-13mm", pcbY: "2mm", schX: -14, schY: 12, connections: {
                pin1: "net.XTAL2",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("resistor", { name: "R1", resistance: "10k", footprint: "0402", pcbX: "-8mm", pcbY: "5mm", schX: -8, schY: -4, connections: {
                pin1: "net.V5",
                pin2: "net.RESET",
            } }), jsxRuntime.jsx("capacitor", { name: "C3", capacitance: "100nF", footprint: "0402", pcbX: "-6mm", pcbY: "5mm", schX: -4, schY: -4, connections: {
                pin1: "net.USB_DTR",
                pin2: "net.RESET",
            } }), jsxRuntime.jsx("capacitor", { name: "C4", capacitance: "100nF", footprint: "0402", pcbX: "4mm", pcbY: "5mm", schX: 4, schY: -6, connections: {
                pin1: "net.V5",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C5", capacitance: "100nF", footprint: "0402", pcbX: "6mm", pcbY: "5mm", schX: 7, schY: -6, connections: {
                pin1: "net.V5",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C6", capacitance: "100nF", footprint: "0402", pcbX: "4mm", pcbY: "-5mm", schX: 4, schY: 6, connections: {
                pin1: "net.AREF",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("resistor", { name: "R2", resistance: "1k", footprint: "0402", pcbX: "8mm", pcbY: "-5mm", schX: 10, schY: 4, connections: {
                pin1: "net.D13",
                pin2: "net.L_LED",
            } }), jsxRuntime.jsx("led", { name: "LED_L", color: "amber", footprint: "0603", pcbX: "10mm", pcbY: "-5mm", schX: 14, schY: 4, connections: {
                anode: "net.L_LED",
                cathode: "net.GND",
            } })] }));

const pinLabels$2 = {
    pin1: ["GND"],
    pin2: ["TXD"],
    pin3: ["RXD"],
    pin4: ["V3"],
    pin5: ["UD_POS"],
    pin6: ["UD_NEG"],
    pin7: ["pin7"],
    pin8: ["OUT"],
    pin9: ["CTS"],
    pin10: ["DSR"],
    pin11: ["RI"],
    pin12: ["DCD"],
    pin13: ["DTR"],
    pin14: ["RTS"],
    pin15: ["R232"],
    pin16: ["VCC"],
};
const CH340C = (props) => {
    return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$2, supplierPartNumbers: {
            jlcpcb: ["C7464026"],
        }, manufacturerPartNumber: "CH340C", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "-4.44500000000005mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "-3.175000000000068mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "-1.9050000000000864mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-0.6349999999999909mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin5"], pcbX: "0.6349999999999909mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin6"], pcbX: "1.9049999999999727mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin7"], pcbX: "3.1749999999999545mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin8"], pcbX: "4.444999999999936mm", pcbY: "-2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin16"], pcbX: "-4.44500000000005mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin15"], pcbX: "-3.175000000000068mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin14"], pcbX: "-1.9050000000000864mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin13"], pcbX: "-0.6349999999999909mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin12"], pcbX: "0.6349999999999909mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin11"], pcbX: "1.9049999999999727mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin10"], pcbX: "3.1749999999999545mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin9"], pcbX: "4.444999999999936mm", pcbY: "2.8724860000000945mm", width: "0.5599937999999999mm", height: "1.7450053999999997mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -5.076190000000111, y: -1.7713960000000952 },
                        { x: -5.076190000000111, y: 1.7713959999999815 },
                        { x: 5.076189999999997, y: 1.7713959999999815 },
                        { x: 5.076189999999997, y: -1.7713960000000952 },
                        { x: -5.076190000000111, y: -1.7713960000000952 },
                    ] }), jsxRuntime.jsx("courtyardoutline", { outline: [
                        { x: -5.58400000000006, y: 3.704400000000078 },
                        { x: 5.329999999999927, y: 3.704400000000078 },
                        { x: 5.329999999999927, y: -3.9583999999998696 },
                        { x: -5.58400000000006, y: -3.9583999999998696 },
                        { x: -5.58400000000006, y: 3.704400000000078 },
                    ] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C7464026.obj?uuid=07126628bc464d5389bb996c52812f54",
            // stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C7464026.step?uuid=07126628bc464d5389bb996c52812f54",
            pcbRotationOffset: 90,
            modelOriginPosition: { x: 0, y: 0, z: 0.000575 },
        }, ...props }));
};

const pinLabels$1 = {
    pin1: ["GND"],
    pin2: ["VOUT1"],
    pin3: ["VIN"],
    pin4: ["VOUT2"],
};
const AMS1117_3_3 = (props) => {
    return (jsxRuntime.jsx("chip", { pinLabels: pinLabels$1, supplierPartNumbers: {
            jlcpcb: ["C6186"],
        }, manufacturerPartNumber: "AMS1117_3_3", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "2.929959849999932mm", pcbY: "-2.2999699999999166mm", width: "2.4999949999999997mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "2.929959849999932mm", pcbY: "0mm", width: "2.4999949999999997mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "2.929959849999932mm", pcbY: "2.2999700000000303mm", width: "2.4999949999999997mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-3.009957149999991mm", pcbY: "0mm", width: "2.3400004mm", height: "3.5999928mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -1.6114077499998984, y: -3.3262061999998878 },
                        { x: -1.6114077499998984, y: 3.3262062000000014 },
                        { x: 1.3313854499999707, y: 3.3262062000000014 },
                        { x: 1.3313854499999707, y: -3.3262061999998878 },
                        { x: -1.6114077499998984, y: -3.3262061999998878 },
                    ] }), jsxRuntime.jsx("courtyardoutline", { outline: [
                        { x: -4.428611149999938, y: 3.5774000000000115 },
                        { x: 5.012188849999916, y: 3.5774000000000115 },
                        { x: 5.012188849999916, y: -3.5773999999998978 },
                        { x: -4.428611149999938, y: -3.5773999999998978 },
                        { x: -4.428611149999938, y: 3.5774000000000115 },
                    ] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C6186.obj?uuid=e80246a9471445bfb635be848806a22e",
            // stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C6186.step?uuid=e80246a9471445bfb635be848806a22e",
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: 0, z: -0.049394 },
        }, ...props }));
};

const NanoUsbSection = () => (jsxRuntime.jsxs("group", { name: "usb_section", children: [jsxRuntime.jsx("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",
            } }), jsxRuntime.jsx(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",
            } }), jsxRuntime.jsx("capacitor", { name: "C7", capacitance: "100nF", footprint: "0402", pcbX: "-12mm", pcbY: "6mm", schX: -16, schY: -4, connections: {
                pin1: "net.V5",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C8", capacitance: "100nF", footprint: "0402", pcbX: "-16mm", pcbY: "4mm", schX: -20, schY: -4, connections: {
                pin1: "net.USB_VBUS",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("resistor", { name: "R3", resistance: "1k", footprint: "0402", pcbX: "-4mm", pcbY: "6mm", schX: -4, schY: -2, connections: {
                pin1: "net.USB_TX",
                pin2: "net.D0",
            } }), jsxRuntime.jsx("resistor", { name: "R4", resistance: "1k", footprint: "0402", pcbX: "-4mm", pcbY: "4mm", schX: -4, schY: 2, connections: {
                pin1: "net.USB_RX",
                pin2: "net.D1",
            } }), jsxRuntime.jsx("resistor", { name: "R5", resistance: "1k", footprint: "0402", pcbX: "-14mm", pcbY: "-4mm", schX: -18, schY: -8, connections: {
                pin1: "net.V5",
                pin2: "net.TX_LED_A",
            } }), jsxRuntime.jsx("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",
            } }), jsxRuntime.jsx("resistor", { name: "R6", resistance: "1k", footprint: "0402", pcbX: "-14mm", pcbY: "-6mm", schX: -18, schY: -12, connections: {
                pin1: "net.V5",
                pin2: "net.RX_LED_A",
            } }), jsxRuntime.jsx("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",
            } }), jsxRuntime.jsx(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",
            } }), jsxRuntime.jsx("capacitor", { name: "C9", capacitance: "10uF", footprint: "0603", pcbX: "-9mm", pcbY: "-6mm", schX: -12, schY: -20, connections: {
                pin1: "net.V5",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C10", capacitance: "10uF", footprint: "0603", pcbX: "-3mm", pcbY: "-6mm", schX: 0, schY: -20, connections: {
                pin1: "net.V3_3",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("resistor", { name: "R7", resistance: "1k", footprint: "0402", pcbX: "-16mm", pcbY: "-4mm", schX: -22, schY: -8, connections: {
                pin1: "net.V5",
                pin2: "net.PWR_LED",
            } }), jsxRuntime.jsx("led", { name: "LED_PWR", color: "green", footprint: "0603", pcbX: "-16mm", pcbY: "-6mm", schX: -22, schY: -12, connections: {
                anode: "net.PWR_LED",
                cathode: "net.GND",
            } })] }));

/**
 * Arduino Nano pin headers
 * The Nano has two rows of 15 pins on each side (2.54mm pitch)
 *
 * Left header (J1) - top of board looking from component side:
 *   D1/TX, D0/RX, RESET, GND, D2, D3~, D4, D5~, D6~, D7, D8, D9~, D10~, D11~/MOSI, D12/MISO
 *
 * Right header (J2):
 *   D13/SCK, 3V3, AREF, A0, A1, A2, A3, A4/SDA, A5/SCL, A6, A7, 5V, RST, GND, VIN
 */
const NanoHeaders = () => (jsxRuntime.jsxs("group", { name: "headers", children: [jsxRuntime.jsx("pinheader", { name: "J1", pinCount: 15, pitch: "2.54mm", pcbX: "-20mm", pcbY: "0mm", pcbRotation: 90, schX: -30, schY: 0, connections: {
                pin1: "net.D1",
                pin2: "net.D0",
                pin3: "net.RESET",
                pin4: "net.GND",
                pin5: "net.D2",
                pin6: "net.D3",
                pin7: "net.D4",
                pin8: "net.D5",
                pin9: "net.D6",
                pin10: "net.D7",
                pin11: "net.D8",
                pin12: "net.D9",
                pin13: "net.D10",
                pin14: "net.D11",
                pin15: "net.D12",
            } }), jsxRuntime.jsx("pinheader", { name: "J2", pinCount: 15, pitch: "2.54mm", pcbX: "20mm", pcbY: "0mm", pcbRotation: 90, schX: 30, schY: 0, connections: {
                pin1: "net.D13",
                pin2: "net.V3_3",
                pin3: "net.AREF",
                pin4: "net.A0",
                pin5: "net.A1",
                pin6: "net.A2",
                pin7: "net.A3",
                pin8: "net.A4",
                pin9: "net.A5",
                pin10: "net.A6",
                pin11: "net.A7",
                pin12: "net.V5",
                pin13: "net.RESET",
                pin14: "net.GND",
                pin15: "net.VIN",
            } }), jsxRuntime.jsx("pinheader", { name: "J3", pinCount: 6, pitch: "2.54mm", pcbX: "12mm", pcbY: "-6mm", schX: 20, schY: -10, connections: {
                pin1: "net.D11",
                pin2: "net.V5",
                pin3: "net.D13",
                pin4: "net.GND",
                pin5: "net.D12",
                pin6: "net.RESET",
            } })] }));

const pinLabels = {
    pin1: ["pin1"],
    pin2: ["pin2"],
    pin3: ["VIN"],
    pin4: ["TAB"],
};
const AMS1117_5_0 = (props) => {
    return (jsxRuntime.jsx("chip", { pinLabels: pinLabels, supplierPartNumbers: {
            jlcpcb: ["C347223"],
        }, manufacturerPartNumber: "AMS1117_5_0", footprint: jsxRuntime.jsxs("footprint", { children: [jsxRuntime.jsx("smtpad", { portHints: ["pin4"], pcbX: "-3.098799999999983mm", pcbY: "0mm", width: "2.1999956mm", height: "3.4999930000000004mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin3"], pcbX: "3.098799999999983mm", pcbY: "2.2999699999999166mm", width: "2.1999956mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin2"], pcbX: "3.098799999999983mm", pcbY: "0mm", width: "2.1999956mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("smtpad", { portHints: ["pin1"], pcbX: "3.098799999999983mm", pcbY: "-2.2999700000000303mm", width: "2.1999956mm", height: "1.0999978mm", shape: "rect" }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -1.8000218000000814, y: -3.5499801999999363 },
                        { x: 1.7999963999999409, y: -3.5499801999999363 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -1.8000218000000814, y: 3.5499801999999363 },
                        { x: 1.7999963999999409, y: 3.5499801999999363 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: 1.7999963999999409, y: -3.5499801999999363 },
                        { x: 1.7999963999999409, y: 3.5499801999999363 },
                    ] }), jsxRuntime.jsx("silkscreenpath", { route: [
                        { x: -1.8000218000000814, y: -3.5499801999999363 },
                        { x: -1.7999963999999409, y: 3.5499801999999363 },
                    ] }), jsxRuntime.jsx("courtyardoutline", { outline: [
                        { x: -4.441000000000031, y: 3.8059999999999263 },
                        { x: 4.466399999999908, y: 3.8059999999999263 },
                        { x: 4.466399999999908, y: -3.80600000000004 },
                        { x: -4.441000000000031, y: -3.80600000000004 },
                        { x: -4.441000000000031, y: 3.8059999999999263 },
                    ] })] }), cadModel: {
            objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C347223.obj?uuid=e80246a9471445bfb635be848806a22e",
            // stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C347223.step?uuid=e80246a9471445bfb635be848806a22e",
            pcbRotationOffset: 180,
            modelOriginPosition: { x: 0, y: 0, z: -0.049394 },
        }, ...props }));
};

const NanoPowerSection = () => (jsxRuntime.jsxs("group", { name: "power_section", children: [jsxRuntime.jsx(AMS1117_5_0, { name: "U4", pcbX: "15mm", pcbY: "6mm", schX: 10, schY: -20, connections: {
                pin1: "net.GND",
                pin2: "net.V5",
                VIN: "net.VIN",
                TAB: "net.V5",
            } }), jsxRuntime.jsx("capacitor", { name: "C11", capacitance: "47uF", footprint: "1206", pcbX: "18mm", pcbY: "6mm", schX: 16, schY: -20, connections: {
                pin1: "net.VIN",
                pin2: "net.GND",
            } }), jsxRuntime.jsx("capacitor", { name: "C12", capacitance: "47uF", footprint: "1206", pcbX: "12mm", pcbY: "6mm", schX: 4, schY: -20, connections: {
                pin1: "net.V5",
                pin2: "net.GND",
            } })] }));

/**
 * Arduino Nano compatible board
 *
 * Key components:
 * - ATmega328P-AU: Main microcontroller (same as Uno)
 * - CH340C: USB-to-serial converter (replaces ATMEGA16U2 from Uno)
 * - AMS1117-5.0: 5V regulator from VIN
 * - AMS1117-3.3: 3.3V regulator from 5V
 * - Mini-USB connector for programming and power
 * - 2x 15-pin headers (30 I/O pins total)
 * - ICSP 6-pin header
 *
 * Board dimensions: 45mm x 18mm
 */
var index_circuit = () => (jsxRuntime.jsxs("board", { width: "45mm", height: "18mm", routingDisabled: true, children: [jsxRuntime.jsx(NanoHeaders, {}), jsxRuntime.jsx(NanoCoreSection, {}), jsxRuntime.jsx(NanoUsbSection, {}), jsxRuntime.jsx(NanoPowerSection, {})] }));

module.exports = index_circuit;