Perpustakaan Buku Terlarang di dalam Bohlam Pintar Wi‑Fi
(richardosgood.com)- Banned Book Library adalah proyek dead drop digital yang mengubah bohlam pintar Wi‑Fi menjadi access point terbuka dan server web, sehingga perangkat di sekitarnya bisa mengakses buku elektronik selama bohlam menyala
- Perangkat kerasnya dimulai dari bohlam berbasis ESP32C3 4MB dengan Tasmota yang sudah terpasang, dan karena kapasitas flash yang kecil, kendala utamanya adalah menyesuaikan ruang penyimpanan agar cukup untuk firmware, situs web, dan file buku sekaligus
- Penambahan microSD dibatalkan karena penyolderan di dalam bohlam dan pelepasan papan sangat sulit serta susah dirakit ulang dengan aman; sebagai gantinya, tabel partisi dimodifikasi untuk memperbesar ruang penyimpanan file dari 320KB menjadi 2MB
- Karena Arduino saja tidak bisa mengakses area flash yang dilindungi, proyek ini memakai ESP-IDF dan Arduino as a Component, serta menyusun jalur pembaruan dengan firmware safeboot terpisah dan ElegantOTA
- Aplikasi web akhirnya memiliki daftar buku, panel admin, fungsi pemulihan, dan portal captive, tetapi karena batas 4MB, satu bohlam lebih mendekati perpustakaan pribadi berisi beberapa buku pilihan daripada koleksi besar
Gambaran umum
- Proyek ini berawal dari gagasan memodifikasi bohlam pintar Wi‑Fi agar menyediakan access point Wi‑Fi terbuka dan server web berisi buku terlarang
- Saat bohlam menyala, pengguna di sekitarnya dapat mengakses materi yang disimpan di bohlam dengan perangkat elektronik ber-Wi‑Fi
- Karena berbentuk bohlam, perangkat ini tidak terlalu mencolok, dan harganya juga relatif murah, sehingga dirancang sebagai dead drop digital yang bisa ditinggalkan di berbagai sudut lingkungan
- Ide ini terinspirasi oleh cerpen Library karya Ben Brown, yang “perpustakaannya” berfungsi sebagai arsip digital untuk menyimpan materi yang tidak boleh hilang dari internet, seperti karya kreatif, manual penggunaan, model 3D, dan lainnya
- Pengerjaan nyata dimulai beberapa bulan lalu, dan hasilnya dipublikasikan sebagai Banned Book Library
Perangkat keras
- Setelah membagikan ide ini di pertemuan DEFCON lokal, penulis mulai meninjau Tasmota
- Tasmota adalah firmware open source yang dapat dipasang di berbagai perangkat pintar agar terintegrasi dengan sistem otomasi rumah seperti HomeAssistant
- Tujuan utamanya adalah memungkinkan perangkat dikendalikan secara lokal tanpa bergantung pada layanan cloud
- Banyak perangkat pintar bergantung pada layanan cloud yang bisa berubah atau hilang seiring waktu, dan Tasmota dapat menggantikannya dengan hosting internal
- Walau tidak memodifikasi Tasmota secara langsung, penulis menemukan penjual bohlam Wi‑Fi dengan Tasmota yang sudah terpasang
- Halaman produknya menyebut bahwa bohlam menggunakan
ESP32C3 4MB - Pin GPIO untuk kontrol LED juga dipublikasikan, yang kemudian membantu pekerjaan berikutnya
- Pemetaan pinnya adalah
R=GPIO6,G=GPIO7,B=GPIO5,CW=GPIO3,WW=GPIO4
- Halaman produknya menyebut bahwa bohlam menggunakan
- Tasmota memiliki fitur pembaruan firmware OTA, sehingga ada kemungkinan memasang firmware kustom tanpa membongkar bohlam
- Masalah terbesar adalah flash 4MB, karena firmware, situs web, dan file buku semuanya harus muat di dalamnya
- Untuk mengantisipasi kemungkinan merusak salah satu unit saat eksperimen, penulis membeli dua bohlam
Pembongkaran
- Kubah diffuser plastik putih di bagian atas bohlam dilepas dengan membuat dua sayatan melingkar menggunakan pisau lalu diputar
- Di dalamnya ada papan anak berbentuk bundar tempat LED terpasang, yang terhubung ke papan bawah dengan enam pin
- Sebagian papan utama menonjol melalui lubang di tengah, dan bagian ini adalah antena ESP32
- Housing bohlam dan papan anak terbuat dari aluminium, sehingga tampak dirancang dengan mempertimbangkan perolehan sinyal Wi‑Fi
- Setelah papan anak dilepas, terlihat ESP32C3 di dalam beserta komponen yang tampaknya dipakai untuk konversi daya dan penggerak LED
- ESP32 memiliki beberapa pin yang terbuka, sehingga sempat terlihat ada kemungkinan untuk menambahkan pembaca kartu microSD
- Karena solder tidak bisa dimasukkan ke bagian dalam bohlam, papan utama harus dikeluarkan, dan senyawa potting mirip karet harus dikeruk dengan pisau dan obeng
- Pelepasan papan utama sangat merepotkan, dan setelah dipasang kembali pun keamanannya sulit dipercaya, sehingga langkah ini tidak cocok dijadikan tahap wajib dalam pemasangan dead drop nyata
- Bohlam yang dibongkar lalu dipakai sebagai platform pengembangan, dan kabel disolder ke VCC, GND, TX, RX, dan IO9 untuk pemrograman serial
- Label pin VCC, GND, TX, dan RX dikenali dari foto modul yang sama di AliExpress
- GND dihubungkan ke pelindung logam yang lebih mudah disolder
- Untuk masuk ke mode download, perangkat dinyalakan sambil menahan IO9 ke ground
- Seluruh firmware didump dengan
esptool, dan beberapa menit kemudian filetasmota_original_firmware.binberhasil diperoleh
Eksperimen awal
-
Hello World
- Awalnya, penulis ingin memodifikasi source code Tasmota agar menjadi Banned Book Library, tetapi firmware itu ternyata lebih kompleks dari dugaan dan cakupannya luas karena mendukung banyak arsitektur serta perangkat
- Karena ingin mengurangi fitur yang tidak diperlukan dan menghemat ruang penyimpanan, pendekatan memodifikasi Tasmota akhirnya ditinggalkan
- Setelah memastikan ESP32 bisa diprogram dengan Arduino, Arduino IDE pun disiapkan
- Program Hello World dasar diunggah agar mengirim pesan ke port serial, dan dari situ dipastikan bahwa firmware kustom bisa ditulis langsung ke bohlam
-
Server web
- Langkah berikutnya adalah menyiapkan access point Wi‑Fi terbuka dan server web
- Penulis sempat mengacu pada tutorial server web ESP32, tetapi bagian kontrol LED diubah karena saat itu bukan tujuan utama
- Setelah itu implementasi dipindahkan ke Async Web Server dengan dasar dari tutorial terkait
-
Kartu microSD
- Untuk memperluas ruang penyimpanan, penulis membeli papan breakout microSD dari Sparkfun
- Pengkabelan pembaca kartu SD dipahami dengan mengacu pada datasheet ESP32C3
- Alih-alih memakai bohlam sungguhan, prototipe dibuat dengan Adafruit ItsyBitsy ESP32 karena penyolderan pin header dan koneksi microSD jauh lebih mudah
- Hosting file server web menggunakan microSD dan LittleFS berhasil dilakukan, tetapi karena sulit diterapkan pada bohlam sungguhan, pendekatan microSD akhirnya ditinggalkan
- Untuk menyolder ke ESP32C3 pada bohlam asli, papan harus dikeluarkan dari housing, dan itu pada praktiknya hampir setara dengan merusak perangkat
- Pemanfaatan ulang pin kontrol LED juga sempat dicoba, tetapi dalam struktur tersebut GPIO hanya bisa dipakai sebagai output yang menyalakan transistor untuk melengkapi rangkaian ke ground
- Penulis juga merancang clamp cetak 3D yang menjepit di atas ESP32 untuk menyentuh pin, tetapi hasilnya terlalu tidak stabil dan tidak andal sehingga dibuang
Tinjauan jalan keluar
- Penulis meneliti bohlam pintar lain untuk melihat apakah ada model yang lebih mudah disolder
- Beberapa tulisan bongkar-pasang ditemukan, tetapi kebanyakan memiliki struktur internal yang mirip dengan bohlam yang sudah dipakai
- Sebagian bohlam memakai chip selain ESP32, tetapi karena penulis sudah belajar memprogram ESP32, pencarian dipersempit ke bohlam berbasis ESP32
- Salah satu bohlam dari toko perangkat keras lokal memiliki struktur serupa, tetapi ada pelindung aluminium yang membuat papan utama sulit dilepas dengan aman
- Philips WiZ tampak menjanjikan karena
ESP32C3-mini-1langsung terlihat setelah diffuser plastik dilepas, tetapi pin ESP32 yang diperlukan tetap tidak bisa diakses - Pendekatan memasukkan rangkaian buatan sendiri ke dalam bohlam LED biasa juga dipertimbangkan, tetapi itu lebih rumit dan lebih khusus daripada sekadar mem-flash bohlam Tasmota
- Pada akhirnya diputuskan untuk tetap memakai bohlam Tasmota dan menyelesaikannya di dalam batas 4MB
Masalah ruang penyimpanan
- Tabel partisi ESP32 biasanya disimpan pada offset flash
0x8000, dan area ini didump lalu diubah ke CSV untuk melihat strukturnya - Partisi yang ada saat itu berjumlah lima:
nvs,otadata,safeboot,app0, danspiffsnvsdipakai sebagai penyimpanan non-volatil untuk menyimpan pengaturan seperti jaringan Wi‑Fi, kata sandi, dan warna LEDotadatadipahami sebagai area yang berkaitan dengan pembaruan OTAsafebootadalah firmware boot terpisah yang dipakai Tasmota untuk mem-flash firmware utamaapp0menyimpan firmware utamaspiffsadalah partisi sistem berkas kecil untuk penyimpanan file, yang dalam kasus ini juga bisa merepresentasikan LittleFS
- Dalam susunan lama, firmware utama memakan hampir 3MB, safeboot hampir 1MB, dan ruang penyimpanan file hanya 320KB
- Karena firmware kustom jauh lebih sederhana daripada Tasmota, penulis menilai ukuran
app0bisa diperkecil danspiffsbisa diperbesar - Susunan partisi baru menetapkan
spiffsberukuran0x200000, sehingga tersedia 2MB ruang penyimpanan untuk file web dan buku - Memodifikasi tabel partisi berisiko; jika rusak, perangkat bisa gagal boot dan hanya dapat dipulihkan lewat pemrograman serial
- Di akhir tabel terdapat checksum MD5, sehingga mengganti offset dan ukuran saja tidak cukup untuk membuat perangkat bisa boot
- Jika partisi
app0yang sedang berjalan dipindahkan, firmware tersebut tidak akan bisa dipakai boot lagi, sehingga posisi awalapp0harus dipertahankan - Penulis membuat CSV partisi baru, menghasilkan tabel biner dengan
gen_esp32part.py, lalu mengubahnya menjadi array C memakaixxddan memasukkannya kepartition.h - Fungsi khusus ditulis agar melewati proses jika MD5 tabel partisi sudah sama dengan tabel baru; jika berbeda, tabel lama dihapus lalu tabel baru ditulis
- Di lingkungan Arduino, akses ke area flash yang dilindungi diblokir, sehingga meskipun API mengembalikan status sukses, tabel partisi yang sebenarnya tidak bisa dibaca atau ditulis
ESP-IDF
- ESP-IDF, framework resmi ESP32, lebih rumit dalam konfigurasi dan penggunaan, tetapi memberi kontrol yang lebih luas atas perangkat dan framework
- Pengaturan framework dapat diubah melalui
idf.py menuconfig, yang cara kerjanya mirip menuconfig pada kernel Linux - Untuk membaca dan menulis tabel partisi,
SPI_FLASH_DANGEROUS_WRITE_ALLOWEDharus diatur keAllowed SPI_FLASH_DANGEROUS_WRITE_ABORTSjuga harus dinonaktifkan agar akses ke tabel partisi bisa dilakukan- Saat memakai ESP-IDF secara langsung, kemudahan Arduino tidak otomatis tersedia, tetapi dengan menambahkan Arduino as a Component, fitur Arduino dan kontrol ESP-IDF bisa dipakai bersamaan
- Library seperti ElegantOTA, Async_TCP, dan AsyncWebServer harus disalin ke direktori
componentsproyek atau ke direktorilibrariesmilik komponen Arduino - Beberapa
CMakeLists.txtjuga perlu disesuaikan, dan untuk menangani pekerjaan berulang ini ditambahkan skripbuild.shke repositori - Build dilakukan dengan
idf.py build, dan flashing serial dijalankan denganesptool -p /dev/ttyUSB0 write-flash 0xe0000 build/library.bin
Halaman pengaturan
- Image firmware utama memuat endpoint server web yang penting, tetapi kode perpustakaan yang sebenarnya disimpan terpisah di partisi LittleFS
- Image sistem berkas harus di-flash secara terpisah, dan untuk itu disertakan ElegantOTA
- Jika perangkat boot saat sistem berkas belum di-flash, halaman pengaturan akan ditampilkan
- Halaman pengaturan memandu proses flashing image sistem berkas dan firmware safeboot melalui ElegantOTA
Safeboot
- Untuk mempertahankan pembaruan OTA bagi firmware utama, awalnya penulis ingin tetap memakai safeboot bawaan Tasmota
- Safeboot Tasmota melakukan pembaruan dengan memakai pengaturan Wi‑Fi dari partisi
nvs - Masalahnya, SSID dan kata sandi Wi‑Fi disimpan sebagai teks biasa di partisi
nvs - Jika bohlam ditinggalkan di luar, membiarkan kredensial Wi‑Fi tetap tersimpan bukan kondisi keamanan operasional yang baik
- Firmware kustom mula-mula menghapus partisi
nvs, lalu juga menghapus partisi SPIFFS - Setelah pengaturan Wi‑Fi di
nvshilang, safeboot Tasmota tidak lagi bisa terhubung ke jaringan, sehingga jalur pembaruan firmware bawaan terputus - Untuk mengatasi hal ini, dibutuhkan firmware safeboot kustom yang terpisah
- Firmware safeboot dibuat berdasarkan contoh GitHub untuk pembaruan OTA dengan server web minimal dan access point
- Beberapa item
menuconfigdinonaktifkan agar image cukup kecil untuk muat di partisi safeboot, dan pada akhirnya berhasil berjalan - Partisi safeboot sendiri tidak memiliki kata sandi, tetapi fungsi admin untuk reboot ke safeboot dilindungi kata sandi
Aplikasi web
-
Perpustakaan
- Halaman pertama menampilkan gambar kontainer pengiriman berwarna kuning dengan pintu
- Gambar ini adalah referensi ke cerpen Library karya Ben Brown yang disebut sebelumnya
- Gambar itu tetap dipertahankan meski memakan ruang penyimpanan, dan di halaman awal juga ditambahkan efek glitch untuk memberi nuansa “seperti hacker”
- Halaman utama perpustakaan dibuat dengan menulis HTML dan CSS secara manual
- Rencana awalnya hanya indeks HTML sederhana berisi daftar file, tetapi kemudian berkembang menjadi tampilan yang lebih menarik dan lebih menyenangkan
- Struktur situs relatif sederhana
- Ada bagian yang menjelaskan apa yang sedang dilihat pengguna
- Bagian buku menampilkan judul, penulis, dan alasan buku tersebut dipersoalkan atau dilarang
- Ada juga bagian tautan referensi, tetapi karena access point Banned Book Library tidak memiliki koneksi internet, tautan eksternal tidak akan berfungsi saat sedang terhubung
-
Admin
- Pada jalur
/adminterdapat panel admin yang dilindungi kata sandi - Panel admin memungkinkan kontrol suhu warna LED
- Tujuannya agar saat dipasang di tempat umum, perubahan bohlam tidak terlalu mencolok karena warnanya bisa disesuaikan dengan bohlam yang sudah ada
- Karena penjual bohlam memublikasikan pin GPIO untuk kontrol tiap warna LED, intensitas per warna bisa diatur dengan
AnalogWrite() - Pengaturan warna disimpan di
NVS, sehingga pada boot berikutnya bohlam kembali ke warna yang sama - Fitur admin juga mencakup tombol menuju halaman pemulihan
- Pada jalur
-
Pemulihan
- Fitur pemulihan sebagian mengembalikan tabel partisi lalu melakukan boot ke safeboot
- Dalam praktiknya, ini berarti reboot ke partisi safeboot kustom, lalu memungkinkan firmware lain di-flash di atas firmware Banned Book Library
- Firmware yang di-flash bisa berupa versi baru, Tasmota, ESPHome, atau lainnya
- Penulis masih belum menemukan cara yang baik untuk memulihkan partisi safeboot itu sendiri
- Jika Tasmota di-flash kembali lalu tombol “Firmware Upgrade” ditekan dari antarmuka Tasmota, perangkat akan reboot lagi ke safeboot kustom
- Safeboot ini memang bisa dipakai untuk pembaruan Tasmota, tetapi tidak menyatu mulus dengan pengalaman upgrade normal Tasmota
- Karena masalah ini, pemulihan partisi tidak sepenuhnya mengembalikan subtype safeboot ke
Factory, melainkan membiarkannya sebagaiOTA_1
-
Portal captive
- Karena pengguna mungkin terhubung ke access point terbuka lalu menyerah setelah melihat tidak ada internet, dibutuhkan portal captive
- Cara lama adalah mencegat permintaan HTTP dan mengalihkan ke portal, tetapi kini sebagian besar situs memakai HTTPS sehingga pendekatan itu kurang cocok
- Pendekatan modern melibatkan opsi DHCP yang memberi tahu penggunaan portal captive, serta penanganan permintaan deteksi portal yang berbeda pada tiap perangkat
- Penulis menemukan contoh kode portal captive untuk ESP32 dan memakai sebagian di proyek ini
- Kode tersebut melakukan dua hal
- Server DNS menjawab semua permintaan dengan alamat IP ESP32 itu sendiri
- Permintaan HTTP tertentu dari Microsoft, Android, iOS, Firefox, dan lainnya ditangkap lalu diberi redirect atau respons
- Permintaan yang tidak dikenali diarahkan ulang ke URL lokal melalui
server.onNotFound, dan host serta URL permintaan dicetak ke monitor serial
Pemikiran akhir
-
Batas ukuran
- Total ruang penyimpanan perangkat dibatasi hanya 4MB
- Beberapa buku epub yang diperiksa berukuran sekitar 350KB masing-masing, sehingga satu bohlam hanya dapat memuat beberapa buku seperti itu
- Awalnya keterbatasan ini terasa mengecewakan karena penulis membayangkan server web yang menyediakan banyak buku terlarang
- Belakangan, keterbatasan ruang justru dianggap sebagai kelebihan karena setiap dead drop mencerminkan pilihan pembuatnya
- Pembuat harus memilih buku yang penting bagi dirinya atau yang menurutnya perlu diakses orang lain
- Jika beberapa unit ditempatkan dalam satu area dan tiap bohlam memuat materi berbeda, pengalaman berkeliling dan menemukan isinya bisa menjadi lebih menyenangkan
-
Ide ke depan
-
Kontrol warna
- Penulis ingin menambahkan slider untuk kontrol yang lebih halus terhadap warna RGB dan suhu warna putih
- Dengan begitu, warna lampu bisa disesuaikan lebih dekat dengan pencahayaan yang sudah ada di lokasi pemasangan
-
Mesh networking
- Terkait batas penyimpanan, muncul ide agar beberapa bohlam membentuk mesh network
- Dengan pendekatan seperti distributed hash table, buku dari perangkat-perangkat yang saling berada dalam jangkauan dapat disajikan kepada pengguna yang terhubung ke salah satu perangkat
- Ide ini tetap menjadi arah menarik yang layak dieksplorasi
-
Lainnya
- Masih ada banyak ide lain untuk mendaur ulang perangkat pintar ke kegunaan berbeda
- Chip ESP32 dinilai sangat murah sekaligus cukup bertenaga
- Setelah mempelajari cara memakai ESP32, kemungkinan besar penulis akan membuat lebih banyak proyek ESP32 di masa depan
-
1 komentar
Pendapat Hacker News
Seperti kutipan Komisaris Pravin Lal dari Alpha Centauri, peringatan bahwa mereka yang ingin mengendalikan arus informasi pada akhirnya adalah mereka yang ingin menjadi penguasa masih terasa relevan
Rasanya justru ungkapan “demokrasi mati di tengah tepuk tangan yang bergemuruh” lebih sesuai dengan kenyataan
Ini game 4X terbaik sepanjang masa, dan terasa seperti tahun 2060 yang dibayangkan game itu makin mendekat setiap hari
Rasanya seperti karya saat kompleksitas dan kedewasaan dalam game mencapai puncaknya
Game ini dan gagasan-gagasannya benar-benar tak lekang oleh zaman
Karena sekarang kita sudah melihat bahwa kebohongan juga informasi, dan justru bisa menyebar lebih baik saat menumpang arus yang sama
Seperti yang diduga, contoh buku dalam artikel itu sebenarnya bukan “buku terlarang” dalam arti sebenarnya
Biasanya yang terjadi adalah buku dengan konten eksplisit dikeluarkan dari koleksi perpustakaan sekolah atas permintaan orang tua
Itu bukan inti tulisan, jadi rasanya saya hanya melihat sekitar dua contoh buku
Bahkan Nineteen Eighty-four juga punya muatan seksual, jadi jika seorang otoriter ingin mengurangi akses ke sastra anti-totalitarian, mereka cukup membuat para orang tua marah soal isu seks
Sebuah buku tidak harus dilarang di seluruh dunia agar layak disebut “dilarang”
Mungkin tidak banyak yang seperti itu, tetapi sekarang kadang terlihat seperti jalan pintas menuju ketenaran buruk
Dulu ada PirateBox
Caranya adalah memasang firmware kustom pada access point Wi-Fi kecil yang berisi server web serta forum/host file, dan meski situs aslinya sudah mati, masih ada proyek turunan di sini: https://www.jasongriffey.net/librarybox/
Meski begitu, hanya membayangkan file apa saja yang bisa diunggah jika unggahan pengguna diizinkan sudah cukup membuat khawatir
Orang-orang takut terhubung ke Wi-Fi terbuka, dan karena itu juga tidak memberi “internet gratis”, mereka biasanya langsung memutuskan sambungan
Sayangnya, proyek turunan LibraryBox itu juga sudah tidak lagi aktif
Saya penasaran dengan daftar buku terlarangnya
Jika dilihat sekilas tanpa salah satu platform sosial terbesar, sepertinya tidak akan ada buku yang menarik, hanya buku-buku yang memang biasa ada di bagian “buku terlarang” toko buku arus utama
Terasa seperti kepicikan pemikiran yang kehilangan keragaman yang bermakna
Daftar “buku terlarang”-nya pendek: Call of the Wild, The Adventures of Huckleberry Finn, The Adventures of Tom Sawyer, dan Women in Love
Benar-benar mengejutkan dan berani
Jadi tidak ada satu daftar tunggal; Anda bisa memasukkan apa pun yang Anda inginkan
Sekitar tahun 2012 saya juga pernah melihat hal seperti ini disebut Pirate Box
Ide dasarnya adalah menyalakan jaringan Wi-Fi dan server web yang terpisah dari internet yang lebih luas, sehingga orang bisa mengunggah dan mengunduh file
Pada dasarnya ini perpustakaan berbagi digital yang dibatasi secara geografis
Untuk seseorang yang katanya peduli pada efisiensi perangkat lunak dan penggunaan energi, cukup mencolok bahwa gambar-gambar di tulisan itu adalah PNG 5MB
Android suka memutus sambungan otomatis dari jaringan Wi-Fi yang tidak menyediakan internet
Untuk mematikan fitur ini, harus melewati beberapa lapis pengaturan yang cukup rumit
Terakhir kali saya cek, deteksi portal di ponsel belum sampai mewajibkan sertifikat HTTPS yang valid
Saat pengguna diminta menekan “Sign In”, mereka justru langsung dibawa ke dead drop tersebut
Tapi saya sendiri belum pernah mencobanya, jadi saya tidak tahu apakah ini benar-benar akan bekerja atau apakah DNS yang proper akan dibutuhkan
Ini contoh yang bagus tentang sejauh mana seseorang bisa melangkah meski tidak punya banyak pengetahuan awal, asalkan punya tujuan yang jelas, semangat, dan rasa ingin tahu
Ini keren, tetapi saya meragukan klaim bahwa “karena ini bohlam, maka akan sulit dideteksi dan tidak mencolok”
Rasanya ini tidak akan lebih sulit dimatikan dibanding perangkat Wi-Fi terbuka lain, dan mestinya bisa ditemukan dengan mematikan daya atau perangkat satu per satu
Access point enterprise modern juga punya fitur untuk menemukan lokasi fisik perangkat dan peringatan otomatis untuk access point tak sah
Hanya saja, yang terakhir itu sering diabaikan atau dimatikan karena akan berbunyi setiap kali seseorang mencetak atau melakukan screen casting lewat Wi-Fi Direct
Terutama jika tampilannya seperti bohlam biasa yang terpasang di tempatnya, siapa yang akan mengira itu access point Wi-Fi?
Bahan potting berwarna cokelat itu mungkin juga digunakan untuk membuang panas dari komponen, selain fungsi-fungsi lainnya