Skip to the content
PCBKitNew board
2 layers112.5 × 85.5 mmCantactpro, the printed circuit board in 3D

ProtoPCB Code and Evaluation Files

Size
112.5 × 85.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
99
Nets
130
Pads
371
Tracks, vias
854, 57
Pours
4
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
10 Dec 2024
Updated
11 Feb 2025

Overview

Cantactpro is an open-source printed circuit board by humancomputerintegration, from the humancomputerintegration/ProtoPCB repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 112.5 × 85.5 mm with 99 parts on 130 nets, routed with 854 tracks and 57 vias.

It is built around the LPC54616J512BD100E, MCP25612FD-E/SL and NCV7356D1, with the ROE-0505S, 74LVC1G3157 and NUP2125WT among its other parts. Its parts include 34 capacitors, 15 resistors, 12 ICs, 6 diodes and 4 connectors. It belongs with the NXP (LPC, Kinetis, i.MX RT) boards of this library.

Main components

9

README

README.md

ProtoPCB

project overview figure

This repository contains our tests, evaluation files, and software tool (ProtoPCB) presented in the paper "ProtoPCB: Reclaiming Printed Circuit Board E-waste as Prototyping Material", which will appear at CHI2025. This tool was built by Jasmine Lu (@xjasminelu), Sai Rishitha Boddu (@rishiboddu) with project assistance from Pedro Lopes at the University of Chicago's Human Computer Integration Lab.

ProtoPCB Software

ProtoPCB is a python-based tool that builds off of KiCad command line tools, Tkinter, OpenCV, CairoSVG, and pcb-tools. It is designed to support analyzing PCB Boards to identify ways they can be reused to implement new circuits. It does so by taking an input schematic and using computer vision to scan boards for their solder pads, conducting traces, and vias in order to map out the relevant connections of the board. Using this mapping, it analyzes all the methods that can be used to implement a circuit (positions to place a component, wires to add, traces to cut, etc.).

Features Overview

PCB Board representation

Component representation

Net representation

Circuit representation

Component matching

Net matching

Circuit matching

GUI

Camera Image to ProtoPCB Input

Test Suite

Repository Organization

Code

Code is organized in the code directory. This includes ProtoPCB's base code (scripts, GUI, test suite). You can use this to run technical evaluations (via scripts in tests.py).

Evaluation Files

All files and data for the Technical Evaluation (PCB boards) can be found in the [Evaluation Files](./Evaluation Files) directory

Installation

To use ProtoPCB, you must have installed KiCad and Python3 on your machine. The system was built primarily with Mac OS. It has not been tested yet on Windows so some elements may not port over well. If you're interested in collaborating on a Windows version, please reach out!

Detailed instructions can be found on the page INSTALL.md

Contributing

Submitting issues

As this tool was born out of a research project, it is a prototype. However, we'd love to hear about any bugs you might encounter during use of our tool. We encourage you to submit any issues that arise and we'll do our best to get around to them. Please note that there is only one (very busy) PhD student who will be able to provide support, so please extend us grace with any issues you encounter!

How to contribute

(adapted from Clipy)

  1. Fork it ( https://github.com/humancomputerintegration/ProtoPCB/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

License & Citation

ProtoPCB is released under the GNU GPL V3. We would love to have you build off our work! Please reach out if we can be helpful in that.

When using or building upon this work in an academic publication, please consider citing as follows:

Jasmine Lu, Sai Rishitha Boddu, and Pedro Lopes. 2025. ProtoPCB: Reclaiming Printed Circuit Board E-waste as Prototyping Material. In Proceedings of the CHI Conference on Human Factors in Computing Systems 2025 (CHI’2025). Association for Computing Machinery, New York, NY, USA. https://doi.org/10.1145/3586183.3606745

Contact

For questions or if something is wrong with this repository, contact jasminelu@uchicago.edu

Parts

99
QtyValueFootprintReferences
16TESTMeasurement_Points:Measurement_Point_Round-TH_SmallTP1, TP2, TP3, TP4, TP5, TP6, TP7, TP8, TP9, TP10, TP11, TP12, TP13, TP14, TP15, TP16
140.1uCapacitors_SMD:C_0603C4, C7, C8, C9, C11, C14, C16, C18, C20, C22, C24, C26, C28, C32
90.01uCapacitors_SMD:C_0603C13, C15, C17, C19, C21, C23, C25, C27, C29
7100Resistors_SMD:R_0603R1, R2, R3, R4, R5, R6, R7
4Light Pipecantactpro:SLP3-150-zzz-xLP1, LP2, LP3, LP4
4MOUNT_HOLEMounting_Holes:MountingHole_3.2mm_M3H1, H2, H3, H4
310kResistors_SMD:R_0603R8, R14, R15
34.7uCapacitors_SMD:C_0805C1, C2, C33
2100pCapacitors_SMD:C_0603C10, C12
210uCapacitors_SMD:C_0805C3, C34
22.7kResistors_SMD:R_0603R9, R10
233pCapacitors_SMD:C_0603C30, C31
2470 pF/5 kVCapacitors_SMD:C_1812C5, C6
274LVC1G3157TO_SOT_Packages_SMD:SOT-363_SC-70-6U6, U11
2DB9cantactpro:LD09PJ2, J3
2LED_GRNLEDs:LED_0603D1, D3
2LED_REDLEDs:LED_0603D2, D4
2NUP2125TO_SOT_Packages_SMD:SC-70U9, U10
10Resistors_SMD:R_0603R12
112 MHzcantactpro:CSM-3XY1
112.4kResistors_SMD:R_0603R13
11kResistors_SMD:R_0603R11
14.7uInductors_SMD:L_0805L1
147uInductors_SMD:L_1206L2
1AP2114H-3.3TO_SOT_Packages_SMD:SOT-223U2
1Boot Switchcantactpro:TE_1825027-5JP1
1DDiodes_SMD:D_SMAD6
1ESD9X5cantactpro:SOD-923D5
1LPC54616J512BD100Housings_QFP:LQFP-100_14x14mm_Pitch0.5mmU12
1LTV-846cantactpro:SMD-16U5
1MCP25612FDHousings_SOIC:SOIC-14_3.9x8.7mm_Pitch1.27mmU8
1NCV7356D1Housings_SOIC:SOIC-8_3.9x4.9mm_Pitch1.27mmU7
1ROE-0505Scantactpro:ROE-0505SU3
1SWDPin_Headers:Pin_Header_Straight_2x05_Pitch1.27mmJ4
1Si864xHousings_SOIC:SOIC-16_3.9x9.9mm_Pitch1.27mmU4
1TPD2E2U06TO_SOT_Packages_SMD:SOT-553U1
1USB_BConnectors:USB_BJ1

Questions

How big is the Cantactpro PCB?

It measures 112.5 × 85.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Cantactpro use?

99 parts, built around the LPC54616J512BD100E, MCP25612FD-E/SL, NCV7356D1 and ROE-0505S. 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 Cantactpro KiCad files?

From the humancomputerintegration/ProtoPCB repository on GitHub, at the commit this page was made from: the board is Evaluation Files/Cantact/cantactpro.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Cantactpro design in my own project?

Its repository publishes it under the GPL-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).

More from humancomputerintegration/ProtoPCB

5
  • 2 layers31 × 13 mmBioAmp EXG Pill, the printed circuit board in 3D

    BioAmp EXG Pill

    humancomputerintegration/ProtoPCB

    ProtoPCB Code and Evaluation Files

    30 parts3GPL-3.0
  • 2 layers26 × 26 mmACS72x Breakout v11, the printed circuit board in 3D

    ACS72x Breakout v11

    humancomputerintegration/ProtoPCB

    ProtoPCB Code and Evaluation Files

    15 parts3GPL-3.0
  • 2 layers17 × 16.5 mmAdafruit VEML6070, the printed circuit board in 3D

    Adafruit VEML6070

    humancomputerintegration/ProtoPCB

    ProtoPCB Code and Evaluation Files

    12 parts3GPL-3.0
  • 2 layers16 × 19 mmAdafruit LM4040, the printed circuit board in 3D

    Adafruit LM4040

    humancomputerintegration/ProtoPCB

    ProtoPCB Code and Evaluation Files

    10 parts3GPL-3.0

Similar boards

  • 2 layers60 × 90 mmRaccoon, the printed circuit board in 3D

    Raccoon

    mickabrig7/raccoon

    The open-source car bus analyzer !

    62 parts10MIT
  • 2 layers70.1 × 45.8 mmSecant, the printed circuit board in 3D

    Secant

    ericevenchick/secant

    A two bus CAN tool based on the TI Tiva C microcontroller.

    55 parts4
  • 4 layers100 × 65 mmPowerBoard, the printed circuit board in 3D

    PowerBoard

    mgsin30/Robocon2025-PCB

    高専ロボコン2025のために製作した基板

    144 parts
  • 2 layers50 × 32 mmMmp, the printed circuit board in 3D

    Mmp

    mattbrejza/blackmagic-isolated

    65 parts3MIT
  • 2 layers47.8 × 43.7 mmL298 motor driver, the printed circuit board in 3D

    L298 motor driver

    yanntalhouarne/PCBs

    My PCB files (KiCAD and Gerber) for a few of my boards.

    55 parts
  • 2 layers66 × 51.5 mmWiFi Gate Controller, the printed circuit board in 3D

    WiFi Gate Controller

    mikelawrence/WiFi-Gate-Controller

    WiFi enabled Gate Controller Addon to US Automatic Gate Opener

    91 parts8MIT