WIRING Trial-ready
Panduan Wiring — Mudah Dihubungkan
Dua jalur: (A) hand-wire untuk trial (modul + kabel Dupont/JST, tanpa PCB dulu) dan (B) PCB (konsolidasi). Semua koneksi sudah dipetakan dengan warna kabel agar gampang & tidak salah colok. Konsisten dengan Paket Skematik (netlist).
1Dua Cara Rakit
A · Hand-wire (TRIAL dulu)
- Pakai modul jadi (ESP32-S3 devkit, INMP441, MAX98357A, OLED, DS3231, Orange Pi Zero 2W).
- Sambung pakai kabel Dupont (female-female) & JST untuk yang bisa dilepas.
- Tanpa solder PCB → cepat divalidasi, gampang diperbaiki.
- Mulai dari sini sebelum beli/cetak PCB.
B · PCB (setelah trial OK)
- Pindahkan wiring yang sama ke PCB 46×90mm (lihat Paket Fabrikasi PCB).
- Konektor (JST/FFC/USB-C) menghadap cutout enclosure → kabel pendek & rapi.
- Footprint & netlist identik dengan tabel di sini.
Karena komponen sudah dibeli, mulai dengan cara A (hand-wire) untuk trial fungsi + jalankan firmware/orchestrator. Setelah semua jalan, baru fabrikasi PCB.
2Diagram Wiring
3Konvensi Warna Kabel
Pakai warna konsisten supaya tidak salah colok & mudah ditelusuri.
| Warna | Untuk | Warna | Untuk |
|---|---|---|---|
| Merah | +5V | Oranye | +3V3 |
| Hitam | GND | Kuning | Clock (SCK/BCLK/SCL) |
| Hijau | Word-select / SDA | Biru | Data (SD/DIN/USB) |
| Ungu | GPIO kontrol (WAKE/EN/LED) | Putih | Tombol / sinyal lain |
4Tabel Wiring Lengkap (ESP32-S3 ↔ modul)
🎙️ Mic INMP441 (I2S)
| Pin modul | Kabel | ke ESP32-S3 |
|---|---|---|
| VDD | oranye | 3V3 |
| GND | hitam | GND |
| SCK | kuning | GPIO4 |
| WS | hijau | GPIO5 |
| SD | biru | GPIO6 |
| L/R | hitam | GND (kanal kiri) |
🔊 Amplifier MAX98357A + speaker (I2S)
| Pin modul | Kabel | ke ESP32-S3 |
|---|---|---|
| Vin | merah | 5V |
| GND | hitam | GND |
| BCLK | kuning | GPIO7 |
| LRC | hijau | GPIO8 |
| DIN | biru | GPIO9 |
| SD (mode) | ungu | GPIO10 |
| OUT+ / OUT− | kabel speaker | → speaker 8Ω |
📟 Bus I2C bersama (OLED + RTC + gauge + haptic)
Keempat modul ini paralel di bus I2C yang sama — SDA & SCL dijejer (daisy-chain). Tambah pull-up 4,7kΩ ke 3V3 jika modul belum punya.
| Sinyal | Kabel | ESP32 | Ke (alamat) |
|---|---|---|---|
| VCC semua | oranye | 3V3 | OLED, RTC, gauge, haptic |
| GND semua | hitam | GND | — |
| SDA | hijau | GPIO17 | OLED 0x3C · RTC 0x68 · gauge 0x36 · haptic 0x5A |
| SCL | kuning | GPIO18 | (sama) |
| RTC INT | putih | GPIO11 | DS3231 INT/SQW |
| Haptic OUT | 2 kabel | — | DRV2605 → motor LRA |
🔘 Tombol (sisi lain semua ke GND) & LED
| Tombol | ESP32 | Tombol | ESP32 |
|---|---|---|---|
| PTT | GPIO1 | OK | GPIO2 |
| ▲ Up | GPIO15 | ▼ Down | GPIO16 |
| Soft-1 | GPIO38 | Soft-2 | GPIO39 |
| Power | GPIO0 | WS2812 LED DIN | GPIO48 |
Semua tombol: satu kaki ke GPIO, kaki lain ke GND (pakai pull-up internal ESP32, aktif-LOW). LED WS2812: VCC→5V, GND→GND, DIN→GPIO48.
5Wiring Daya
| Dari | Ke | Catatan |
|---|---|---|
| USB-C IN | BQ25895 VBUS | charge 5V; TVS proteksi |
| BQ25895 BAT | Baterai LiPo + | set 4,2V / arus ≤1C |
| BQ25895 SYS | Buck 5V & Buck 3V3 (VIN) | power-path |
| Buck 5V OUT | Orange Pi 5V · amp Vin | ≥1,5A |
| Buck 3V3 OUT | ESP32 3V3 · mic · OLED · RTC · gauge · haptic | ≥0,5A |
| GND | SEMUA komponen | satu ground bersama (wajib) |
Trik trial cepat: belum perlu BQ25895/baterai. Beri 5V dari 2 powerbank/USB: satu ke ESP32 devkit (5V→3V3 onboard), satu ke Orange Pi (USB-C). Sambungkan GND keduanya jadi satu. Setelah logika jalan, baru pasang charger + baterai.
Keselamatan: LiPo wajib ber-PCM. Jangan colok baterai sebelum tegangan rail dicek dengan multimeter. Jangan samakan 5V dan 3V3.
6Link ESP32 ↔ Orange Pi
| Koneksi | Kabel | Fungsi |
|---|---|---|
| ESP32 USB ↔ Orange Pi USB-C (OTG) | kabel USB | audio + perintah (USB-CDC, /dev/ttyACM0) |
| ESP32 GPIO21 → Orange Pi GPIO (header) | ungu | WAKE (bangunkan dari suspend) |
| Orange Pi GPIO → ESP32 GPIO14 | putih | READY (AI siap) |
| ESP32 GPIO13 → Buck 5V EN | ungu | matikan daya AI saat hemat |
| GND ESP32 ↔ GND Orange Pi | hitam | referensi sama (wajib) |
Untuk trial paling mudah: cukup kabel USB ESP32↔Orange Pi + 1 kabel GND. WAKE/READY/EN bisa ditambahkan setelah komunikasi USB-CDC jalan.
7Belanja Kabel/Konektor (untuk wiring mudah)
| Item | Qty | Untuk |
|---|---|---|
| Kabel Dupont female-female 10cm | 40 pcs | semua sinyal modul |
| Kabel Dupont female-male | 20 pcs | ke breadboard |
| Breadboard / protoboard | 1 | distribusi 3V3/GND |
| Konektor JST-PH 2P (kabel) | 3 set | baterai, speaker, motor |
| Kabel USB-C ↔ USB-A/native | 1 | link ESP32 ↔ Orange Pi |
| FFC 24-pin 0,5mm + breakout | 1 | (opsi) link low-profile ke PCB |
| Heat-shrink + label kabel | 1 lot | rapikan & tandai |
| Header pin 2,54mm (solder ke Orange Pi) | 1 | GPIO Orange Pi (belum tersolder) |
8Tips Wiring Mudah & Anti-Salah
Rapi & bisa dilepas
- Pakai JST untuk baterai/speaker/motor → gampang lepas-pasang.
- Power (3V3, GND) didistribusi lewat 2 rail breadboard, bukan colok langsung satu-satu.
- Label tiap kabel (washi/penanda) sesuai tabel.
Anti-salah
- Ikuti warna: merah=5V, oranye=3V3, hitam=GND — jangan tertukar.
- Cek alamat I2C dengan i2c-scan sebelum lanjut.
- Colok 1 modul, tes, baru modul berikutnya (jangan semua sekaligus).
- Ukur tegangan rail dengan multimeter sebelum colok modul.
9Urutan Tes Wiring
| # | Langkah | Cek |
|---|---|---|
| 1 | Beri 3V3 & GND ke ESP32, flash blink | LED hidup |
| 2 | Wiring I2C (OLED dulu), jalankan i2c-scan | muncul 0x3C |
| 3 | Tampilkan teks di OLED | "BUNAI" tampil |
| 4 | Tambah RTC, gauge, haptic ke bus I2C | 0x68, 0x36, 0x5A terbaca |
| 5 | Wiring mic I2S, baca level RMS | nilai berubah saat bicara |
| 6 | Wiring amp + speaker, putar nada | bunyi keluar |
| 7 | Tombol + LED WS2812 | tombol terbaca, LED warna |
| 8 | Link USB ke Orange Pi (+GND) | /dev/ttyACM0 muncul |
| 9 | Jalankan orchestrator end-to-end | suara → jawaban |
Cocokkan dengan Bunai_Build_Guide.html (langkah firmware & AI engine) dan Bunai_Simulator.html (uji logika dulu tanpa hardware). Project Bunai · Wiring v1.0.