gokul/macro-six-usbc

USB-powered ATmega32U4 controller board with protected/switched 5 V power, six tactile keys, rotary encoder, reset/boot/ISP interfaces, power LED, and six daisy-chained SK6812 RGB LEDs driven through MOSFETs.

Version
0.1.6
License
MIT
Stars
0

imports/ATMEGA32U4_AU.tsx

import type { ChipProps } from "@tscircuit/props"

const pinLabels = {
  pin1: ["PE6__INT_6","AIN0"],
  pin2: ["UVcc"],
  pin3: ["D_NEG"],
  pin4: ["D_POS"],
  pin5: ["UGnd"],
  pin6: ["UCap"],
  pin7: ["VBus"],
  pin8: ["PB0_SS","PCINT0"],
  pin9: ["PB1__PCINT1","SCLK"],
  pin10: ["PB2__PDI","PCINT2","MOSI"],
  pin11: ["PB3__PDO","PCINT3","MISO"],
  pin12: ["PB7_PCINT7","OC0A","OC1C","RTS_"],
  pin13: ["N_RESET"],
  pin14: ["VCC1"],
  pin15: ["GND1"],
  pin16: ["XTAL2"],
  pin17: ["XTAL1"],
  pin18: ["PD0__OC0B","SCL","INT0"],
  pin19: ["PD1__SDA","INT1"],
  pin20: ["PD2__RXD1","INT2"],
  pin21: ["PD3__TXD1","INT3"],
  pin22: ["PD5__XCK1","CTS_"],
  pin23: ["GND2"],
  pin24: ["AVCC1"],
  pin25: ["PD4_ICP1","ADC8"],
  pin26: ["PD6_T1","N_OC4D","ADC9"],
  pin27: ["PD7__T0","OC4D","ADC10"],
  pin28: ["PB4_PCINT4","ADC11"],
  pin29: ["PB5_PCINT5","OC1A","N_OC4B","ADC12"],
  pin30: ["PB6_PCINT6","OC1B","OC4B","ADC13"],
  pin31: ["PC6_OC3A","OC4A_"],
  pin32: ["PC7_ICP3","CLK0","OC4A"],
  pin33: ["PE2__HWB_"],
  pin34: ["VCC2"],
  pin35: ["GND3"],
  pin36: ["PF7__ADC7","TDI"],
  pin37: ["PF6__ADC6","TDO"],
  pin38: ["PF5__ADC5","TMS"],
  pin39: ["PF4__ADC4","TCK"],
  pin40: ["PF1__ADC1"],
  pin41: ["PF0__ADC0"],
  pin42: ["AREF"],
  pin43: ["GND4"],
  pin44: ["AVCC2"]
} as const

const pinAttributes = {
  pin7: {requiresPower: true},
  pin14: {requiresPower: true},
  pin15: {requiresGround: true},
  pin23: {requiresGround: true},
  pin34: {requiresPower: true},
  pin35: {requiresGround: true},
  pin43: {requiresGround: true}
} as const

export const ATMEGA32U4_AU = (props: ChipProps<typeof pinLabels>) => {
  return (
    <chip
      pinLabels={pinLabels}
      pinAttributes={pinAttributes}
      supplierPartNumbers={{
  "jlcpcb": [
    "C44854"
  ]
}}
      manufacturerPartNumber="ATMEGA32U4-AU"
      footprint={<footprint>
        <smtpad portHints={["pin1"]} pcbX="-4.000119mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin2"]} pcbX="-3.200019mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin3"]} pcbX="-2.400173mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin4"]} pcbX="-1.600073mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin5"]} pcbX="-0.800227mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin6"]} pcbX="-0.000127mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin7"]} pcbX="0.799973mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin8"]} pcbX="1.599819mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin9"]} pcbX="2.399919mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin10"]} pcbX="3.199765mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin11"]} pcbX="3.999865mm" pcbY="-5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin12"]} pcbX="5.850001mm" pcbY="-3.999865mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin13"]} pcbX="5.850001mm" pcbY="-3.199765mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin14"]} pcbX="5.850001mm" pcbY="-2.399919mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin15"]} pcbX="5.850001mm" pcbY="-1.599819mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin16"]} pcbX="5.850001mm" pcbY="-0.799973mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin17"]} pcbX="5.850001mm" pcbY="0.000127mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin18"]} pcbX="5.850001mm" pcbY="0.800227mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin19"]} pcbX="5.850001mm" pcbY="1.600073mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin20"]} pcbX="5.850001mm" pcbY="2.400173mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin21"]} pcbX="5.850001mm" pcbY="3.200019mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin22"]} pcbX="5.850001mm" pcbY="4.000119mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin23"]} pcbX="3.999865mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin24"]} pcbX="3.199765mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin25"]} pcbX="2.399919mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin26"]} pcbX="1.599819mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin27"]} pcbX="0.799973mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin28"]} pcbX="-0.000127mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin29"]} pcbX="-0.800227mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin30"]} pcbX="-1.600073mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin31"]} pcbX="-2.400173mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin32"]} pcbX="-3.200019mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin33"]} pcbX="-4.000119mm" pcbY="5.850001mm" width="0.4500118mm" height="1.8999962mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin34"]} pcbX="-5.850001mm" pcbY="4.000119mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin35"]} pcbX="-5.850001mm" pcbY="3.200019mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin36"]} pcbX="-5.850001mm" pcbY="2.400173mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin37"]} pcbX="-5.850001mm" pcbY="1.600073mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin38"]} pcbX="-5.850001mm" pcbY="0.800227mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin39"]} pcbX="-5.850001mm" pcbY="0.000127mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin40"]} pcbX="-5.850001mm" pcbY="-0.799973mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin41"]} pcbX="-5.850001mm" pcbY="-1.599819mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin42"]} pcbX="-5.850001mm" pcbY="-2.399919mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin43"]} pcbX="-5.850001mm" pcbY="-3.199765mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<smtpad portHints={["pin44"]} pcbX="-5.850001mm" pcbY="-3.999865mm" width="1.8999962mm" height="0.4500118mm" radius="0.2250059mm" shape="pill" />
<silkscreenpath strokeWidth={0.15} route={[{"x":-5.080127000000061,"y":4.3480990000000475},{"x":-5.080127000000061,"y":5.080127000000061},{"x":-4.3480990000000475,"y":5.080127000000061}]} />
<silkscreenpath strokeWidth={0.15} route={[{"x":5.079872999999907,"y":4.3480990000000475},{"x":5.079872999999907,"y":5.080127000000061},{"x":4.347845000000007,"y":5.080127000000061}]} />
<silkscreenpath strokeWidth={0.15} route={[{"x":-5.080127000000061,"y":-4.347844999999893},{"x":-5.080127000000061,"y":-5.079872999999907},{"x":-4.3480990000000475,"y":-5.079872999999907}]} />
<silkscreenpath strokeWidth={0.15} route={[{"x":5.079872999999907,"y":-4.347844999999893},{"x":5.079872999999907,"y":-5.079872999999907},{"x":4.347845000000007,"y":-5.079872999999907}]} />
<silkscreenpath strokeWidth={0.15} route={[{"x":-4.675327200000083,"y":-4.675073199999929},{"x":-4.675327200000083,"y":4.675327200000083},{"x":4.675073200000043,"y":4.675327200000083},{"x":4.675073200000043,"y":-4.675073199999929},{"x":-4.675327200000083,"y":-4.675073199999929}]} />
<silkscreencircle strokeWidth={0.15} pcbX="-3.937127mm" pcbY="-7.098919mm" radius="0.100076mm" />
<silkscreencircle strokeWidth={0.15} pcbX="-3.937127mm" pcbY="-4.175125mm" radius="0.150114mm" />
<courtyardoutline outline={[{"x":-7.049999100000036,"y":7.049999100000036},{"x":7.049999099999923,"y":7.049999100000036},{"x":7.049999099999923,"y":-7.049999099999923},{"x":-7.049999100000036,"y":-7.049999099999923},{"x":-7.049999100000036,"y":7.049999100000036}]} />
      </footprint>}
      cadModel={{
        objUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C44854.obj?uuid=5b42f9e34a2447dea5452ab4aeb1537a",
        stepUrl: "https://modelcdn.tscircuit.com/easyeda_models/assets/C44854.step?uuid=5b42f9e34a2447dea5452ab4aeb1537a",
        pcbRotationOffset: 90,
        modelOriginPosition: { x: -0.00012700000002041634, y: -0.00012700000002041634, z: -1.2 },
      }}
      {...props}
    />
  )
}