Raspberry Pi Pico

Raspberry Pi Pico adalah board microcontroller dari yayasan pembuat board mikrokomputer Raspberry Pi. Microcontroller yang dipakai di Pico adalah RP2040 yang dirancang oleh tim Raspberry Pi. Saya sudah langsung membeli board ini sejak diluncurkan, tapi belum sempat menuliskannya, dan memang baru akhir-akhir ini sempat ngoprek lebih jauh board ini.

Rasberry Pi Pico

Microcontroller RP2040 selain digunakan di Raspberry Pi Pico (selanjutnya saya sebut Pico saja supaya singkat) juga sudah digunakan di berbagai board lain. Di tulisan ini saya akan menuliskan Pico, untuk hal-hal yang spesifik Pico (misalnya ukuran Flash memory), dan RP2040 untuk hal-hal yang sama di semua board yang berdasarkan RP2040.

Spesifikasi

Dibandingkan banyak microcontroller pesaingnya, spesifikasi RP2040 ini cukup standard: memiliki memori internal 264kb dan CPUnya dual core Cortex-M0 133Mhz. Di board Pi Pico SPI Flash yang ada di board hanya 2MB. Tidak ada fitur wireless di versi Pi Pico standard (hanya ada di Pico W).

Salah satu board pesaing yang sudah ada lebih dulu adalah yang berbasis ESP32, yang lebih cepat (240 MHz), Memori lebih besar (520 KB), dan memiliki wireless (Bluetooth/WIFI), serta harganya lebih murah dari berbagai board RP2040. Namun demikian RP2040 memiliki beberapa kelebihan: built in USB dan Programmable IO.

Dokumentasi RP2040 juga sangat detail, lebih baik dibandingkan dengan berbagai microcontroller lain. Walau relatif baru, tapi komunitas Pi Pico juga sudah sangat aktif. Salah satu penyebab lain popularitas Pico adalah: saat ini tidak ada masalah supply microcontroller RP2040.

“We risk-bought quite a lot of wafers, and could sell one to two million per month, up to the maximum of our test capacity,” Raspberry Pi Trading’s applications director Roger Thornton told Electronics Weekly in Nuremberg. “You can buy a reel today, and you will have it in three to four weeks.”

Embedded World: No shortage of industrial Raspberry Pi MCUs

Pi Pico ini bisa menjadi pelengkap bagi board microprocessor Raspberry Pi, untuk membantu melakukan I/O yang realtime. RP2040 memiliki input dan output analog, sedangkan board Microprocessor Raspberry Pi, tidak ada yang punya input analog.

Programmable IO

RP2040 memiliki programmable I/O (PIO), sebuah fitur yang tidak ditemukan di microcontroller lain. Tujuan utama adanya fitur ini adalah untuk mengemulasikan berbagai protokol I/O yang butuh kecepatan tinggi. PIO ini memiliki instruksi khusus yang terbatas (hanya ada 9 instruksi), tapi bisa digunakan untuk emulasi berbagai protokol seperti VGA, atau bahkan ethernet.

Sebagai pembanding: ESP32 punya ULP, ultra-low power coprocessor, tapi fokusnya adalah agar pemakaian dayanya rendah ketika sedang menunggu event.

Mudah Diprogram

Tidak seperti banyak board lain, Pi Pico gampang diprogram tanpa perlu menginstall program khusus. Cukup tahan tombol yang ada di board lalu colokkan Pi Pico ke komputer, Pico akan muncul sebagai USB, kita hanya perlu drag drop file firmware (file UF2), dan akan otomatis terprogram.

Kita bisa membuat program dengan C (menggunakan pico SDK) atau mendownload interpreter program yang sudah tersedia di internet, misalnya MicroPython, CircuitPython, PicoLua, dsb.

Jadi untuk memulai memprogram Python tidak sulit: download file UF2 dari internet, colokkan Pico sebagai USB disk, drag drop, dan selesai. Setelah itu memasukkan program python juga mudah: cukup drag drop file Python dalam mode USB disk.

Mudah didebug

Pico mendukung hardware debugger, kita bisa medebug menggunakan hardware khusus (misalnya JLink), menggunakan GPIO pada SBC Raspberry Pi (atau baca di Dokumentasi Pico), atau menggunakan Pico lain yang sudah diisi program Picoprobe.

Saran saya untuk yang ingin membeli Pico: belilah dua, supaya yang satu bisa digunakan sebagai debugger (kecuali Anda sudah punya hardware lain untuk debugging). Harga 2 Pico lebih murah daripada Pico plus hardware debugger lain.

Koneksi Pi Pico dengan Raspbery Pi SBC untuk debugging

Debugging bisa dilakukan secara visual dengan Visual Studio Code, atau command line dengan GDB.

Sesi debug dengan gdb

Board RPI2040 selain Pico

Saat ini sudah ada banyak board lain selain Pico. Harga Resmi Raspberry Pi Pico adalah 4 USD, board lain harganya ada yang lebih murah (termurah di AliExpress: 2.55 USD) dan ada yang lebih mahal karena perbedaan komponen yang digunakan. Contoh perbedaan adalah pada kapasitas flash memory, hardware tambahan (LED, LCD, Speaker, microSD reader, dsb).

Pico (kiri atas), board lain yang memakai RP2040, dan yang dibawah adalah Pico yang disolder di atas Board Make Pico

Ketika memilih board yang bukan dari Raspberry, perhatikan dengan seksama apakah memang sesuai kebutuhan. Contoh: ada board yang tidak memiliki pin SWD untuk debugging.

Berbagai board RP2040 di AliExpress

Penutup

Tulisan ini hanya sekedar memperkenalkan apa itu Pico, sehingga saya bisa merujuk ke artikel ini ketika membuat tulisan lain yang memakai Pico. Di tulisan lain, saya akan menceritakan pengalaman menggunakan Pico sebagai “USB Rubber Ducky” untuk mempersiapkan laptop yang digunakan dalam event Olimpiade Informatika Internasional (IOI).

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.