⚡ Jawaban Singkat / Key Takeaways
Kamu bisa membangun alat sub-GHz fungsional setara Flipper Zero pakai Raspberry Pi Pico 2 (RP2350) dan modul CC1101 dengan total budget sekitar Rp200 ribuan. Alat ini membaca, menganalisis, dan (secara terkontrol) mentransmisikan sinyal di pita 315/433/868/915 MHz. Yang lebih penting: karena ini perangkat DIY rakitan sendiri, status hukumnya berbeda dari Flipper Zero jadi “radio apparatus” komersial tanpa sertifikasi. Kamu tetap harus patuhi regulasi spektrum lokal, tapi setidaknya lo nggak kena masalah impor atau penyitaan di perbatasan.
Masalahnya: Flipper Zero Semakin Sulit Didapat
Order dari Shopify dibatalkan. Paket dari luar negeri ditahan customs. Harga di marketplace lokal melambung ke Rp3-4 juta. Beberapa negara bahkan mulai mengkategorikan Flipper Zero sebagai perangkat radio ilegal. Contohnya, Kanada lewat ISED dan Radiocommunication Act sudah memblokir impor dan distribusi Flipper Zero sejak awal 2024. Brasil dan India punya pendekatan serupa.
Padahal kebutuhan untuk eksplorasi RF, penelitian keamanan IoT, dan sekadar memahami cara kerja protokol nirkabel tetap tinggi. Solusinya bukan menyerah. Solusinya: bikin sendiri.
Kenapa Raspberry Pi Pico 2, Bukan ESP32 atau Arduino?
Banyak tutorial DIY sub-GHz pakai ESP32 atau Arduino Nano. Tapi Pico 2 dengan chip RP2350 punya keunggulan yang jarang dibahas: dual-core ARM Cortex-M33 + Hazard3 RISC-V plus PIO (Programmable I/O) block. Ini game changer buat RF hacking.
PIO block memungkinkan kamu mengimplementasikan protokol SPI bit-banging yang deterministik tanpa overhead interrupt. Timing transmisi ke CC1101 bisa kamu kontrol per cycle clock. Di proyek RF, timing adalah segalanya. ESP32 yang menjalankan FreeRTOS kadang delay interrupt beberapa mikrodetik, cukup untuk merusak timing preamble transmisi OOK.
Selain itu, arsitektur dual-core RP2350 memungkinkan isolasi tugas: Core 0 menangani UI dan display OLED, Core 1 dedicated penuh untuk RF packet processing via SPI ke CC1101. Nggak ada context switching yang ganggu timing radio.
Bill of Materials (BOM): Komponen yang Kamu Butuhkan
Semua komponen tersedia di Tokopedia atau Shopee. Total budget di bawah Rp250.000, bahkan bisa lebih murah kalau kamu sudah punya breadboard dan kabel jumper.
- Raspberry Pi Pico 2 (RP2350) — Rp120.000 ~ Rp150.000
- Modul CC1101 (868 MHz atau 433 MHz) — Rp30.000 ~ Rp45.000
- Breadboard 400 titik + kabel jumper — Rp20.000 ~ Rp30.000
- OLED SSD1306 0.96″ I2C (opsional, buat display) — Rp25.000 ~ Rp35.000
- Baterai LiPo 3.7V 500mAh + TP4056 charger (opsional, buat portable) — Rp35.000 ~ Rp50.000
- Antena helical 433MHz / 868MHz (opsional, perkuat sinyal) — Rp10.000 ~ Rp20.000
Total estimasi: Rp180.000 (versi bare minimum) sampai Rp250.000 (versi portable lengkap). Bandingkan dengan Flipper Zero resmi yang sekarang Rp3.000.000+ di marketplace Indonesia.
Wiring: Hubungkan Pico 2 ke CC1101
CC1101 berkomunikasi lewat SPI. Pinout standar modul CC1101 (8-pin header) ke Raspberry Pi Pico 2 adalah sebagai berikut:
| CC1101 Pin | Pico 2 GPIO | Fungsi |
|---|---|---|
| VCC | 3V3 (Pin 36) | Power 3.3V |
| GND | GND (Pin 38) | Ground |
| MOSI (SI) | GP3 (SPI0 TX) | Master Out Slave In |
| MISO (SO) | GP4 (SPI0 RX) | Master In Slave Out |
| SCK (SCLK) | GP2 (SPI0 SCK) | Serial Clock |
| CSN (CS) | GP5 (SPI0 CSn) | Chip Select |
| GDO0 | GP6 | Interrupt / Data Ready |
| GDO2 | GP7 | Optional (RSSI / carrier sense) |
Peringatan penting: CC1101 bekerja di 3.3V logic. Jangan pernah hubungkan langsung ke 5V VBUS Pico, modul akan gosong. Selalu gunakan pin 3V3(OUT) di Pico.
Kalau kamu pakai OLED SSD1306 (I2C), wiring tambahannya simpel:
- OLED SDA → GP0 (I2C0 SDA)
- OLED SCL → GP1 (I2C0 SCL)
- OLED VCC → 3V3
- OLED GND → GND
Firmware Proof-of-Concept: Inisialisasi dan RX/TX Dasar
Berikut kerangka firmware menggunakan Raspberry Pi Pico C/C++ SDK. Kenapa C, bukan MicroPython? Karena kita butuh kontrol penuh atas timing SPI dan interrupt handling. MicroPython punya latency GC (garbage collection) yang bisa mengacaukan timing RF.
Langkah 1: Inisialisasi SPI dan CC1101
// spi_cc1101.c - Inisialisasi SPI0 untuk CC1101
#include "pico/stdlib.h"
#include "hardware/spi.h"
#define CC1101_CS_PIN 5
#define CC1101_GDO0_PIN 6
void cc1101_init_spi() {
spi_init(spi0, 4000000); // 4 MHz (CC1101 max 10 MHz)
gpio_set_function(2, GPIO_FUNC_SPI); // SCK
gpio_set_function(3, GPIO_FUNC_SPI); // MOSI
gpio_set_function(4, GPIO_FUNC_SPI); // MISO
gpio_init(CC1101_CS_PIN);
gpio_set_dir(CC1101_CS_PIN, GPIO_OUT);
gpio_put(CC1101_CS_PIN, 1); // CS high = inactive
gpio_init(CC1101_GDO0_PIN);
gpio_set_dir(CC1101_GDO0_PIN, GPIO_IN);
}
void cc1101_write_reg(uint8_t addr, uint8_t value) {
gpio_put(CC1101_CS_PIN, 0);
spi_write_blocking(spi0, &addr, 1);
spi_write_blocking(spi0, &value, 1);
gpio_put(CC1101_CS_PIN, 1);
}
uint8_t cc1101_read_reg(uint8_t addr) {
uint8_t data;
addr |= 0x80; // Read bit
gpio_put(CC1101_CS_PIN, 0);
spi_write_blocking(spi0, &addr, 1);
spi_read_blocking(spi0, 0x00, &data, 1);
gpio_put(CC1101_CS_PIN, 1);
return data;
}
Langkah 2: Konfigurasi Register CC1101 untuk 433 MHz
// Konfigurasi CC1101 untuk 433.92 MHz, 2-FSK, 38.4 kbps
void cc1101_config_433mhz() {
// Reset
cc1101_write_reg(0x30, 0x00); // SRES
// Frekuensi base: 433.92 MHz (dengan crystal 26 MHz)
cc1101_write_reg(0x0D, 0x10); // FREQ2
cc1101_write_reg(0x0E, 0xA7); // FREQ1
cc1101_write_reg(0x0F, 0x62); // FREQ0
// Modem config: 2-FSK, 38.4 kbps
cc1101_write_reg(0x10, 0x0A); // MDMCFG4
cc1101_write_reg(0x11, 0x7B); // MDMCFG3
cc1101_write_reg(0x12, 0x13); // MDMCFG2 (2-FSK)
cc1101_write_reg(0x13, 0x22); // MDMCFG1
// Packet config
cc1101_write_reg(0x06, 0x0C); // PKTCTRL0
// RX mode
cc1101_write_reg(0x00, 0x0C); // IOCFG0 - GDO0 asserts on sync word
}
Langkah 3: RX Loop dan Decode Protokol Sederhana
// RX loop: baca buffer RX FIFO saat GDO0 interrupt
void cc1101_rx_loop() {
while (1) {
if (gpio_get(CC1101_GDO0_PIN)) {
uint8_t rx_bytes = cc1101_read_reg(0x3B); // RXBYTES
if (rx_bytes > 0) {
uint8_t buf[64];
uint8_t cmd = 0xFF; // Burst read RX FIFO
gpio_put(CC1101_CS_PIN, 0);
spi_write_blocking(spi0, &cmd, 1);
spi_read_blocking(spi0, 0x00, buf, rx_bytes);
gpio_put(CC1101_CS_PIN, 1);
// Print hex dump ke serial
for (int i = 0; i < rx_bytes; i++) {
printf("%02X ", buf[i]);
}
printf("\n");
}
}
sleep_us(100);
}
}
Firmware di atas adalah minimum viable prototype. Kamu bisa memperluasnya untuk mendukung protokol umum seperti EV1527 (banyak dipakai di remote garasi), PT2262, atau Manchester encoding yang muncul di sensor doorbell 433 MHz.
Ini Bukan Sekadar "Flipper Zero Murahan"
Banyak yang mengira solusi DIY ini cuma alternatif budget buat yang nggak mampu beli Flipper Zero. Padahal ada keunggulan fundamental yang jarang disadari: kamu punya kontrol penuh atas stack firmware.
Flipper Zero dengan firmware stock atau custom seperti Momentum/Unleashed tetap berjalan di atas abstraction layer yang membatasi akses langsung ke register CC1101. Kalau kamu ingin mengimplementasikan protokol RF yang sangat spesifik (misalnya, rolling code dengan timing non-standar), kamu harus menulis aplikasi Flipper dari nol memakai furi_hal. Sedangkan di Pico 2 + CC1101, kamu ngobrol langsung ke register via SPI tanpa middleware.
Kamu juga bisa mengintegrasikan PIO block untuk protocol decoding real-time tanpa CPU overhead. Ini trik yang bahkan para developer Flipper Zero belum eksplorasi. Bayangkan PIO state machine yang membaca bit stream dari GDO0, mendeteksi preamble pattern, dan menulis payload ke DMA buffer, semua tanpa interrupt ke ARM core. Core ARM tetap bebas untuk UI rendering atau logging ke SD card.
Referensi teknis CC1101 bisa kamu lihat di Texas Instruments CC1101 datasheet. Untuk RP2350 PIO, cek RP2350 datasheet resmi Raspberry Pi. Kalau kamu ingin eksplorasi lebih dalam soal timing kritis di embedded Rust, baca juga teknik SPSC channel zero-heap untuk firmware sensor yang prinsipnya bisa diterapkan di buffer RF.
FAQ: Pertanyaan yang Sering Muncul
[{"id":"faq-1","question":"Apakah alat DIY ini legal di Indonesia?","answer":"Secara umum, merakit perangkat sub-GHz untuk keperluan eksperimen dan edukasi tidak dilarang di Indonesia. Tapi kamu wajib hanya mentransmisikan di frekuensi yang dialokasikan untuk penggunaan non-lisensi (ISM band) seperti 433.05-434.79 MHz dengan daya pancar rendah. Mentransmisikan di frekuensi seluler, penerbangan, atau militer bisa kena UU Telekomunikasi No. 36 Tahun 1999. Selalu cek regulasi spektrum terbaru dari Dirjen SDPPI Kominfo."},{"id":"faq-2","question":"Kenapa pakai CC1101, bukan SX1278 LoRa atau NRF24L01?","answer":"CC1101 adalah transceiver sub-GHz general-purpose yang mendukung OOK, 2-FSK, 4-FSK, GFSK, dan MSK. Fleksibilitas ini penting karena protokol di 433 MHz sangat beragam: dari OOK sederhana di remote garasi sampai 2-FSK di sensor cuaca. SX1278 terlalu spesifik untuk LoRa modulation (meskipun bisa FSK), sedangkan NRF24L01 bekerja di 2.4 GHz, bukan sub-GHz."},{"id":"faq-3","question":"Apakah bisa replay sinyal seperti Flipper Zero?","answer":"Secara teknis, ya. CC1101 bisa masuk TX mode dan mengirimkan ulang data yang sudah ditangkap. Tapi replay attack pada perangkat orang lain tanpa izin adalah tindakan ilegal di hampir semua yurisdiksi. Gunakan kemampuan ini hanya untuk menguji perangkat milikmu sendiri atau dalam konteks authorized pentest yang sudah ada kontrak tertulis."},{"id":"faq-4","question":"Bisakah pakai MicroPython alih-alih C SDK?","answer":"Bisa, tapi tidak direkomendasikan untuk aplikasi RF real-time. MicroPython punya GC pause yang bisa mencapai puluhan milidetik, cukup untuk membuatmu kehilangan paket RF yang durasinya cuma beberapa milidetik. Kalau cuma untuk belajar dan eksplorasi ringan, MicroPython oke. Untuk kerja serius, pakai C/C++ SDK."},{"id":"faq-5","question":"Apa bedanya Raspberry Pi Pico 2 dengan Pico original untuk project ini?","answer":"Pico 2 (RP2350) punya clock 150 MHz vs 133 MHz di Pico original (RP2040), RAM 520KB vs 264KB, dan arsitektur dual-core ARM Cortex-M33 yang lebih efisien. Tapi fitur paling penting adalah PIO block yang lebih banyak (3 PIO block vs 2) dan arsitektur RISC-V opsional. Untuk proyek RF ini, Pico original sebenarnya sudah cukup. Pico 2 memberikan headroom lebih buat ekspansi ke depannya."}]Kesimpulan: Kendali Penuh Ada di Tanganmu
Kamu nggak perlu nunggu Flipper Zero tersedia lagi di pasar lokal. Kamu juga nggak perlu bayar harga selangit ke scalper. Dengan Raspberry Pi Pico 2 dan modul CC1101, kamu bisa membangun alat sub-GHz yang fungsional, fleksibel, dan yang paling penting: kamu sendiri yang pegang kendali atas setiap lapisan software dan hardware.
Mulai dari budget Rp200 ribuan, skill yang kamu dapatkan dari proyek ini nilainya jauh melampaui sekadar memiliki Flipper Zero. Kamu belajar SPI, RF protocol analysis, embedded C, dan timing-critical programming. Semua itu adalah skill premium di dunia security engineering.
Referensi dan Bacaan Lanjutan:
- Texas Instruments CC1101 Product Page & Datasheet
- RP2350 Datasheet - Raspberry Pi Foundation
- Flipper Zero di Kanada Dianggap Ilegal? Ini Celah Hukum yang Bikin Kamu Tetap Aman
Udah coba bikin proyek ini? Share hasil rakitanmu di kolom komentar. Ada pertanyaan soal wiring atau firmware yang mentok? Drop juga di bawah, kita debug bareng. Jangan lupa subscribe newsletter buat dapetin tutorial hardware hacking dan proyek embedded terbaru setiap minggu.
