Skip to the content
PCBKitNew board
4 layers48.3 × 52.9 mmDynaButton, the printed circuit board in 3D

Dynaboard - large button/control interface board (102 syms, 590 tracks)

Size
48.3 × 52.9 mm
Copper layers
4
Thickness
1.6 mm
Parts
68
Nets
60
Pads
249
Tracks, vias
590, 139
Pours
5
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
18 May 2026
Updated
18 May 2026

Overview

DynaButton is an open-source printed circuit board by manhoosbilli1, from the manhoosbilli1/dynaboard-button-controller repository on GitHub. It is a 4-layer board of 48.3 × 52.9 mm with 68 parts on 60 nets, routed with 590 tracks and 139 vias.

It is built around the STM32F103C8T6, 74LVC2G241GS and AMS1117, with the BSS138, SS33 and Q13FC1350000400 among its other parts. Its parts include 21 resistors, 19 capacitors, 4 ICs, 4 diodes and 4 connectors. It belongs with the interfaces and adapters boards and the STM32 boards of this library.

Main components

7

README

README.md

DynaButton

Dynaboard - STM32F103 multi-button HID/control interface with USB-C and high-density I/O

At a Glance

  • Status: Routed
  • Board size: 48.31 x 52.88 mm
  • Layers: 4
  • Components: 68
  • Key ICs:
    • U1: STM32F103C8T6
    • U2: U_REG LD1117S50TR_SOT223
    • U3: AMS1117
    • U4: 74LVC2G241

Schematic

Schematic

Full PDF: reports/schematic.pdf

Component Roles

  • STM32F103C8T6 (U1) - main MCU (ARM Cortex-M3, 72 MHz); handles button matrix scanning and USB HID
  • 74LVC2G241 (U4) - dual buffer/line driver for clean digital I/O signaling on the button outputs
  • LD1117S50TR (U2) - 5 V LDO for peripheral rail
  • AMS1117 (U3) - 3.3 V LDO for the STM32 core
  • BSS138 x3 (Q1-Q3) - small-signal N-MOSFETs for level shifting / open-drain signaling between 3.3 V MCU and 5 V peripherals
  • X50328MSB2GI - 8 MHz crystal for STM32 system clock
  • USB-Type-C 16-pin connector for power + data
  • SS33 Schottky x2 (D1, D3) - reverse-polarity protection / freewheel diodes
  • JST-PH 2 mm connectors for daisy-chained external buttons (J_BTN5-J_BTN8) and pass-through I/O (J_IN2, J_OUT2)

PCB

3D top

3D bottom

Top copper

PCB top

Bottom copper

PCB bottom

Bill of Materials

RefsValueFootprintQtyMPNLCSC
C1,C1310uFPCM_JLCPCB:C_04022C15525
C2-C7,C9-C11,C14100nFPCM_JLCPCB:C_040210C1525
C8,C12,C151uFPCM_JLCPCB:C_04023C52923
C17,C1820pFPCM_JLCPCB:C_04022C1554
C19,C2012pFPCM_JLCPCB:C_04022C1547
D1,D3SS33PCM_JLCPCB:D_SMA2C28646294
D2RedPCM_JLCPCB:D_06031C2286
D4YellowPCM_JLCPCB:D_06031C89811
J3,J4Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_Vertical2
J5Connector, USB-TYPE-C-16PPCM_JLCPCB:TYPE-C-SMD_HX-TYPE-C-16PIN1C2927039
J_BTN5-J_BTN8JST PH 2-pin 2mmConnector_JST:JST_PH_S2B-PH-SM4-TB_1x02-1MP_P2.00mm_Horizontal4
J_IN2,J_OUT2JST PH 3-pin 2mmConnector_JST:JST_PH_B3B-PH-SM4-TB_1x03-1MP_P2.00mm_Vertical2
Q1-Q3BSS138PCM_JLCPCB:Q_SOT-233C7420339
R1,R9-R11,R16-R2110kΩPCM_JLCPCB:R_040210C25744
R2,R55.1kΩPCM_JLCPCB:R_04022C25905
R31MΩPCM_JLCPCB:R_04021C26083
R4,R22330ΩPCM_JLCPCB:R_04022C25104
R6,R7100kΩPCM_JLCPCB:R_04022C25741
R8,R2320ΩPCM_JLCPCB:R_06032C22950
R144.7kΩPCM_JLCPCB:R_04021C25900
S1Tactile Button, 160gfPCM_JLCPCB:SW_TS-1088-AR020161C720477
U1STM32F103C8T6PCM_JLCPCB:LQFP-48_7x7mm_P0.5mm1C8734
U2U_REG LD1117S50TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin21
U3AMS1117PCM_JLCPCB:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BR1C6186
U474LVC2G241Package_SO:VSSOP-8_3x3mm_P0.65mm1
X2X50328MSB2GIPCM_JLCPCB:CRYSTAL-SMD_L5.0-W3.21C115962
X3Q13FC1350000400PCM_JLCPCB:FC-135R_L3.2-W1.51C32346

5 of 27 line items don't have an LCSC code in the schematic - search LCSC or JLC parts search by MPN or footprint when sourcing.

Files

  • DynaButton.kicad_pro - KiCad project
  • DynaButton.kicad_sch - schematic source
  • DynaButton.kicad_pcb - PCB layout source
  • reports/schematic.pdf - full schematic (printable)
  • reports/bom.csv - bill of materials
  • reports/pcb-top.svg, reports/pcb-bottom.svg - copper artwork
  • reports/board-stats.json - KiCad-generated board statistics

Renders and metadata auto-generated by Backup-KiCadProject.ps1 using KiCad 10.0.

Parts

68
QtyValueFootprintReferences
10100nFPCM_JLCPCB:C_0402C2, C3, C4, C5, C6, C7, C9, C10, C11, C14
1010kΩPCM_JLCPCB:R_0402R1, R9, R10, R11, R16, R17, R18, R19, R20, R21
4JST PH 2-pin 2mmConnector_JST:JST_PH_S2B-PH-SM4-TB_1x02-1MP_P2.00mm_HorizontalJ_BTN5, J_BTN6, J_BTN7, J_BTN8
4MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3, H5
31uFPCM_JLCPCB:C_0402C8, C12, C15
3BSS138PCM_JLCPCB:Q_SOT-23Q1, Q2, Q3
2100kΩPCM_JLCPCB:R_0402R6, R7
210uFPCM_JLCPCB:C_0402C1, C13
212pFPCM_JLCPCB:C_0402C19, C20
220pFPCM_JLCPCB:C_0402C17, C18
220ΩPCM_JLCPCB:R_0603R8, R23
2330ΩPCM_JLCPCB:R_0402R4, R22
25.1kΩPCM_JLCPCB:R_0402R2, R5
2Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ3, J4
2JST PH 3-pin 2mmConnector_JST:JST_PH_B3B-PH-SM4-TB_1x03-1MP_P2.00mm_VerticalJ_IN2, J_OUT2
2SS33PCM_JLCPCB:D_SMAD1, D3
10ΩPCM_JLCPCB:R_0402R15
11MΩPCM_JLCPCB:R_0402R3
14.7kΩPCM_JLCPCB:R_0402R14
174LVC2G241Package_SO:VSSOP-8_2.3x2mm_P0.5mmU4
1AMS1117PCM_JLCPCB:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BRU3
1Conn_ARM_SWD_TagConnect_TC2030Connector:Tag-Connect_TC2030-IDC-FP_2x03_P1.27mm_VerticalJ2
1Connector, USB-TYPE-C-16PPCM_JLCPCB:TYPE-C-SMD_HX-TYPE-C-16PINJ5
1Q13FC1350000400PCM_JLCPCB:FC-135R_L3.2-W1.5X3
1RedPCM_JLCPCB:D_0603D2
1STM32F103C8T6PCM_JLCPCB:LQFP-48_7x7mm_P0.5mmU1
1Tactile Button, 160gfPCM_JLCPCB:SW_TS-1088-AR02016S1
1U_REG LD1117S50TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1X50328MSB2GIPCM_JLCPCB:CRYSTAL-SMD_L5.0-W3.2X2
1YellowPCM_JLCPCB:D_0603D4

Questions

How big is the DynaButton PCB?

It measures 48.3 × 52.9 mm and has 4 copper layers, 1.6 mm thick.

What parts does the DynaButton use?

68 parts, built around the STM32F103C8T6, 74LVC2G241GS, AMS1117 and BSS138. 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 DynaButton KiCad files?

From the manhoosbilli1/dynaboard-button-controller repository on GitHub, at the commit this page was made from: the board is DynaButton.kicad_pcb and its schematic DynaButton.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the DynaButton design in my own project?

Its repository states no licence, so its author keeps all rights: ask manhoosbilli1 before reusing the design.

Similar boards

  • 4 layers84 × 42 mmMFW007B, the printed circuit board in 3D

    MFW007B

    westrik/MFW007B

    NA-01 Rev B (for JLCPCB assembly)

    96 parts
  • 4 layers52.2 × 21.8 mmMyFirstPCB, the printed circuit board in 3D

    MyFirstPCB

    karaketir16/MyFirstPCB

    23 parts
  • 2 layers65 × 65.5 mmSchmatic, the printed circuit board in 3D

    Schmatic

    Yorha-7/Rocket

    in this repo we are simulating rocket basic physics and make a onboard flight computer which utilizes MCU, gyro, pressure sensor, fin servo controls, to get realtime target tracking abilities to a solid fuel rocket.

    77 parts
  • 4 layers100 × 74 mmBeaglelogic standalone, the printed circuit board in 3D

    Beaglelogic standalone

    abhishek-kakkar/beaglelogic-standalone

    BeagleLogic implemented as a turnkey and standalone logic analyzer

    260 parts15
  • 4 layers90 × 51.4 mmCharge bay, the printed circuit board in 3D

    Charge bay

    daveismith/charge-bay

    111 parts
  • 4 layers50 × 79.5 mmGD32-Devboard, the printed circuit board in 3D

    GD32-Devboard

    ConnorRigby/GD32-Devboard

    Simple GD32F405 Development board with CAN, SD Card, Lora, BLE and GPS

    106 parts
  • 4 layers90 × 70 mmInclinationMeter, the printed circuit board in 3D

    InclinationMeter

    soldernerd/InclinationMeter

    A battery-powered, Bluetooth-enabled precision electronic level instrument for machine tool geometry inspection and granite surface plate qualification.

    118 parts
  • 2 layers27.8 × 61.2 mmSTM32 Devboard, the printed circuit board in 3D

    STM32 Devboard

    tsk04/STM32-development-board

    KiCad schematic and PCB layout for an STM32 devboard

    39 parts