Skip to the content
PCBKitNew board
2 layersUsbc, the printed circuit board in 3D

made with atopile

Copper layers
2
Thickness
1.6 mm
Parts
3
Nets
8
Pads
26
Tracks, vias
4, 0
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
29 Oct 2024
Updated
12 Apr 2025

Overview

Usbc is an open-source printed circuit board by eigenlucy, from the eigenlucy/ESPHome-Panel repository on GitHub, published under the MIT licence. It is a 2-layer board with 3 parts on 8 nets, routed with 4 tracks and 0 vias.

Its parts include 2 resistors and 1 IC.

README

README.md

izzymonitor

esp32-s3 based home assistant control panel

Rust firmware development repo (thanks izzy!)

Downloading Gerbers/PCBA files for assembly service

PCBA files are generated in the build artifacts on each commit. Download the build artifacts from the latest commit under the Actions tab. Upload the default gerber zip to JLCPCB, and use default.csv for the BOM file + default.pos.csv for the CPL file

Requirements

  • atopile
  • rust, espup, espflash
  • Directory

    Ato builds

  • Ato builds listed in ato.yaml
  • Veramonitor.ato is the main build. The final PCB is build from this, and the corresponding kicad project is in elec/layouts/default/veramonitor.kicad_pro
  • kailh-sw.ato contains the keyswitch+neopixel module. kicad files are located in elec/layouts/kailh-sw
  • MAX98357AETE_plus_T.ato contains the ClassDAmp module
  • TESTING IN PROGRESS:

    Wavshare 1.8in LCD Module with ST7735 Controller

    module TFTDisplay in elec/src _1_peroid_8INCH_space_MODULE.ato LCSC_ID = C359940

    SPI Pin mapping (elec/src/veramonitor.ato, line 67):

    text
        lcd.spi.mosi ~ micro.io13; lcd.spi.sck ~ micro.io12; lcd.spi.cs ~ micro.io11; lcd.spi.dc ~ micro.io10; lcd.spi.reset ~ micro.io9; lcd.spi.backlightEN ~ micro.io46

    MAX98357 Amp + Speaker

    Uses MAX98357 (LCSC ID = C910544) 3W Class D amplifier IC + KLJ-1304T Speaker (LCSC_ID = C18186315). ESP32-S3 sends digital audio data to MAX98357 via I2S.

    I2S Pin Mapping (veramonitor.ato, line 73):

    text
        amp.LRCLK ~ micro.io8; amp.BCLK ~ micro.io18; amp.DIN ~ micro.io17

    Test SK6805 neopixels

    WS2812B style protocol. Defined in elec/src/sk6805-ec20/elec/src/sk6805-ec20.ato

    Neopixels invoked and configured in each KailhSW module

    Neopixel Pin Maping (veramonitor.ato, line 70):

    text
        micro.io16 ~ sw1.DIN; sw1.DOUT ~ sw2.DIN; sw2.DOUT ~ sw3.DIN; sw3.DOUT ~ sw4.DIN; sw4.DOUT ~ sw5.DIN; sw5.DOUT ~ sw6.DIN

    CPG1511F01S05 Kailh Switches

    Accomodates standard keycaps LCSC_ID: C400225 Kail module configured in elec/src/kailh-sw.ato.

    Active low. Pin mappings:

    text
        micro.io14 ~ sw1.KEY; micro.io21 ~ sw2.KEY; micro.io47 ~ sw3.KEY; micro.io48 ~ sw4.KEY; micro.io45 ~ sw5.KEY; micro.io35 ~ sw6.KEY

    SW1 ~ GPIO14; SW2 ~ GPIO21; SW3 ~ GPIO47; SW4 ~ GPIO48; GPIO45 ~ SW5; SW6 ~ GPIO35

    SPH0641LU4h1 MEMS microphone

    LCSC_ID = C2879853

    PDM Pin Mappings:

    text
        pdm.pdm_sel ~ mic.SELECT; pdm.pdm_sel ~ micro.io3
        pdm.pdm_clk ~ mic.CLOCK; pdm.pdm_clk ~ micro.io5
        pdm.pdm_data ~ mic.DATA; pdm.pdm_data ~ micro.io4

    To Do

    1: Verify basic functionality

    2: Finish rust firmware

    3: Home assistant integration

    4: 3D printed enclosure/wall panel mount

    Parts

    3
    QtyValueFootprintReferences
    2Chip Resistor - Surface Mount 4.7KOhms ±5% 1/16W 0402 RoHSlib:R0402R1, R2
    1lib:USB-C-SMD_KH-TYPE-C-16PU1

    Questions

    What parts does the Usbc use?

    3 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

    Where can I download the Usbc KiCad files?

    From the eigenlucy/ESPHome-Panel repository on GitHub, at the commit this page was made from: the board is elec/src/esp32-s3/elec/src/usb-connectors/elec/layout/default/usbc.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

    Can I use the Usbc design in my own project?

    Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

    More from eigenlucy/ESPHome-Panel

    10
    • 2 layersVeramonitor, the printed circuit board in 3D

      Veramonitor

      eigenlucy/ESPHome-Panel

      made with atopile

      47 parts5MIT
    • 2 layersBase, the printed circuit board in 3D

      Base

      eigenlucy/ESPHome-Panel

      made with atopile

      38 parts5MIT
    • 2 layersLedrow x10, the printed circuit board in 3D

      Ledrow x10

      eigenlucy/ESPHome-Panel

      made with atopile

      20 parts5MIT
    • 2 layersRp2040, the printed circuit board in 3D

      Rp2040

      eigenlucy/ESPHome-Panel

      made with atopile

      20 parts5MIT
    • 2 layersTps63020dsjr, the printed circuit board in 3D

      Tps63020dsjr

      eigenlucy/ESPHome-Panel

      made with atopile

      10 parts5MIT
    • 2 layersEsp32-s3, the printed circuit board in 3D

      Esp32-s3

      eigenlucy/ESPHome-Panel

      made with atopile

      6 parts5MIT
    • 2 layersKailh sw, the printed circuit board in 3D

      Kailh sw

      eigenlucy/ESPHome-Panel

      made with atopile

      4 parts5MIT
    • 2 layersBq24045dsqr, the printed circuit board in 3D

      Bq24045dsqr

      eigenlucy/ESPHome-Panel

      made with atopile

      4 parts5MIT
    • 2 layersSk6805-ec20, the printed circuit board in 3D

      Sk6805-ec20

      eigenlucy/ESPHome-Panel

      made with atopile

      2 parts5MIT
    • 2 layersSk6805-ec20, the printed circuit board in 3D

      Sk6805-ec20

      eigenlucy/ESPHome-Panel

      made with atopile

      2 parts5MIT

    Similar boards

    • 2 layers40 × 30 mmBlinky, the printed circuit board in 3D

      Blinky

      earthtojake/text-to-cad

      Design physical products with AI

      3 parts26kMIT
    • 2 layers51.9 × 16 mmPassive2-rpi non standard adapter, the printed circuit board in 3D

      Passive2-rpi non standard adapter

      hzeller/rpi-rgb-led-matrix

      Controlling up to three chains of 64x64, 32x32, 16x32 or similar RGB LED displays using Raspberry Pi GPIO

      3 parts4.4kGPL-2.0
    • 2 layers16.3 × 16.3 mmSensor, the printed circuit board in 3D

      Sensor

      scottbez1/splitflap

      DIY split-flap display

      3 parts4.2k
    • 2 layersSub, the printed circuit board in 3D

      Sub

      atopile/atopile

      Design circuit boards with code! ✨ Get software-like design reuse 🚀, validation, version control and collaboration in hardware; starting with electronics ⚡️

      3 parts4kMIT
    • 2 layers85 × 30 mmDual stomp, the printed circuit board in 3D

      Dual stomp

      torvalds/GuitarPedal

      Linus learns analog circuits

      3 parts2.5kGPL-2.0
    • 2 layers124.5 × 33.7 mm172319-1 connector, the printed circuit board in 3D

      172319-1 connector

      rusefi/rusefi

      rusefi - GPL internal combustion engine control unit

      3 parts1.2k
    • 2 layers10.5 × 83 mmProgrammingAdapter, the printed circuit board in 3D

      ProgrammingAdapter

      stuartpittaway/diyBMSv4

      Version 4 of the diyBMS

      3 parts1.1k
    • 2 layers21.2 × 51.3 mmPico reset, the printed circuit board in 3D

      Pico reset

      hackclub/sprig

      🍃 Learn to code by making games in a JavaScript web-based game editor.

      3 parts1.1kMIT