Minggu, 15 September 2013

Espruino Ajarkan Mikrokontroler Basa Java

Mikrokontroller adalah ideal untuk mengendalikan dan menghubungkan satu perangkat dengan lainnya dalam satu jaringan. Saat ini cukup banyak tersedia perangkat untuk itu dengan berbagai rentang harga dan perlengkapan yang beragam. Salah satu proyek OSS dan OSHW yang diluncurkan di Kickstarter, adalah platform Espruino yang akan meramaikan pasar dengan kemampuan dapat diprogram menggunakan bahasa JavaScript.

Espruino adalah papan sirkuit open-source dapat dijalankan hanya memakan waktu beberapa menit saja. Kartu dengan dimensi 54 x 41 mm ini, kompak dan ditenagai oleh prosesor ARM Cortex-M3 STM32 32-bit dengan detak frekuensi clock 72 MHz, dapat mengakses 256 KB memori flash dan 48 KB RAM. Kecuali itu, papan ini dapat menangani tegangan input mulai dari 3.6V sampai dengan 15V.

Espruino dapat disambungkan ke PC melalui jalur USB, dan dilengkapi dengan dua tombol, 44 pin GPIO (jarak 2,54 mm), diantaranya termasuk 26 pin PWM, 16 pin ADC, tiga USART dan masing-masing dua untuk SPI, I2C dan DAC. Pengembang telah menyolderkan LED berwarna merah, hijau dan biru di papan sirkuit. Papan sirkuit didisain sedemikian rupa sehingga memungkinkan pembaca kartu SD dan modul Bluetooth HC-05 mudah terhubung dangan Espruino.



Pada Espruino tertanam interpreter JavaScript yang langsung mengendalikan pin-pin secara individual. Setelah micro-controller terhubung ke komputer, maka koneksi secara serial dibangun. Setelah itu papan Espruino dapat langsung diprogram menggunakan JavaScript tanpa perlu memasang lingkungan pengembangan software (SDK) atau memiliki kemahiran teknis untuk membuat sebuah aplikasi di papan Espruino, dilakukan melalui antarmuka berbasis web.

Proyek pendanaan di Kickstarter untuk memenuhi target mendapatkan dana sedikitnya 20.000 pound sterling (Rp. 360 Juta) ternyata telah dilampaui. Pada saat ini (2013-09-15) telah terhimpun dana £49,751 dari 1,118 pendukung. Masih ada 11 hari waktu tersisa untuk mendapatkan dana tambahan. Apabila target £50,000 (= Rp. 900 Juta) dicapai, maka para pengembang memastikan bahwa Espruino akan mendukung modul WiFi CC3000 dan proyek ini tidak sekedar "JavaScript for Things" namun juga aktif merupakan dari "Internet of Things".



Apakah yang sebenarnya membedakan Espruino terhadap Arduino dan Raspbery? Agar mendapat sedikit gambaran tentang perbedaan diantara tiga platform tersebut, situs Espruino dalam lembaran FAQ menjelaskan sebagai berikut:

Espruino vs Raspberry Pi:
Raspberry Pi (Raspi) diakui sangat powerfull dan fleksibel, namun terlalu boros enerji bila dioperasikan menggunakan baterai. Sebagai konsekuensi atas ke-tidak tersediaan real-time clock di papan utama Raspi, maka sistem ini tidak dapat menjadwalkan tindakan secara real-time. Dengan kata lain berarti bahwa sulit mendapatkan waktu yang akurat dari Raspi. Namun Raspi diakui sebagai jagonya memainkan Video dan Audio, sementara Espruino kekurangan potensi untuk melakukan hal itu. Espruino menjalankan dan mengerti perintah JavaScript, dan menurut pengembangnya, hal ini membuatnya sangat dekat dan mudah untuk pemula. Karena Raspberry Pi jalan dengan OS Linux, dengan sendirinya menyediakan pilihan beragam untuk bahasa pemrograman, dan juga umumnya lebih banyak memiliki RAM dan tempat penyimpanan data. Raspberry Pi juga tidak memiliki Analog IO, sementara Espruino menyediakannya. Raspi membutuhkan kartu SD yang berisi sistem operasi agar bisa jalan, sementara Espruino sudah ngacir tanpa kartu SD.

Espruino vs Arduino:
Espruino lebih kecil dari pada papan sirkuit Arduino rata-rata dan diklaim jauh lebih mudah untuk pemula dan pengguna tidak harus melakukan pra-instalasi perangkat lunak pada Mac atau PC sebelumnya. Espruino dan Arduino memiliki kesamaan dimana keduanya mengkonsumsi daya rendah dan memiliki banyak fungsi. Namun, jika Anda ingin menambahkan alat ke Arduino untuk mendapatkan fungsi lebih, Anda mungkin harus merogoh kocek lebih dalam untuk membeli (add-on) shields. Kecuali itu Espruino dapat bekerja dengan shield melalui adaptor, disamping juga tersedia ruang solder untuk prototyping. Menggunakan interpreter JavaScript berarti bahwa Espruino tidak harus di-reset ketika membuat perubahan pada kode, namun tidak dipungkiri sedikit kelemahan Espruino yaitu pada kecepatan meng-eksekusi yang sedikit lebih lambat. Misalnya, Espruino merasa kekurangan tenaga saat memutar Audio dan Video, seperti juga halnya pada beberapa jenis papan Arduino.