Lampu Pohon Natal yang bisa diprogram

Ini sebenarnya proyek yang saya lakukan tahun 2016, tapi setelah saya posting foto pohon Natal tahun ini dan membaca komentar di Bu Inge, sepertinya proyek kecil ini menarik juga untuk dituliskan. Ini bisa digunakan untuk mengajar pemrograman dan hardware.

Saya akan berusaha memberikan petunjuk generik, supaya bisa dipakai di aneka LED strip dengan aneka microcontroller, dan aneka bahasa pemrograman

Hardware yang dibutuhkan:

  • RGB LED Strip (individually addressable)
  • Power supply (opsional, tergantung seberapa banyak LED-nya)
  • Board microcontroller

LED Strip

Ada beberapa jenis LED Strip, yang kita cari adalah yang RGB (jangan yang satu warna) dan harus bisa dikontrol per LED-nya (individually addressable).

LED Strip ketika masih digulung

Jenis yang paling murah adalah WS2812/WS2812B. Versi yang B memiliki proteksi jika salah polaritas (terbalik positif dan negatif), jadi untuk belajar saya sarankan memakai versi B. Harganya mulai dari 1.3 USD untuk 30 LED dalam strip sepanjang 1 meter. Ada juga versi yang anti air (rating IP67 jika ingin dipasang di luar rumah). Versi lain adalah APA102/APA109B, harganya lebih mahal tapi warnanya lebih bagus. Berbagai jenis LED ini bisa dibaca di artikel Hackaday ini.

Lanjutkan membaca “Lampu Pohon Natal yang bisa diprogram”

PocketChip, PocketGo, dan Pinebook Pro

Posting ini sekedar catatan beberapa benda yang baru saya dapatkan supaya tidak lupa di masa depan. Kebetulan semuanya berawalan huruf P. Hanya Pinebook Pro yang merupakan benda yang benar-benar baru karena hasil preorder, sedangkan yang lain sudah ada lama di pasaran.

PocketChip

PocketChip adalah komputer saku berbasis Single Board Computer CHIP (dulu pernah saya bahas tiga tahun yang lalu). Benda ini memiliki layar, keyboard dan batere, jadi bisa dibawa ke mana-mana. Keyboardnya fungsional tapi kurang nyaman untuk mengetik banyak teks.

PocketChip ini sudah tidak diproduksi lagi tapi baru saya beli baru-baru ini. Saya sudah ingin membeli waktu benda ini diproduksi, tapi masih ragu kegunaannya, tapi kemudian benda ini hanya bisa dipesan ke negara tertentu, dan setelah itu tiba-tiba perusahaan pembuatnya (NextThing Co) bubar. Setelah NextThing Co bubar, sisa benda ini jadi banyak dijual di ebay dan Aliexpress.

Lanjutkan membaca “PocketChip, PocketGo, dan Pinebook Pro”

Merakit dan Mengupgrade PC

Kebanyakan teman seangkatan saya sudah jarang yang merakit PC. Bahkan kalau dipikir-pikir yang memakai PC (di rumah, bukan di kantor) juga semakin sedikit, kebanyakan hanya punya laptop saja. Saya sendiri sampai saat ini merasa lebih nyaman bekerja di PC yang cepat dengan layar besar dan keyboard mekanis.

Sekarang saya memesan berbagai komponen PC dari jib.co.th atau kadang beli offline jika kebetulan barang yang hendak dibeli tersedia di toko JIB di Airport Plaza. Jika membeli online prosesnya sangat mudah dan cepat. Setelah selesai membayar, barang akan segera dipack, dan saya akan dikirimi URL video pengepakannya. Sayangnya karena jauh dari Bangkok, jadi tetap butuh 2 hari sampai barangnya diterima di Chiang Mai.

Sebenarnya saya mulai malas membongkar PC, memasang komponen baru, mengetes, setting BIOS, memindahkan sistem operasi dsb, tapi saya lebih malas lagi dengan berbagai alternatifnya. Beberapa alternatifnya adalah:

  • membawa semua ke toko, memberi instruksi dan menunggu sampai semua selesai, pulang ke rumah (capek, tetap harus memasang ulang kabel), perlu memberi tahu password ke teknisi (atau membantu mengisi password setiap kali dibutuhkan)
  • membeli komputer baru yang lebih baik (tetap harus memindahkan data/program ke komputer baru)
  • mendatangkan teknisi: saya nggak akan sabar memberi tahu apa yang harus dilakukan, memberi tahu password, dsb
Lanjutkan membaca “Merakit dan Mengupgrade PC”

MAIX GO: AIOT Board

Di jaman Artificial Intelligence (AI) dan Internert of Things (IOT), ada beberapa perusahaan yang berusaha menggabungkan keduanya menjadi AIOT (Artificial Intelligence of Things). Salah satunya adalah Sipeed dari China. Perusahaan ini mengembangkan teknologinya berdasarkan instruction set RISC-V (baca: Risk Five) yang sifatnya terbuka. Jika saat ini Intel dan ARM masih menguasai dunia, di masa depan ada kemungkinan RISC-V yang akan jaya.

Sipeed sudah membuat cukup banyak produk, baik chip SOC dengan neural accelerator maupun board-board pendukungnya. Salah satu produk mereka adalah MAIX GO. MAIX GO ini memakai SOC Kendryte K210 dengan instruction set RISC-V 64 Bit dan memiliki accelerator untuk Fast Fourier Transform dan CNN (Convolutional Neural Network). Dengan adanya accelerator tersebut, SOC ini sangat cocok untuk memproses gambar dan suara. Menurut dokumentasinya, jika ukuran model kita kecil (<5.9 Mb fixed point 8-16 bit) maka pemrosesan image real time bisa dilakukan (~30 fps).

Lanjutkan membaca “MAIX GO: AIOT Board”

ESP32

Beberapa tahun lalu saya menulis mengenai ESP8266, sebuah microchip Wifi yang sangat populer dari China. Karena ESP8266 yang sangat terkenal, mereka mengundang hacker-hacker dari berbagai negara untuk bekerja di perusahaan mereka untuk produk berikutnya: ESP32.

ESP32 merupakan versi lebih baik dari ESP8266, hampir dari semua segi:

  • CPU lebih cepat, dual core
  • Selain mendukung WIFI juga mendukung Bluetooth Low Energy (BLE)
  • RAM lebih besar
  • I/O lebih banyak, mendukung CAN bus
  • Memiliki sensor temperatur dan Hal effect sensor internal

Sebenarnya ESP32 ini sudah diluncurkan agak lama, tapi dulu masih banyak masalah sehingga masih kurang cocok buat pemula. Ketika dilaunch:

  • Bug silikon yang baru diperbaiki di hardware versi berikutnya
  • Arduino IDE belum mendukung ESP32
  • Porting Python dan Lua belum sempurna

Tapi sekarang statusnya sudah berubah:

  • Hardware yang baru jumlah bugnya sudah sedikit
  • Arduino sudah mendukung ESp32
  • MicroPython dan Lua sudah disupport dengan baik

Sebagai informasi: ESP32 memiliki interpreter BASIC built ini di dalam silikonnya, jadi andaikan belum menginstall compiler atau interpreter apapun, kita sudah bisa mengetes beberapa hal dengan menggunakan BASIC. Seperti BASIC di BIOS jaman IBM PC XT dulu, programnya tidak bisa disimpan.

Dari segi harga, saat ini sebagian board ESP32 sudah di bawah 5 USD (harga sudah termasuk ongkos kirim). Sementara harga ESP8266 paling murah saat ini bisa kurang dari 2 USD. Dari segi harga, untuk proyek yang tidak butuh fitur ESP32, memakai ESP8266 masih lebih baik.

Saya sendiri masih lebih suka langsung memakai esp-idf (ESP IOT Development Framework) dibanding memakai teknologi lain. Saya juga belum banyak membuat program dengan ESP32. Saat ini program besar yang saya publish hanya emulator Pokemon Go Plus yang memakai fitur BLE.

Ketika harganya masih mahal (awalnya sampai 20an USD), memakai ESP32 masih terasa kurang pas karena harganya lebih mahal dibandingkan solusi lain misalnya Orang Pi Zero hanya sekitar 10 USD (dan bisa beli banyak), Raspberry Pi Zero lebih murah lagi tapi hanya boleh satu item setiap kali membeli. Setelah harganya cukup rendah (bahkan sudah bersaing dengan ESP8266) sepertinya sudah saatnya memakai ESP32 di lebih banyak project.

Mendinginkan Raspberry Pi

Ini merupakan catatan lama ketika memakai Raspberry Pi untuk pemrosesan yang memakai CPU secara ekstensif. Ketika suhu mencapai 80-85 derajat celcius, maka akan muncul simbol termometer setengah di layar:

Over Temperature (80-85C)
Temperatur tinggi

Simbol ini akan dioverlay di atas tampilan apapun yang muncul di layar. Contohnya seperti ini.

Lanjutkan membaca “Mendinginkan Raspberry Pi”

USB Jig untuk Samsung

Saat ini saya punya satu tablet Android Samsung Tab A SM-P355. Device ini jarang sekali terpakai kecuali untuk pentesting. Kenapa perlu tablet khusus untuk pentesting? intinya untuk menghemat waktu. Beberapa app yang saya testing butuh layar besar dan tidak cukup menggunakan HP biasa.

Kenapa tidak menggunakan emulator? beberapa aplikasi memiliki proteksi sehingga tidak jalan di emulator, sebagian aplikasi membutuhkan verifikasi SMS, sehingga harus diakali di emulator. Masalah akal-akalan ini butuh waktu, dan kadang aplikasi tetap error dan tidak jelas apakah karena akal-akalan yang dilakukan atau memang aplikasinya yang error. Kadang setelah dijelaskan panjang lebar ke developernya, jawabannya: coba dulu di hardware beneran. Setelah dicoba di hardware beneran ternyata memang aplikasinya error. Jadi untuk menghemat waktu, saya punya device khusus testing.

Lanjutkan membaca “USB Jig untuk Samsung”