Perangkat Android TV box berbasis prosesor ARM (seperti chipset Amlogic atau Allwinner) sangat menjamur di pasaran. Seringkali setelah tidak terpakai atau digantikan oleh Smart TV, perangkat mungil ini hanya berakhir tersimpan di dalam laci. Padahal jika dibedah lebih dalam, spesifikasi hardware-nya—prosesor quad-core 64-bit, RAM 2GB-4GB, penyimpanan internal eMMC, port Ethernet, serta konsumsi daya yang sangat rendah (< 5 Watt)—merupakan fondasi yang ideal untuk dijadikan homelab micro-server yang beroperasi 24/7.
Proyek repurpose ini membuktikan bahwa perangkat elektronik yang kerap dianggap usang tetap menyimpan potensi besar untuk dioptimalkan kembali. Selain menghemat biaya operasional listrik homelab secara signifikan, eksplorasi ini memberikan pemahaman mendalam tentang manipulasi driver Linux, arsitektur ARM, dan efisiensi sistem mikro.
Implementasi Teknis
Dalam artikel ini, saya merangkum catatan teknis eksperimen mengubah TV box tersebut menjadi server Linux multifungsi menggunakan distribusi Armbian, menyelesaikan tantangan kompilasi driver nirkabel, hingga memfungsikannya sebagai jumpbox gateway dan telemetry hub di jaringan lokal.
Booting Armbian & Pemilihan Device Tree (DTB)
Langkah awal adalah memilih distribusi Linux yang mendukung arsitektur ARM SBC. Armbian menyediakan build Debian/Ubuntu yang telah dioptimalkan untuk berbagai SoC ARM.
Tantangan utama pada perangkat generic TV box adalah tidak adanya skema BIOS standar layaknya PC x86. Sebagai gantinya, kernel Linux mengandalkan Device Tree Blob (DTB) untuk mendeteksi pinout memori, pengontrol bus eMMC, chip audio, ethernet PHY, dan port I/O:
- Flash image Armbian ke kartu microSD (high-end endurance disarankan).
- Tentukan file
.dtbyang paling cocok pada file konfigurasi boot (/boot/armbianEnv.txtatauuEnv.txt). - Memicu mode recovery (seringkali melalui reset button tersembunyi di dalam lubang port AV) agar bootloader mengeksekusi boot dari penyimpanan eksternal terlebih dahulu.
- Setelah kernel berhasil booting ke sistem pengguna (userspace), sistem dasar dapat dipindahkan permanen ke eMMC onboard menggunakan utilitas
armbian-installuntuk performa baca/tulis yang jauh lebih gesit dan stabil.
Kompilasi Driver AIC8800 (Wi-Fi & Bluetooth)
Salah satu kendala umum pada TV box modern adalah penggunaan chip wireless berbiaya murah, salah satunya seri AIC8800 (Aicsemi). Modul kernel untuk chip ini seringkali belum disertakan secara mainline di kernel Linux terbaru.
Agar antarmuka Wi-Fi (wlan0) dan controller Bluetooth (hci0) dapat beroperasi normal di Linux kernel 6.x, kita perlu melakukan kompilasi modul kernel out-of-tree:
# Persiapan kernel headers & build tools
sudo apt update && sudo apt install -y build-essential dkms linux-headers-$(uname -r) git
# Clone & build driver package AIC8800
git clone https://github.com/radxa/aic8800.git /usr/src/aic8800-1.0
sudo dkms add -m aic8800 -v 1.0
sudo dkms build -m aic8800 -v 1.0
sudo dkms install -m aic8800 -v 1.0
# Load modul wireless
sudo modprobe aic8800_bsp
sudo modprobe aic8800_fdrv
Setelah modul dimuat, firmware di /lib/firmware/aic8800/ akan diinisialisasi oleh driver. Hasilnya, konektivitas dual-band Wi-Fi dan Bluetooth HCI stack langsung terdeteksi oleh rfkill dan bluetoothctl.
Jumpbox & Remote Gateway: Apache Guacamole
Dengan konsumsi daya rata-rata hanya berkisar 3-4 Watt saat kondisi idle, TV box ini sangat cocok dijadikan jumpbox internal di jaringan manajemen (OOB / Out-of-Band management).
Alih-alih membuka port SSH atau VPN berat dari internet, saya men-deploy Apache Guacamole berbasis container Docker. Guacamole menyediakan portal web HTML5 bebas client untuk mengakses remote desktop (RDP, VNC) dan terminal SSH internal:
# Cuplikan docker-compose.yml Guacamole
services:
guacd:
image: guacamole/guacd:latest
restart: unless-stopped
container_name: guacd
networks:
- guac_net
guacamole:
image: guacamole/guacamole:latest
restart: unless-stopped
container_name: guacamole
depends_on:
- guacd
- guac-db
environment:
GUACD_HOSTNAME: guacd
MYSQL_HOSTNAME: guac-db
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guac_user
MYSQL_PASSWORD: ${GUAC_PASSWORD}
ports:
- "8080:8080"
networks:
- guac_net
Melalui setup ini, seluruh workstation dan VM pengujian di lab lokal dapat diakses langsung lewat peramban web modern dengan enkripsi TLS tanpa perlu menginstal aplikasi pihak ketiga.
Telemetry IoT: Monitoring Sensor Suhu BLE (LYWSD03MMC)
Karena stack Bluetooth sudah aktif, TV box dapat difungsikan ganda sebagai IoT Collector. Di ruangan lab, saya memasang beberapa sensor suhu dan kelembaban digital Xiaomi Mijia (LYWSD03MMC).
Sensor ini sebelumnya telah di-flash dengan custom firmware (ATC firmware) agar menyiarkan data telemetri suhu, kelembaban, dan voltase baterai secara terbuka via BLE Advertising (passive scanning):
- Skrip otomasi Python memanfaatkan library
bleakatau soket HCI Bluetooth untuk menangkap paket advertisement secara non-blocking. - Data telemetri diparsing secara real-time.
- Skrip memicu alerting via Telegram Bot API jika suhu atau kelembaban ruangan melewati ambang batas keamanan yang ditentukan.
Dengan demikian, tidak diperlukan gateway khusus yang mahal—cukup memanfaatkan radio Bluetooth yang sudah tertanam di papan TV box.
Hardware Watchdog & Pemantau Beban LED
Pada lingkungan server fanless tanpa layar monitor, kita memerlukan mekanisme umpan balik visual dan ketahanan sistem terhadap freeze:
- Hardware Watchdog: Mengaktifkan modul
/dev/watchdogbawaan SoC ARM. Layanan sistem berkala mengirim sinyal heartbeat; jika sistem operasi mengalami kernel panic atau hang total, hardware timer akan otomatis me-reboot mesin secara mandiri. - Visual LED Load Monitor: TV box biasanya memiliki LED indikator status daya. Melalui antarmuka
/sys/class/leds/, kita dapat memetakan parameter CPU load average ke frekuensi kedip atau intensitas LED. Saat beban server normal, LED menyala stabil; ketika terjadi lonjakan beban komputasi atau disk I/O, LED akan berkedip sebagai sinyal peringatan dini.
Ringkasan & Catatan Efisiensi
| Aspek Evaluasi | Spesifikasi & Pengujian |
|---|---|
| Konsumsi Daya | ~3.2 Watt (idle), ~5.8 Watt (full load) |
| Suhu Operasional | Rata-rata 48°C - 55°C (Pendinginan pasif heatsink) |
| Layanan Aktif | Armbian Linux, Docker, Guacamole RDP Gateway, BLE Bot, Watchdog |
| Biaya Hardware | Nol rupiah (memanfaatkan unit purna pakai) |
Proyek repurpose ini membuktikan bahwa perangkat elektronik yang kerap dianggap usang tetap menyimpan potensi besar untuk dioptimalkan kembali. Selain menghemat biaya operasional listrik homelab secara signifikan, eksplorasi ini memberikan pemahaman mendalam tentang manipulasi driver Linux, arsitektur ARM, dan efisiensi sistem mikro.