Skip to the content
PCBKitNew board
4 layers21 × 51 mmRP2040 CNC Controller, the printed circuit board in 3D

RP2040 CNC Controller

FallenFireGit/RP2040-Devboard

This repository contains my work with the RP2040 microcontroller, where I experimented with embedded programming, basic hardware integration, and peripherals like LEDs and buttons. It documents my learning process, including setup, coding, and troubleshooting, as I built a better understanding of how microcontrollers work in real-world applications

Size
21 × 51 mm
Copper layers
4
Thickness
1.6 mm
Parts
56
Nets
73
Pads
255
Tracks, vias
537, 49
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
6 Apr 2026
Updated
9 Jul 2026

Overview

RP2040 CNC Controller is an open-source printed circuit board by FallenFireGit, from the FallenFireGit/RP2040-Devboard repository on GitHub. It is a 4-layer board of 21 × 51 mm with 56 parts on 73 nets, routed with 537 tracks and 49 vias.

It is built around the RP2040, W25Q64JVZPIQ and AP2112K-3.3, with the SS14 among its other parts. Its parts include 21 capacitors, 16 resistors, 6 connectors, 4 ICs and 4 diodes. It belongs with the robots and motor control boards and the RP2040 boards of this library.

Main components

4

README

README.md
IMG_0135

RP2040 Board

Overview

This project is a fully custom PCB based on the RP2040 microcontroller, designed as an upgraded alternative to standard dev boards like the Raspberry Pi Pico.

The goal was to create a board that is:

  • More powerful
  • Easier to use during development
  • Capable of handling real-world applications (data logging, robotics, etc.)

Key Features

Storage

  • 8MB Flash (upgraded from 2MB)

  • MicroSD Card Slot

    • Supports data logging and large file storage
    • Can be used for applications like G-code handling

Interface & Controls

  • Boot Button – Easy entry into bootloader mode

  • Reset Button – Quick system reset during development

  • Status LED (Bi-color)

    • Indicates power / charging state
  • Master Power Switch

    • Fully cuts power to the board

Power System

  • LiPo Battery Support

    • Onboard charging circuit
  • ~600mA Current Capacity

    • Supports more demanding peripherals
  • 3.3V Enable Control (3V3_EN)

    • Allows software-controlled power management
  • Optimized Power Traces

    • Wider 3.3V and GND lines for:

      • Reduced resistance
      • Lower heat
      • Improved stability

Design Decisions

  • Switched to a higher current voltage regulator for better performance

  • Removed unnecessary components after redesign

  • Standardized passive components to 0603:

    • Easier assembly
    • Cheaper sourcing
    • Better repairability

PCB Design

  • 4-Layer PCB

    • Dedicated ground plane for cleaner routing
    • Improved signal integrity and stability
  • Double-sided component placement

    • Maximizes space efficiency

Images

IMG_0135 image Screenshot 2026-04-14 121702 Screenshot 2026-04-14 121847

Tools Used

  • PCB Design: KiCad (or replace with your tool)
  • Microcontroller: RP2040

Status

  • Schematic Complete
  • PCB Layout Complete
  • Manufacturing / Testing (Next Step)

Goals

  • Create a more capable RP2040 board than standard dev boards
  • Support battery-powered applications
  • Enable expandability through external storage

Acknowledgments

  • Inspired by the Raspberry Pi Pico
  • Built as part of Hack Club Stasis

BOM

Capacitors

  • 0.1uF capacitors 402 – 10
  • 1uF capacitors 402 – 2
  • 10uF capacitors 805 – 5
  • 22pF capacitors 402 – 2
  • 0.5uF capacitor 402 – 1
  • 100nF capacitor 402 – 1

Resistors

  • 5.1k resistors 603 – 2
  • 27.4 resistors 603 – 2
  • 100k resistors 603 – 2
  • 1k resistors 603 – 3
  • 10k resistors 603 – 2
  • 47k resistors 603 – 3
  • 200k resistor 603 – 1
  • 2k resistor 603 – 1

Total Price of Passive Components ~ $1.90 (Depends on who you buy it from)

Diodes & Clock ~ $1.16

  • SS14 diodes – 3 ~ $0.50 each
  • SB0603W diode – 1 ~ $0.40
    • 12MHz crystal – 1 ~ 0.70

Connectors / I/O ~ $4.75

  • USB-C receptacle (HRO TYPE-C-31-M-12) – 1
  • 1x20 pin headers (2.54mm) – 2
  • 1x3 pin header (2.54mm) – 1
  • 1x2 pin JST connector (PH series) – 1
  • MicroSD card slot – 1

Switches ~ $1.20

  • Push buttons (SPST) – 2
  • Slider switch – 1

ICs / Chips

  • RP2040 – 1 $0.92
  • MCP73831-2-OT (battery charger) – 1 $0.76
  • W25Q64JVZPIQ (flash memory) – 1 $1.44
  • AP2112K-3.3 (voltage regulator) – 1 $0.57
ComponentQuantityPrice (Est.)
Passives (Capacitors & Resistors)38$1.90
Diodes (SS14, SB0603W)4$0.90
Clock (12MHz Crystal)1$0.70
Connectors / I/O (USB-C, Headers, JST, MicroSD)6$4.75
Switches (Push buttons, Slider)3$1.20
RP2040 (Microcontroller)1$0.92
MCP73831-2-OT (Battery Charger)1$0.76
W25Q64JVZPIQ (Flash Memory)1$1.44
AP2112K-3.3 (Voltage Regulator)1$0.57
TOTAL56$13.14

Parts

56
QtyValueFootprintReferences
100.1uFCapacitor_SMD:C_0402_1005MetricC2, C3, C4, C5, C6, C7, C9, C11, C12, C17
510uFCapacitor_SMD:C_0805_2012MetricC13, C14, C19, C20, C21
31KResistor_SMD:R_0603_1608MetricR6, R9, R14
347KResistor_SMD:R_0603_1608MetricR8, R12, R13
3SS14Diode_SMD:D_SOD-123D1, D3, D4
2100KResistor_SMD:R_0603_1608MetricR5, R11
210KResistor_SMD:R_0603_1608MetricR7, R17
21uFCapacitor_SMD:C_0402_1005MetricC1, C10
222pFCapacitor_SMD:C_0402_1005MetricC15, C16
227.4Resistor_SMD:R_0402_1005MetricR3, R4
25.1KResistor_SMD:R_0603_1608MetricR1, R2
2Conn_01x20Connector_PinHeader_2.54mm:PinHeader_1x20_P2.54mm_VerticalJ2, J3
2SW_PushButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKBOOT, RESET
10.5uFCapacitor_SMD:C_0402_1005MetricC18
1100nFCapacitor_SMD:C_0402_1005MetricC22
112MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
1200KResistor_SMD:R_0603_1608MetricR10
12KResistor_SMD:R_0603_1608MetricR15
1AP2112K-3.3Package_TO_SOT_SMD:SOT-23-5U5
1Conn_01x02_PinConnector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_HorizontalJ6
1Conn_01x03Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ4
1LOGOLOGOG***
1MCP73831-2-OTPackage_TO_SOT_SMD:SOT-23-5U2
1Micro_SD_CardMicro_SD:Micro_SDJ5
1RP2040Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU1
1SW_SliderButton_Switch_SMD:SW_DIP_SPSTx01_Slide_6.7x4.1mm_W6.73mm_P2.54mm_LowProfile_JPinON
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1W25Q64JVZPIQPackage_SON:Winbond_USON-8-1EP_3x2mm_P0.5mm_EP0.2x1.6mmU3
1~Library:SB0603WC01RGD2

Questions

How big is the RP2040 CNC Controller PCB?

It measures 21 × 51 mm and has 4 copper layers, 1.6 mm thick.

What parts does the RP2040 CNC Controller use?

56 parts, built around the RP2040, W25Q64JVZPIQ, AP2112K-3.3 and SS14. 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 RP2040 CNC Controller KiCad files?

From the FallenFireGit/RP2040-Devboard repository on GitHub, at the commit this page was made from: the board is PCB Files/RP2040_CNC_Controller.kicad_pcb and its schematic PCB Files/RP2040_CNC_Controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the RP2040 CNC Controller design in my own project?

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

Similar boards

  • 4 layers70 × 72 mmSPINC AA Charger, the printed circuit board in 3D

    SPINC AA Charger

    CoretechR/SPINC

    DIY Automatic Battery Charger Using RP2040

    101 parts467GPL-3.0
  • 2 layers64 × 21.6 mmGamepad, the printed circuit board in 3D

    Gamepad

    CoretechR/DIY-Portrait-Mode-Gamepad

    A USB-C Gamepad for Portrait-Mode

    53 parts60GPL-3.0
  • 2 layers48.3 × 22.9 mmBuddhabox, the printed circuit board in 3D

    Buddhabox

    jonbro/aleatorium

    lua scriptable musicbox

    54 parts7
  • 2 layers62.6 × 20.9 mmCatkeeb devboard, the printed circuit board in 3D

    Catkeeb devboard

    acornitum/fucked-up-rp2040-devboard

    will be fixed sometime i swear

    40 parts1MIT
  • 4 layers121 × 66.5 mmTim, the printed circuit board in 3D

    Tim

    UMDBPP/bobot-2

    187 parts
  • 2 layers70 × 19 mmHackducky v1, the printed circuit board in 3D

    Hackducky v1

    hackclub/hackducky

    The hackclub themed USB rubber ducky ! - Check out hackducky

    45 parts33
  • 4 layers45.7 × 76.2 mmNode v5 0 0, the printed circuit board in 3D

    Node v5 0 0

    VTC-WISDOM/node_hardware

    Schematic/PCB designs for WiSDOM nodes, also includes a few other related hardware projects

    107 parts2CERN-OHL-W-2.0
  • 4 layers87.6 × 84 mmFlashover, the printed circuit board in 3D

    Flashover

    Cherry-Blossom-Development/GreywireStudio

    GreywireStudio - a combined software/hardware product

    95 parts