Skip to the content
PCBKitNew board
2 layers132.9 × 77.4 mmGBAKicad, the printed circuit board in 3D

Making my own controller!

Size
132.9 × 77.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
67
Nets
72
Pads
273
Tracks, vias
444, 53
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
11 Jun 2026
Updated
30 Jul 2026

Overview

GBAKicad is an open-source printed circuit board by ArxDraco007, from the ArxDraco007/ArxController repository on GitHub. It is a 2-layer board of 132.9 × 77.4 mm with 67 parts on 72 nets, routed with 444 tracks and 53 vias.

It is built around the ESP32-S3-WROOM-1-N8, AMS1117-3.3 and DW01A, with the MIC5219-3.3YM5 and TP4056-42-ESOP8 among its other parts. Its parts include 17 resistors, 16 switches, 13 capacitors, 5 ICs and 4 connectors. It belongs with the ESP32 boards of this library.

Main components

5

README

README.md

ArxController

What is this?

A fully custom controller. Customizable according to your console. Firmware, 3D Models, and PCB design.

Why did I make this?

Making your own controller is absolutely amazing! The process gives you a complete learning of wiring peripherals, Double LDO circuits, Battery charging protection, and the ESP32-WROOM module. This journey has been absolutely wonderful, and I would recommend this project for all intermediate PCB designers.

PICTURES-

image Screenshot 2026-06-17 020929 ArxControllerV2sleek ArxControllerV2Desert ArxControllerV2

Zine -

zine (6)

Build Instructions -

Soldering - Start by applying flux to the pads on the footprint where you'll be soldering. Tin one of the pads with a small amount of solder, then carefully place your component onto the footprint. Touch your iron to the tinned pad to reflow it and tack the component in place, then let go with your tweezers once it's sitting right. Move to the opposite pad and solder it properly to the component. Finally, go back to your first pad and add a bit more solder to make sure you've got a solid joint. Firmware - Plug in the ESP32-S3 via USB-C, select Board "ESP32S3 Dev Module" and the correct Port, hold BOOT while plugging in (or while pressing RESET) if it doesn't auto-detect, then click Upload to flash it, and finally press RESET or replug to run the new firmware.

BOM

ReferenceQtyValueFootprintSourceBuy Link
R2,R325.1kResistor_SMD:R_0603_1608MetricRobu.inLink
R411.2kResistor_SMD:R_0603_1608MetricLCSCLink
R5,R6,R731kResistor_SMD:R_0603_1608MetricRobu.inLink
R8,R92100RResistor_SMD:R_0603_1608MetricLCSCLink
R10,R11,R12,R13,R14,R15,R167100kResistor_SMD:R_0603_1608MetricRobu.inLink
SW11EN (Tactile SMD)Button_Switch_SMD:SW_SPST_TS-1088-xR020LCSCLink
SW21SW_PWR (Header)Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalRobu.inLink
SW31BOOT (Tactile SMD)custom_footprints:SW_SPST_TS-1088-xR020LCSCLink
SW41BTN_L (Shoulder switch)custom_footprints:TS-1224VWLCSCLink
SW51BTN_UP (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW61BTN_LEFT (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW71BTN_DOWN (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW81BTN_RIGHT (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW91BTN_START (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW101BTN_R (Shoulder switch)custom_footprints:TS-1224VWLCSCLink
SW111BTN_X (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW121BTN_A (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW131BTN_B (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW141BTN_Y (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW151BTN_SELECT (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
SW161BTN_SYS (Tactile 8mm)custom_footprints:SW_PUSH_8mm_H5mm_customRobu.inLink
TP1,TP3,TP53TestPointTestPoint:TestPoint_Pad_D2.0mmRobu.inLink
TP41AMS_3V3 (TestPoint)TestPoint:TestPoint_Pad_D2.0mmRobu.inLink
U11ESP32-S3-WROOM-1-N16R8RF_Module:ESP32-S3-WROOM-1Robu.inLink
U21MIC5219-3.3YM5Package_TO_SOT_SMD:SOT-23-5Robu.inLink
U31TP4056-42-ESOP8Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.41x3.3mm_ThermalViasRobu.inLink
U41DW01APackage_TO_SOT_SMD:SOT-23-6Robu.inLink
U51AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2Robu.inLink
U61PCM5102APWRTSSOP-20Robu.inLink
U71TPA2012D2QFN-16LCSCLink
U81ILI9341 TFT 2.4/2.8" Display ModuleSPI 240x320LCSCLink
U91MAX17048G+T10SOT-23-6 (USOP-8)LCSCLink
U101XC6220 LDOSOT-23-5LCSCLink
-1microSD Card Slot (Push-Push)SMD microSD SocketRobu.inLink
-1USB-C Connector (16-pin)USB_C_Receptacle_USB2.0_16PRobu.inLink
HW1-HW44M3 × 22mm Machine ScrewMechanical:MountingHardwareelement14Link
HW5-HW84M3 Hex NutMechanical:MountingHardwareFlyRoboLink
FNIRSI HS-021SolderingSoldering IronFNIRSILink

Parts

67
QtyValueFootprintReferences
7100kResistor_SMD:R_0603_1608MetricR10, R11, R12, R13, R14, R15, R16
410uFCapacitor_SMD:C_0603_1608MetricC4, C5, C6, C10
4MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
3100nFCapacitor_SMD:C_0603_1608MetricC1, C3, C13
3100uFCapacitor_SMD:C_0603_1608MetricC7, C8, C9
31kResistor_SMD:R_0603_1608MetricR5, R6, R7
3TestPointTestPoint:TestPoint_Pad_D2.0mmTP1, TP3, TP5
2100RResistor_SMD:R_0603_1608MetricR8, R9
210kResistor_SMD:R_0603_1608MetricR1, R17
25.1kResistor_SMD:R_0603_1608MetricR2, R3
11.2kResistor_SMD:R_0603_1608MetricR4
110uFCapacitor_Tantalum_SMD:CP_EIA-3216-18_Kemet-AC11
122nFCapacitor_SMD:C_0603_1608MetricC2
122uFCapacitor_Tantalum_SMD:CP_EIA-3216-18_Kemet-AC12
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U5
1AMS_3V3TestPoint:TestPoint_Pad_D2.0mmTP4
1BATT_ConnConnector_JST:JST_ZH_S2B-ZR-SM4A-TF_1x02-1MP_P1.50mm_HorizontalJ2
1BLUELED_SMD:LED_0603_1608MetricD2
1BOOTcustom_footprints:SW_SPST_TS-1088-xR020SW3
1BTN_Acustom_footprints:SW_PUSH_8mm_H5mm_customSW12
1BTN_Bcustom_footprints:SW_PUSH_8mm_H5mm_customSW13
1BTN_DOWNcustom_footprints:SW_PUSH_8mm_H5mm_customSW7
1BTN_Lcustom_footprints:TS-1224VWSW4
1BTN_LEFTcustom_footprints:SW_PUSH_8mm_H5mm_customSW6
1BTN_Rcustom_footprints:TS-1224VWSW10
1BTN_RIGHTcustom_footprints:SW_PUSH_8mm_H5mm_customSW8
1BTN_SELECTcustom_footprints:SW_PUSH_8mm_H5mm_customSW15
1BTN_STARTcustom_footprints:SW_PUSH_8mm_H5mm_customSW9
1BTN_SYScustom_footprints:SW_PUSH_8mm_H5mm_customSW16
1BTN_UPcustom_footprints:SW_PUSH_8mm_H5mm_customSW5
1BTN_Xcustom_footprints:SW_PUSH_8mm_H5mm_customSW11
1BTN_Ycustom_footprints:SW_PUSH_8mm_H5mm_customSW14
1DW01APackage_TO_SOT_SMD:SOT-23-6U4
1ENButton_Switch_SMD:SW_SPST_TS-1088-xR020SW1
1ESP32-S3-WROOM-1RF_Module:ESP32-S3-WROOM-1U1
1JumperResistor_SMD:R_0603_1608MetricJ3
1MIC5219-3.3YM5Package_TO_SOT_SMD:SOT-23-5U2
1OLED_Conncustom_footprints:OLED128x32_1x04_P2.54mm_socketJ4
1PMOSPackage_TO_SOT_SMD:SOT-23Q2
1REDLED_SMD:LED_0603_1608MetricD1
1SW_PWRConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalSW2
1TP4056-42-ESOP8Package_SO:SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.41x3.3mm_ThermalViasU3
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalJ1
1~custom_footprints:SOT-23-6L_TCPQ1

Questions

How big is the GBAKicad PCB?

It measures 132.9 × 77.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the GBAKicad use?

67 parts, built around the ESP32-S3-WROOM-1-N8, AMS1117-3.3, DW01A and MIC5219-3.3YM5. 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 GBAKicad KiCad files?

From the ArxDraco007/ArxController repository on GitHub, at the commit this page was made from: the board is PCB/GBAKicad.kicad_pcb and its schematic PCB/GBAKicad.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the GBAKicad design in my own project?

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

Similar boards

  • 2 layers147 × 105.9 mmWirelessControllerESP32, the printed circuit board in 3D

    WirelessControllerESP32

    EmmetGameDev/NevoltaNexusConsole

    Repository for design files and code for the Nexus console.

    66 parts4GPL-3.0
  • 4 layers340.8 × 104.6 mmNiphar, the printed circuit board in 3D

    Niphar

    mornepousse/Niphargus

    Niphargus — a slim, indestructible wireless split keyboard. ESP32 + nRF24, wired fallback, and an emergency kit hidden behind the USB port. The successor to the Rouge-Gorge.

    287 parts4MIT
  • 2 layers43 × 43 mmNew version, the printed circuit board in 3D

    New version

    Robopoly/Kit-Botanique

    76 parts
  • 2 layers55 × 45 mmSTM32-Walkie Talkie, the printed circuit board in 3D

    STM32-Walkie Talkie

    ANSHUMANDOCX/STM32-Walkie-Talkie

    This is a Walkie talkie made using STM32 and LoRa

    70 parts
  • 2 layers51.1 × 95 mmTalk e, the printed circuit board in 3D

    Talk e

    milovanpms/talk-e

    📻 — A simple LoRa-based talkie-walkie built on ESP32, operating on the 433 MHz frequency band for long-range, low-power wireless communication.

    75 parts4
  • 4 layers70.9 × 75 mmFlagshep Audio Player V1, the printed circuit board in 3D

    Flagshep Audio Player V1

    HYLDAIC/Flagshep-V1_Audio-Player

    A high fidelity semi-portable audio player student project with provided PCB files, 3D files and Code

    77 parts1CERN-OHL-P-2.0
  • 2 layers31.5 × 75 mmMcu board, the printed circuit board in 3D

    Mcu board

    0sleep/lwLIDAR

    Open-source light-weight 3D LiDAR based on a flexible PCB

    91 partsAGPL-3.0
  • 2 layersSmartWatch, the printed circuit board in 3D

    SmartWatch

    AhmedOsama21998/SmartWatch-ESP32-S3-PCB

    ESP32-S3 smartwatch PCB with Li-ion battery charging, protection, and power management. Work in progress; sensor integration is planned.

    34 parts