
Thermometer R005
IgorCulafic/PCBSmith
Open-source PCB design tools: KiCad workflows, automatic routing, design review and laser fabrication. Working toward plain-language circuit-to-board design.

Open-source PCB design tools: KiCad workflows, automatic routing, design review and laser fabrication. Working toward plain-language circuit-to-board design.
Storage failed is an open-source printed circuit board by IgorCulafic, from the IgorCulafic/PCBSmith repository on GitHub, published under the AGPL-3.0 licence. It is a 2-layer board of 70 × 50 mm with 104 parts on 67 nets, routed with 323 tracks and 65 vias.
It is built around the RP2040, SHT45-AD1B-R3 and TUSB320LAIRWBR, with the W25Q16JVSSIQ, DM3AT-SF-PEJM5 and TPS2553DBVR-1 among its other parts. Its parts include 34 resistors, 30 capacitors, 11 ICs, 5 connectors and 5 switches. It belongs with the RP2040 boards of this library.
PCBSmith is an open-source tool for designing printed circuit boards. The long-term goal is to describe a circuit in plain language and get a checked schematic, board layout and manufacturing files. Today it combines a schematic editor prototype with KiCad-based workflows for automatic routing, design review and laser-fabricated boards.
It is under active development. The current tools support supervised engineering work: component choices, design decisions and physical testing still need a person.
Board gallery · Concept to board · Get started · Design workflow · Development
These are retained images from actual design projects. Captions distinguish CAD results, work in progress and physical fabrication.
The full gallery includes routing views, laser-artwork comparisons and a two-sided plated-hole test coupon.
An early single-sided laser test, photographed by the builder. The builder reported that the process worked and requested wider isolation channels for the next tests. This is a physical fabrication result; the newer trace-width and plating coupons are still awaiting measurements.
The main fabrication scope is single- and two-sided boards. Laser CAM currently supports documented straight-track/simple-pad geometry; unsupported cases are reported. See current scope and limits for the details. A clean CAD check does not establish component fit, circuit operation or a qualified fabrication process.
A finished render is one step in the process. Here is the same TraceLimits board moving from a dimensioned concept to real copper geometry and laser artwork:
The illustrated development walkthrough also shows the schematic, 3D inspection, pad-only coating mask and interactive BOM, then explains the physical measurements still to come. Download the working BOM example to open locally in a browser.
The maintained development setup is Python 3.12.12, uv 0.11.23 and KiCad 10 with its symbol and footprint libraries. See development setup for native-tool paths, optional dependencies and verification.
git clone https://github.com/IgorCulafic/PCBSmith.git
cd PCBSmith
uv sync --frozen --all-extras --python 3.12.12
uv run --frozen --all-extras pcbsmith-guipcbsmith-gui opens the schematic editor prototype. Native board generation, review, routing and delivery use the separate production CLI workflow.
To see CLI commands or run the standard developer checks:
uv run --frozen --all-extras pcbsmith --help
uv run --frozen --all-extras python -B tools/verify.py --output .pcbsmith/verification/first-runChoose a new verification output directory for each run. The standard checks cover the dependency lock, lint, types, architecture, workflow entry points and ordinary tests. The optional deep profile also requires live KiCad/ngspice tools.
PCBSmith is licensed under AGPL-3.0-or-later. Bundled KiCad library assets retain their own terms; see third-party notices.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 17 | 100nF | Capacitor_SMD:C_0603_1608Metric | C4, C5, C6, C7, C8, C10, C11, C13, C14, C17, C18, C19, C22, C23, C24, C25 +1 |
| 13 | 10k | Resistor_SMD:R_0603_1608Metric | R4, R5, R6, R7, R13, R14, R15, R16, R23, R24, R25, R29, R33 |
| 7 | 1k | Resistor_SMD:R_0603_1608Metric | R3, R17, R18, R26, R27, R28, R34 |
| 4 | 100k | Resistor_SMD:R_0603_1608Metric | R11, R12, R21, R22 |
| 4 | M3 NPTH | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 3 | 10uF | Capacitor_SMD:C_0805_2012Metric | C1, C26, C28 |
| 3 | 22R | Resistor_SMD:R_0603_1608Metric | R30, R31, R32 |
| 2 | 100R | Resistor_SMD:R_0603_1608Metric | R19, R20 |
| 2 | 15pF C0G | Capacitor_SMD:C_0603_1608Metric | C15, C16 |
| 2 | 1nF | Capacitor_SMD:C_0603_1608Metric | C29, C30 |
| 2 | 1uF | Capacitor_SMD:C_0805_2012Metric | C2, C3 |
| 2 | 1uF | Capacitor_SMD:C_0603_1608Metric | C12, C27 |
| 2 | 27R | Resistor_SMD:R_0603_1608Metric | R1, R2 |
| 2 | 2N7002,215 | Package_TO_SOT_SMD:SOT-23 | Q1, Q2 |
| 2 | 47uF | Capacitor_SMD:C_0805_2012Metric | C20, C21 |
| 2 | 59k 1% | Resistor_SMD:R_0603_1608Metric | R9, R10 |
| 2 | Molex 47053-1000 | Connector:FanPinHeader_1x04_P2.54mm_Vertical | J4, J5 |
| 2 | TPS2553DBVR | Package_TO_SOT_SMD:SOT-23-6 | U5, U6 |
| 1 | 150060BS75000 | LED_SMD:LED_0603_1608Metric | D3 |
| 1 | 150060GS75000 | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | 150060YS75000 | LED_SMD:LED_0603_1608Metric | D2 |
| 1 | 3V3 probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP2 |
| 1 | 600R@100MHz | Inductor_SMD:L_0603_1608Metric | FB1 |
| 1 | 900k | Resistor_SMD:R_0603_1608Metric | R8 |
| 1 | ABM8-272-T3 12MHz | Crystal:Crystal_SMD_Abracon_ABM8G-4Pin_3.2x2.5mm | Y1 |
| 1 | AP2112K-3.3TRG1 | Package_TO_SOT_SMD:SOT-23-5 | U3 |
| 1 | Adafruit 4440 OLED | PCBSmith_AeroSense:Adafruit_4440_OLED_Module | DS1 |
| 1 | B3F-1000 LOG | Button_Switch_THT:SW_PUSH_6mm_H4.3mm | SW3 |
| 1 | B3F-1000 MODE | Button_Switch_THT:SW_PUSH_6mm_H4.3mm | SW1 |
| 1 | B3F-1000 SELECT_ACK | Button_Switch_THT:SW_PUSH_6mm_H4.3mm | SW2 |
| 1 | B3U-1000P BOOTSEL | Button_Switch_SMD:SW_SPST_B3U-1000P | SW4 |
| 1 | B3U-1000P RESET | Button_Switch_SMD:SW_SPST_B3U-1000P | SW5 |
| 1 | DM3AT-SF-PEJM5 | Connector_Card:microSD_HC_Hirose_DM3AT-SF-PEJM5 | J3 |
| 1 | FAN1_5V probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP3 |
| 1 | FAN1_TACH probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP6 |
| 1 | FAN2_5V probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP4 |
| 1 | FAN2_TACH probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP7 |
| 1 | GND probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP5 |
| 1 | RP2040 | Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm_ThermalVias | U1 |
| 1 | SHT45-AD1B-R3 | PCBSmith_AeroSense:Sensirion_SHT45_NoCentralPad | U8 |
| 1 | TC2030-IDC-NL | Connector:Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_Vertical | J6 |
| 1 | TPD1E10B06DPYR | PCBSmith_AeroSense:TPD1E10B06_DPY2 | U9 |
| 1 | TPD2EUSB30DRTR | Package_TO_SOT_SMD:Texas_DRT-3 | U10 |
| 1 | TPD4E05U06DQAR | Package_SON:USON-10_2.5x1.0mm_P0.5mm | U11 |
| 1 | TUSB320LAIRWBR | PCBSmith_AeroSense:TUSB320_X2QFN12 | U4 |
| 1 | USB4105-GF-A | Connector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_Horizontal | J1 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U7 |
| 1 | VBUS probe pad | TestPoint:TestPoint_Pad_D1.0mm | TP1 |
| 1 | W25Q16JVSSIQ | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U2 |
It measures 70 × 50 mm and has 2 copper layers, 1.6 mm thick.
104 parts, built around the RP2040, SHT45-AD1B-R3, TUSB320LAIRWBR and W25Q16JVSSIQ. 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.
From the IgorCulafic/PCBSmith repository on GitHub, at the commit this page was made from: the board is outputs/aerosense-2f-r001/design/.pcbsmith/routing-checkpoints/storage-failed.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the AGPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

IgorCulafic/PCBSmith
Open-source PCB design tools: KiCad workflows, automatic routing, design review and laser fabrication. Working toward plain-language circuit-to-board design.

earlynerd/ELRS-haptics
Battery-powered attitude feedback for FPV flying, with eight haptic actuators around each wrist. An ESP32-C6 receives telemetry over ESP-NOW and controls eight M2003FC1AE/DRV2625 pods using the music robot's UART ring…

Fairank/FieldDock
Compact iPhone companion hardware: editable PCB, mechanical CAD and portable firmware. Engineering prototype; original work available for noncommercial use.

ut-ras/robomaster_hardware
Welcome! Please read the Wiki page for information on how to set up your computer and an overview of the projects in this repository.

ad4363/LuX-ray-PCBs
A repository containing KiCad schematic and pcb files for a wireless radiation detector testing interface

KaitoTLex/RoboRyo
This is team1280's replacement for the Robo Rio for more redundant and less annoying controls.

DanielCusi/MoonJelly-robotics-PCB
Robotics PCB designed for Eurobot used by Wolvineers.


Andreuxxx1977/esp32-p4
An open-hardware, actively cooled ESP32-P4 board for heavy multimedia work: a 2-lane MIPI camera, a 2-lane MIPI display, USB 2.0 High-Speed, 10/100 Ethernet, UHS-I microSD, 32 MB flash and 32 MB PSRAM.