Usb proto
brainsmoke·usb_proto·pcb/usb_proto/project.kicad_pcb
About the Usb proto PCB
Usb proto is an open source STM32 PCB design by brainsmoke, published on GitHub under the CC-BY-4.0 license. It is a 2-layer board measuring 77 × 47 mm, with 80 components from 17 distinct parts.
Its main chip is the STM32F042G6Ux, from the STM32 family. Other key parts include the AP2112K-3.3 and USBLC6-2P6. By type, the board carries 57 connectors, 8 resistors, 4 switches, 4 diodes, 4 capacitors and 3 ICs.
It belongs with the usb & debug tools, keyboards and dev boards & breakouts designs in this gallery.
From the project
This repository contains a few boards aimed at rapid prototyping.
This repository contains a few boards aimed at rapid prototyping.
The main idea is to save time by providing often-used components and a microcontroller that can act as a USB-serial to UART (usb-cdc-acm) device, a HID keyboard/keypad or run other simple programs.
usbserial USB serial to UART adapter firmware, with RTS/DTR signals & reset/boot signals for directly programming ESP32s. usbhidkeymatrix USB HID Keypad firmware, for a keyboard matrix (max. 16 keys) usbhidkeymatrix USB HID Keypad firmware, for a keyboard matrix (max. 25 keys) usbhidsimple USB HID Keypad firmware for a few buttons…

Main components on the Usb proto
Usb proto bill of materials (BOM)
80 components, 17 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | STM32F042G6Ux | QFN-28_4x4mm_P0.5mm | U1 |
| 1 | AP2112K-3.3 | SOT-23-5 | U2 |
| 1 | USBLC6-2P6 | SOT-666 | U3 |
| 1 | USB_C_Receptacle_USB2.0 | USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 4 | Conn_01x21_Pin | PinHeader_1x21_P2.54mm_Vertical | J2, J3, J4, J5 |
| 42 | Conn_01x07_Pin | PinHeader_1x07_P2.54mm_Vertical | J6, J7, J8, J9, J10, J11, J12, J13 +34 |
| 1 | Conn_01x10_Pin | STM32IOHeader | J38 |
| 1 | ~ | SWDHeader_through_hole | J39 |
| 6 | Conn_01x01_Pin | PinSocket_1x01 | J40, J41, J42, J43, J44, J45 |
| 1 | Conn_01x02_Pin | PinHeader_1x02 | J46 |
| 1 | Conn_01x04_Pin | PinHeader_1x04 | J57 |
| 4 | SW_SPST | SW_Push_1P1T_NO_CK_KMR2 | SW1, SW2, SW3, SW4 |
| 4 | LED | LED_0603_1608Metric | D1, D2, D3, D4 |
| 4 | 1uF | C_0402_1005Metric | C1, C2, C3, C4 |
| 4 | 5.1k | R_0402_1005Metric | R1, R2, R3, R8 |
| 1 | 1k | R_0402_1005Metric | R4 |
| 3 | 330R | R_0402_1005Metric | R5, R6, R7 |
Usb proto design files
The KiCad project lives in the brainsmoke/usb_proto repository on GitHub; these links point at the commit this page was built from.
Usb proto: common questions
What microcontroller does the Usb proto use?
The Usb proto is built around the STM32F042G6Ux, from the STM32 family.
How big is the Usb proto PCB?
The Usb proto measures 77 × 47 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Usb proto?
80 components, from 17 distinct parts. The full bill of materials is listed on this page.
Where can I download the Usb proto design files?
From the brainsmoke/usb_proto repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the Usb proto design in my own project?
Yes, under the terms of its CC-BY-4.0 license, which brainsmoke chose for the repository.
Can I test firmware for the Usb proto without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug STM32 firmware against it before you order a PCB.
Similar boards
STM32
LumenPnP Motherboard
opulo-inc
149 × 95 mm296 parts4LCC-BY-SA-4.03.7kSTM32
AxxSolder
AxxAxx
39 × 82.5 mm122 parts2LGPL-3.01.7kSTM32
AIOC
skuep
21 × 31.5 mm47 parts2LMIT1.4kSTM32
Ferris
pierrechevalier83
208.8 × 86.8 mm102 parts2LSHL-2.11.3kSTM32
176 pin board
rusefi
61.8 × 73.2 mm76 parts2LGPL-3.01.2kSTM32
Brain board STM32F407
rusefi
61.8 × 73.2 mm69 parts2LGPL-3.01.2k