IoT

PCB Design untuk IoT dengan KiCad: Schematic hingga Gerber

TOKEN

Desain PCB profesional untuk proyek IoT menggunakan KiCad โ€” dari schematic capture, layout, ground plane, decoupling capacitor, antenna design, hingga export file manufacturing

1. Mengapa Custom PCB untuk IoT?

Prototyping dengan breadboard dan jumper wire sangat bagus untuk development, tetapi untuk produksi atau proyek yang serius, custom PCB memberikan keunggulan yang signifikan: ukuran lebih kecil, koneksi lebih reliable, performa RF yang lebih baik, dan estetika yang profesional.

๐Ÿž
Breadboard / Perfboard
Prototyping
  • โœ… Cepat untuk prototyping
  • โœ… Murah dan mudah diubah
  • โŒ Tidak reliable untuk produksi
  • โŒ Koneksi longgar / noise tinggi
  • โŒ Ukuran besar
  • โŒ Performa RF buruk
๐Ÿ”ง
Custom PCB
Production-Ready
  • โœ… Koneksi solder permanen
  • โœ… Ukuran sangat kecil
  • โœ… Ground plane untuk noise rendah
  • โœ… Impedance control untuk RF
  • โœ… Bisa diproduksi massal
  • โœ… Terlihat profesional

Biaya PCB Custom di PCB Manufacturer

ParameterTypical ValueHarga (est.)
Ukuran50ร—50 mm (2-layer)$2-5 / 5 pcs
Ukuran100ร—100 mm (2-layer)$5-15 / 5 pcs
Ukuran50ร—50 mm (4-layer)$10-20 / 5 pcs
Lead time3-7 hari (standard)-
Lead time24-48 jam (express)+50-100%

2. Setup KiCad 8

Bash โ€” Install KiCad
# Linux (Ubuntu/Debian)
sudo add-apt-repository ppa:kicad/kicad-8.0-releases
sudo apt update
sudo apt install kicad

# macOS (Homebrew)
brew install --cask kicad

# Windows: Download dari https://www.kicad.org/download/windows/

# Install library tambahan (footprints, symbols)
# KiCad 8 sudah include semua library dasar
# Tapi bisa ditambah dari:
# https://componentsearchengine.com/
# https://snapeda.com/
# https://www.ultralibrarian.com/

# Setup design rules setelah buat project baru
# Preferences โ†’ Board Setup โ†’ Design Rules:
# - Minimum track width: 0.15mm (6 mil)
# - Minimum clearance: 0.15mm (6 mil)
# - Minimum via drill: 0.3mm
# - Via diameter: 0.6mm
# - Copper pour clearance: 0.3mm

KiCad Workflow

KiCad Design Workflow
๐Ÿ“
1. Schematic
Eeschema editor
๐Ÿ”—
2. Netlist
Koneksi list
๐Ÿ“
3. PCB Layout
Pcbnew editor
โœ…
4. DRC/ERC
Design check
๐Ÿ“ฆ
5. Gerber
Manufacturing files

3. Schematic Capture

Schematic adalah "blueprint" dari desain elektronik. Di KiCad, kita menggunakan Eeschema editor untuk menggambar schematic. Pastikan menggunakan library standar KiCad atau custom library yang sudah di-setup.

Best Practices Schematic

Desain Power Supply untuk ESP32

KiCad Schematic Notes
Power Supply Circuit untuk ESP32 IoT Board:
=============================================

Input: USB-C (5V) atau Battery (3.7V LiPo)

1. USB-C Connector (USB_C_Power_Only)
   โ”œโ”€โ”€ VBUS (5V) โ†’ AMS1117-3.3 LDO Input
   โ”œโ”€โ”€ CC1 โ†’ 5.1kฮฉ โ†’ GND (for USB-C detection)
   โ”œโ”€โ”€ CC2 โ†’ 5.1kฮฉ โ†’ GND
   โ””โ”€โ”€ D+/D- โ†’ Data pins (opsional)

2. LDO Voltage Regulator (AMS1117-3.3)
   โ”œโ”€โ”€ Input:  5V (from USB) or 3.7V (from battery)
   โ”œโ”€โ”€ Output: 3.3V โ†’ main power rail (VCC_3V3)
   โ”œโ”€โ”€ Input cap:  10ยตF ceramic + 100nF
   โ””โ”€โ”€ Output cap: 22ยตF ceramic + 100nF

3. Battery Charging (TP4056 โ€” opsional)
   โ”œโ”€โ”€ B+ โ†’ Battery + (through protection IC)
   โ”œโ”€โ”€ B- โ†’ Battery -
   โ”œโ”€โ”€ OUT+ โ†’ 5V rail (when USB connected)
   โ””โ”€โ”€ Charge current: 1A (Rprog = 1.2kฮฉ)

4. Battery Protection (DW01A + FS8205)
   โ”œโ”€โ”€ Over-discharge: 2.5V cutoff
   โ”œโ”€โ”€ Over-charge: 4.25V cutoff
   โ””โ”€โ”€ Over-current: 3A cutoff

5. Power Path (USB/Battery switch)
   โ”œโ”€โ”€ Schottky diode (SS34) from USB
   โ”œโ”€โ”€ Schottky diode (SS34) from battery
   โ””โ”€โ”€ Both feed into LDO input

4. PCB Layout & Routing

PCB layout adalah proses menempatkan komponen (placement) dan menghubungkannya dengan copper traces (routing). Layout yang baik sangat mempengaruhi performa, terutama untuk sinyal RF dan high-speed digital.

Placement Strategy untuk ESP32 Board

  1. MCU di tengah: ESP32 modul (ESP32-WROOM-32) di center PCB
  2. Power di satu sisi: USB connector, LDO, battery di edge
  3. Sensor di sisi lain: Sensor breakout di edge yang berbeda
  4. Antenna clearance: Kosongkan area di bawah/belakang antenna
  5. Decoupling dekat pin: 100nF capacitor < 5mm dari VCC pin

Track Width Guidelines

KoneksiMinimum WidthRecommendedCatatan
Signal (digital)0.15mm (6mil)0.2mm (8mil)GPIO, SPI, I2C
Signal (analog)0.2mm (8mil)0.25mm (10mil)ADC, sensor
Power (3.3V)0.3mm (12mil)0.5mm (20mil)Tergantung arus
Power (GND)Full planeGround planeCopper pour
USB (D+/D-)0.15mm (6mil)0.2mm (8mil)Differential pair, 90ฮฉ impedance
RF (WiFi antenna)0.5mm (20mil)Matched impedance50ฮฉ, coplanar waveguide

Via dan Layer

Tipe PCBLayersHargaKapan Pakai
2-layerTop + BottomMurahSimple IoT board, sensor node
4-layerTop + GND + Power + Bottom2-3x lebih mahalESP32 board, high-speed
6-layer6 copper layers5-10x lebih mahalHampir tidak perlu untuk IoT

5. Ground Plane & Power Distribution

Ground plane adalah lapisan tembaga yang solid yang berfungsi sebagai referensi ground untuk semua sinyal. Ground plane sangat penting untuk mengurangi noise, EMI, dan meningkatkan performa RF.

Prinsip Ground Plane

KiCad โ€” Ground Plane Setup
Langkah membuat Ground Plane di KiCad Pcbnew:

1. Buka PCB Editor (Pcbnew)

2. Add Fill Zone (Copper Pour):
   - Toolbar โ†’ "Add a filled zone" (ikon kotak dengan crosshatch)
   - Klik di corner PCB
   - Setting:
     * Layer: B.Cu (Bottom Copper) โ€” untuk 2-layer
     * Net: GND
     * Clearance: 0.3mm (12mil)
     * Minimum width: 0.15mm (6mil)
     * Thermal relief: Yes (untuk GND pad)
     * Corner mode: chamfer (45ยฐ lebih baik dari 90ยฐ)

3. Gambar zone boundary mengelilingi seluruh PCB

4. Tekan 'B' atau Edit โ†’ Fill All Zones untuk mengisi copper

5. Untuk top layer, buat zone lagi:
   - Layer: F.Cu (Front Copper)
   - Net: GND
   - Biasanya lebih kecil (jangan penuhi area antenna!)

6. Via stitching (ground via):
   - Tambahkan via GND setiap 5-10mm di area ground plane
   - Via: 0.3mm drill, 0.6mm diameter
   - Ini menghubungkan ground plane di kedua layer

7. Verify:
   - DRC check โ†’ pastikan tidak ada clearance violation
   - 3D View โ†’ visualisasi ground plane

6. Decoupling Capacitor

Decoupling capacitor adalah komponen paling penting dalam PCB design yang sering diabaikan oleh pemula. Tanpa decoupling yang baik, IC akan mengalami voltage spikes, noise, dan bahkan reset yang tidak terduga.

Panduan Decoupling

KomponenKapasitorJarak dari PinCatatan
ESP32 VDD3P3100nF + 10ยตF< 3mm (100nF)Setiap VDD pin
ESP32 VDD_SDIO100nF< 3mmUntuk SDIO
LDO Output22ยตF + 100nF< 5mmStability requirement
Crystal12pF ร— 2< 5mmLoad capacitance
Sensor I2C100nF< 5mmSetiap IC VCC
USB connector100nF + 4.7ยตF< 5mmUSB VBUS
๐Ÿ’ก Urutan Kapasitor

Saat men-decouple VCC pin IC, urutkan dari kapasitor kecil terdekat ke pin: 100nF (3mm dari pin) โ†’ 1ยตF (5mm) โ†’ 10ยตF (dekat power source). Kapasitor kecil menangani noise frekuensi tinggi, kapasitor besar menangani low-frequency ripple.

7. Antenna Design untuk IoT

Untuk board IoT WiFi/BLE, desain antenna sangat krusial. Performa radio sangat bergantung pada antenna design dan clearance area.

Jenis Antenna untuk IoT PCB

Tipe AntennaGainUkuranKapan Pakai
PCB Trace (meander)~2 dBi~15ร—15mmPaling umum, murah
Chip Antenna (SMD)~2-3 dBi3ร—1.5mmCompact, lebih mahal
U.FL ConnectorTergantung antennaConnector + antennaMaximum flexibility
Wire antenna (quarter-wave)~5 dBi~31mm (2.4GHz)Simple, high gain

Aturan Antenna Clearance

โš ๏ธ Jangan Pakai ESP32 Internal PCB Antenna Jika Ada Ground Plane

ESP32-WROOM-32 module sudah punya antenna on-module. Saat mendesain custom PCB, pastikan area di bawah modul ESP32 tidak ada copper (atas dan bawah). Ini termasuk ground plane! Gunakan keep-out area di KiCad untuk menandai area ini.

8. DFM: Design for Manufacturing

DFM memastikan PCB kamu bisa diproduksi dengan yield yang tinggi dan cost yang rendah. Setiap PCB manufacturer punya capability yang berbeda, tapi berikut adalah guidelines umum:

DFM Checklist

ParameterMinimum (Cheap)RecommendedCatatan
Minimum trace width0.15mm (6mil)0.2mm (8mil)Lebih lebar = lebih murah
Minimum clearance0.15mm (6mil)0.2mm (8mil)Jarak antar trace/pad
Minimum via drill0.2mm0.3mm0.2mm = special process
Minimum via annular ring0.15mm0.25mmCopper di sekitar via
Minimum hole-to-hole0.25mm0.5mmAntar via / mounting hole
Silkscreen width0.1mm0.15mmUntuk text dan label
Solder mask clearance0.05mm0.1mmMask dari pad edge

Component Placement DFM Rules

9. Export Gerber & Order PCB

Gerber adalah format file standar industri untuk manufacturing PCB. KiCad bisa export langsung ke format Gerber yang diterima oleh semua PCB manufacturer.

KiCad โ€” Export Gerber
Langkah Export Gerber di KiCad 8:

1. Buka PCB Editor (Pcbnew)

2. File โ†’ Fabrication Outputs โ†’ Gerbers (.gbr)
   Setting:
   โ”œโ”€โ”€ Format: Gerber X2 (atau RS-274X)
   โ”œโ”€โ”€ Units: mm
   โ”œโ”€โ”€ Precision: 4.6 (4 digit integer, 6 decimal)
   โ””โ”€โ”€ Layers to export:
       โ”œโ”€โ”€ F.Cu (Front Copper)
       โ”œโ”€โ”€ B.Cu (Back Copper)
       โ”œโ”€โ”€ F.SilkS (Front Silkscreen)
       โ”œโ”€โ”€ B.SilkS (Back Silkscreen)
       โ”œโ”€โ”€ F.Mask (Front Solder Mask)
       โ”œโ”€โ”€ B.Mask (Back Solder Mask)
       โ”œโ”€โ”€ F.Paste (Front Paste โ€” untuk stencil)
       โ”œโ”€โ”€ B.Paste (Back Paste)
       โ”œโ”€โ”€ Edge.Cuts (Board Outline)
       โ””โ”€โ”€ F.Fab (Front Fabrication โ€” opsional)

3. Output directory: fabrication/ (bisa custom)

4. Klik "Plot" โ†’ File .gbr akan ter-generate

5. Export Drill File:
   File โ†’ Fabrication Outputs โ†’ Drill Files (.drl)
   โ”œโ”€โ”€ Format: Excellon
   โ”œโ”€โ”€ Units: mm
   โ”œโ”€โ”€ Zeros format: Decimal format
   โ””โ”€โ”€ Map format: Gerber X2

6. Generate Job File:
   File โ†’ Fabrication Outputs โ†’ Component Placement (.pos)
   (Untuk assembly otomatis)

7. Zip semua file dan upload ke PCB manufacturer

PCB Manufacturer Populer

ManufacturerMin. OrderHarga (50ร—50mm)Lead Time
JLCPCB5 pcs$2 (2-layer)3-5 hari
PCBWay5 pcs$5 (2-layer)3-7 hari
AllPCB5 pcs$5 (2-layer)3-5 hari
Elecrow5 pcs$2 (2-layer)3-7 hari
๐Ÿ’ก Upload ke JLCPCB

Zip semua file Gerber (.gbr) dan drill (.drl) โ†’ upload ke jlcpcb.com โ†’ setting jumlah PCB, warna, ketebalan (1.6mm standard), dan copper weight (1oz standard) โ†’ order. PCB akan sampai ke Indonesia dalam 1-2 minggu via DHL/FedEx.

10. Quiz Pemahaman

Pertanyaan 1: Mengapa decoupling capacitor harus ditempatkan sangat dekat dengan pin VCC IC?

a) Menghemat ruang PCB
b) Mengurangi inductance (trace lebih pendek = inductance lebih kecil)
c) Mempercantik layout
d) Menghemat biaya kapasitor

Pertanyaan 2: Mengapa area di bawah antenna ESP32 harus bebas dari copper?

a) Untuk memudahkan soldering
b) Copper akan mengabsorb dan memantulkan sinyal RF, mengurangi performa antenna
c) Mengurangi biaya produksi
d) Tidak ada alasan khusus

Pertanyaan 3: Ground plane berfungsi untuk?

a) Mengurangi noise dan EMI
b) Meningkatkan kecepatan CPU
c) Menghemat copper
d) Menggantikan GND wire

Pertanyaan 4: File apa yang di-upload ke PCB manufacturer?

a) .kicad_pcb
b) .pdf schematic
c) Gerber files (.gbr) + Drill files (.drl)
d) .svg files

Pertanyaan 5: Minimum track width yang recommended untuk PCB IoT standard?

a) 0.05mm
b) 0.2mm (8 mil)
c) 1mm
d) 0.05mm
โ† SebelumnyaZigbee vs Thread vs Matter Selanjutnya โ†’ESP32 Web Bluetooth
๐Ÿ” Zoom
100%
๐ŸŽจ Tema