Learning how to create a custom Arduino PCB with JLCPCB is one of the most rewarding skills any maker or electronics student can develop. Moving from a breadboard prototype to a professional PCB transforms your project from a fragile tangle of wires into a compact, reliable, and repeatable product. In India, this has never been more accessible — free PCB design software like EasyEDA, combined with ultra-affordable PCB fabrication from JLCPCB (prices starting under ₹150 for 5 boards), means a custom Arduino shield or standalone board is within reach of any hobbyist. This guide walks you through the complete process: schematic capture, PCB layout, design rule checks, Gerber export, and ordering from JLCPCB.
Table of Contents
- Why Make a Custom PCB for Your Arduino Project?
- Tools and Software You’ll Need
- Step 1: Schematic Design in EasyEDA
- Step 2: PCB Layout and Routing
- Step 3: Design Rule Check and Gerber Export
- Step 4: Ordering from JLCPCB
- Step 5: Soldering and Testing Your Board
- Pro Tips for Better PCB Designs
- FAQ
Why Make a Custom PCB for Your Arduino Project?
When your Arduino project grows beyond a breadboard, you face real engineering challenges: loose connections, noise from long jumper wires, mechanical fragility, and difficulty replicating the design. A custom PCB solves all of these problems simultaneously:
- Reliability: Soldered connections are far more reliable than breadboard contacts, which can loosen or oxidize
- Compactness: A 2-layer PCB can reduce a breadboard project to 1/10th the size
- Repeatability: Order multiple identical boards for batch production or to share with collaborators
- Signal integrity: Proper ground planes, controlled impedance traces, and decoupling capacitors placed close to ICs dramatically reduce noise
- Professionalism: A PCB with silkscreen labels and a custom board outline looks product-ready, not prototype-y
- Cost: For quantities of 5+, a custom PCB often costs LESS than buying individual breakout boards from a store
For Indian makers building products for Kickstarter, local sale, or engineering competitions, a custom PCB is often the difference between a student project and a fundable product.
Tools and Software You’ll Need
Software (all free)
- EasyEDA (online or desktop): Browser-based PCB design tool tightly integrated with JLCPCB and LCSC component sourcing. No installation required. easyeda.com
- KiCad (optional alternative): Open-source PCB design suite, more powerful but steeper learning curve. Excellent for complex designs.
- Arduino IDE: For firmware development that runs on your custom board
Hardware for Soldering
- Temperature-controlled soldering iron (recommended: Hakko FX-888D or a Chinese equivalent with temperature control)
- 60/40 or 63/37 rosin-core solder, 0.6–0.8 mm diameter
- Flux pen (no-clean type) for SMD soldering
- Tweezers for SMD components
- Magnifying glass or USB microscope for inspecting fine-pitch joints
- Multimeter for continuity testing
Step 1: Schematic Design in EasyEDA
The schematic is the electrical blueprint of your circuit. It defines what components are used and how they connect, without specifying physical placement. Here’s how to create one in EasyEDA:
Create a New Project
- Go to easyeda.com and create a free account
- Click “New Project” → give it a name (e.g., “Custom Arduino Uno Clone”)
- Inside the project, click “New Schematic”
Place Components
For a minimal Arduino Uno clone (ATmega328P-based), you’ll need:
- ATmega328P-PU (DIP-28) or ATmega328P-AU (TQFP-32 for SMD)
- 16 MHz crystal oscillator + 2× 22pF capacitors
- 100nF decoupling capacitors (one per power pin pair)
- 10kΩ pull-up resistor for RESET
- 7805 voltage regulator (or AMS1117-5.0 for SMD)
- Power filtering capacitors (10µF + 100nF)
- CH340G USB-to-UART chip (for programming via USB)
- ICSP header (6-pin 2.54mm) for bootloader burning
- Pin headers for I/O (or you can add Arduino shield footprints)
Use the EasyEDA search (Place → Component, or press Shift+F) to search LCSC’s component library — every component automatically links to a real purchasable part with stock information and pricing. For standard passives (resistors, capacitors), filter by “Basic Parts” to find components that JLCPCB always has in stock for assembled orders.
Draw Connections (Nets)
Use the wire tool (W key) to connect component pins. Give meaningful net names to power rails: VCC, GND, +5V, AVCC. Use power symbols (Place → Power Port) for VCC and GND — these create implicit connections across the schematic without drawing long wires.
Add Net Labels
For the ATmega328P, connect:
- Pin 7 (VCC) + Pin 20 (AVCC) → VCC with 100nF decoupling caps to GND
- Pin 8 (GND) + Pin 22 (GND) → GND
- Pin 9 (XTAL1) + Pin 10 (XTAL2) → crystal oscillator
- Pin 1 (RESET) → 10kΩ pull-up to VCC + optional reset button to GND
- Pins 2–3 (RXD/TXD) → CH340G TX/RX (note: cross-connect RX to TX)
Step 2: PCB Layout and Routing
After completing the schematic, click “Design” → “Convert to PCB” (or use the schematic-to-PCB button). EasyEDA will place all components in a pile with ratsnest lines (thin blue lines showing connections to be routed).
Set Board Outline
Draw your board outline on the “Edge.Cuts” layer (or “Board Outline” layer in EasyEDA). For an Arduino Uno shield, use the standard 53.34 × 68.58 mm outline with the characteristic notch at the top — EasyEDA has an Uno shield template available.
Component Placement Strategy
- Place the ATmega328P centrally
- Place crystal and load capacitors as close as possible to the XTAL pins (max 5mm trace length)
- Place decoupling capacitors immediately adjacent to VCC/GND pins of each IC
- Place the CH340G near the USB connector to minimize USB signal trace length
- Place voltage regulator near the power input (barrel jack or VIN header)
- Place I/O headers at the PCB edges for accessibility
Routing
For a 2-layer board (the JLCPCB default):
- Top layer (red): Signal traces for most connections
- Bottom layer (blue): Ground plane — place a copper pour on the bottom layer tied to GND
- Minimum trace width: 0.2 mm for signals, 0.5–1 mm for power traces carrying >100 mA
- Via size: 0.8 mm outer / 0.4 mm drill for standard vias
Use EasyEDA’s auto-router as a starting point, then manually clean up power traces and critical signal paths. The auto-router often creates unnecessarily long routes — always review and improve manually.
Add Copper Pour (Ground Plane)
Select the bottom copper layer, use the Copper Area tool, draw around the board outline, set “Net” to GND, and click “Rebuild Copper Area”. A solid ground plane reduces EMI, improves signal integrity, and provides a low-impedance return path for all signals.
Step 3: Design Rule Check and Gerber Export
Design Rule Check (DRC)
Before ordering, run the DRC to catch errors:
- Go to “Design” → “Design Rule Check”
- Use JLCPCB’s standard rules: min trace width 0.1 mm, min clearance 0.1 mm, min drill 0.2 mm, min annular ring 0.13 mm
- Fix all errors shown in red. Warnings (yellow) may be acceptable — review each one
Generate Gerber Files
- Go to “Fabrication” → “PCB Fabrication File (Gerber)”
- Select “No” for “Add JLCPCB Order Number” if you don’t want order numbers printed on the board (or choose a hidden location)
- Download the .zip file — it contains all Gerber layers: copper (GTL, GBL), solder mask (GTS, GBS), silkscreen (GTO, GBO), board outline (GKO), and drill file (DRL)
Step 4: Ordering from JLCPCB
JLCPCB is the most popular PCB fabrication service for makers worldwide, with extremely competitive pricing for small quantities. Here’s how to order:
- Go to jlcpcb.com and create an account
- Click “Order Now” → “Add Gerber File” and upload your .zip
- JLCPCB will auto-detect board dimensions and layer count
- Configure your order:
- Quantity: 5 (minimum, usually ≈$2 USD / ~₹170)
- Layers: 2
- PCB Thickness: 1.6 mm (standard)
- PCB Color: Green (cheapest), other colors add 1–2 days
- Surface Finish: HASL (lead-free) for standard; ENIG (gold) for fine-pitch SMD
- Copper Weight: 1 oz (35 µm) for most projects; 2 oz for high-current power boards
- Click “Save to Cart” → checkout. Shipping to India via JLCPCB’s “Global Standard Direct Line” typically costs $8–15 USD and takes 10–20 days. Express shipping (DHL/FedEx) is faster but more expensive.
Optional: JLCPCB SMT Assembly
JLCPCB also offers PCB assembly (PCBA) — they will place and solder SMD components for you. This is cost-effective for quantities of 5–30 boards. You provide a BOM (Bill of Materials) with LCSC part numbers and a CPL (Component Placement List) file from EasyEDA. All these files are auto-generated by EasyEDA → Fabrication → BOM/CPL Export. Basic parts in JLCPCB’s stock cost no assembly surcharge; extended parts cost ₹300 extra setup fee each.
Step 5: Soldering and Testing Your Board
Once your PCBs arrive (typically 2–3 weeks for standard shipping), it’s time to assemble:
Soldering Order
- SMD components first (if any): Smallest first (0402 passives), then larger ICs. Use flux and drag-soldering or hot air for TQFP packages.
- Through-hole ICs: ATmega328P DIP socket, voltage regulators
- Crystal oscillator
- Connectors and headers last: USB connector, ICSP header, pin headers
Bootloader Burning
A bare ATmega328P chip does not have the Arduino bootloader. You need to burn it using:
- Another Arduino as ISP: Connect ICSP headers, use Arduino IDE → Tools → Burn Bootloader
- USBtinyISP or USBasp programmer
- Atmel ICE (for production environments)
First Power-On Test
- Check for shorts between VCC and GND with a multimeter before applying power
- Apply power (5V via USB or regulated supply) and verify voltages at key test points
- Upload a Blink sketch via the ICSP header (before burning bootloader) or via USB (after)
- If upload succeeds and the LED blinks, your custom Arduino PCB is working!
Pro Tips for Better PCB Designs
- Silkscreen labels matter: Label all test points (TP1, TP2…), connector polarity (+/-), and IC orientation (pin 1 dot). Future-you will thank present-you.
- Add fiducials: Three 1 mm copper circles (no mask) at three corners help pick-and-place machines during SMT assembly.
- Use 0.1″ (2.54mm) pitch headers: They’re compatible with standard jumper wires, breadboards, and female-to-female Dupont cables for debugging.
- Reserve a UART for debugging: Even if your design uses the MCU’s main UART for the application, keep one UART available (or use SoftwareSerial) on a 3-pin header for debug output.
- Keep USB traces short and matched: USB D+ and D- differential pairs should be <30 mm, matched to within 0.1 mm in length, and routed away from switching signals.
- Order PCB view from JLCPCB: Before placing the order, use JLCPCB’s free Gerber viewer to visually inspect all layers and catch silkscreen or orientation errors before fabrication.
- Panelize for efficiency: If you need multiple boards, panelize them in EasyEDA (place multiple copies in a panel with V-score or mouse-bite breakaway tabs) to reduce per-board cost.
FAQ
Is EasyEDA free to use for commercial projects?
Yes. EasyEDA is completely free for both personal and commercial use. There are no license fees, board size limits, or feature paywalls. The business model relies on JLCPCB and LCSC integration — EasyEDA earns revenue when you order PCBs or components through their platform, not from software licensing.
How long does it take to receive PCBs from JLCPCB in India?
Production time is 2–5 business days for standard 2-layer PCBs. Shipping to India via JLCPCB’s Global Standard Direct Line (typically DHL eCommerce or India Post) takes 10–20 days. Express options (DHL Express) deliver in 3–7 days but cost significantly more. Total lead time: plan for 2–4 weeks for budget shipping.
Do I need to pay customs duty on PCBs imported from JLCPCB?
Technically, yes — PCBs are subject to India’s standard import duties (basic customs duty + IGST). For small orders (5–10 boards under ₹5,000 total), customs usually waves small shipments through without assessment. For larger orders, factor in approximately 18–28% in duties and IGST when comparing JLCPCB prices to Indian PCB fabricators.
Can I use KiCad instead of EasyEDA and still order from JLCPCB?
Absolutely. JLCPCB accepts standard Gerber files from any PCB design tool. Export Gerbers from KiCad using File → Fabrication Outputs → Gerbers (use JLCPCB’s recommended KiCad settings from their documentation). For PCBA assembly, you’ll also need to export the BOM (LCSC part numbers) and CPL (centroid/placement) file — KiCad supports these exports natively.
What’s the minimum trace width I should use for Arduino-level signals?
JLCPCB can manufacture traces as thin as 0.1 mm (100 µm), but for reliability and ease of manufacturing, use 0.15–0.2 mm for signal traces and 0.5–1 mm for power traces. For 3.3V/5V power rails carrying up to 500 mA, a 0.5 mm trace is sufficient. For USB differential pairs, 0.2 mm with 0.2 mm spacing achieves approximately 90Ω differential impedance on a standard 1.6 mm FR4 board.
Ready to move from breadboard to PCB? Browse our complete selection of Arduino boards and development kits at Zbotic to start prototyping your next custom PCB design. All boards in stock with fast delivery across India.
Add comment