Micropython dengan M5Stack

, , Leave a comment

Hello, this blog is intentionally written in local language for local community. To translate this page to English, you may use the widget found on the header section (request desktop version when reading from mobile). FYI, English is not found in the list by default, choose any language first, wait until the whole page gets translated and then and click the widget again. This time you will find English as the 1st language in the list (top left corner).

PS. please bear with google translation 😉


Halo selamat datang kembali di andidinata.com. Setelah mengulas cepat dalam first impression review, saya tidak sabar untuk mencoba micropython di M5Stack. Untuk memulainya, saya harus menghapus memorinya terlebih dahulu sebelum flashing firmware micropython.

firmware yang saya gunakan bukan dari micropython.org, melainkan dari m5stack.

Firmware

M5Stack menyediakan 2 macam firmware, pertama adalah online dan kedua adalah offline. Firmware online digunakan jika kita ingin melakukan development dari Micropython Web IDE M5Stack yang beralamat di io.m5stack.com

Untuk itu diperlukan proses untuk registrasi antara device M5Stack dengan Web IDE dengan cara memasukkan kode random yang muncul pada device ke Web IDE. Setelah ada tulisan ‘device registered’ maka barulah kita dapat berinteraksi dengan micropython yang terinstall pada device dari internet.

Kelebihan dari Micropython Web IDE adalah:

  • Program disimpan internet sehingga bisa coding web browser, tidak tergantung dengan komputer
  • Cable free/wireless programming

Kekurangannya adalah:

  • Jika wifi access point berubah saat kita berpindah tempat, maka kita harus mengupdate koneksi ssid dan password
  • Saat ini Web IDE hanya menyediakan editor, REPL belum ada sehingga kita tidak bisa mencoba script terlebih dahulu. Hal ini membuat proses development lebih panjang karena harus ‘push’ ke device dulu untuk melihat hasilnya. Menurut saya ini kelemahan yang utama.
  • Koneksi internet yang tidak baik menghasilkan editor yang lagging

Karena ketiga hal tersebut, saya memutuskan untuk menggantinya dengan firmware offline. Dengan firmware ini saya dapat mengoperasikan secara normal. Cukup dengan menyambungkan device ke USB port maka micropython dapat diakses melalui picocom, PuTTY dan uPyCraft IDE. Adafruit ampy belum bisa digunakan karena menyebabkan M5Stack hang.

Micropython Highlight

Micropython M5Stack memiliki library khusus yaitu m5stack yang merupakan library untuk dapat mengakses LCD berbasis ILI9431, button A B C dan speaker. Paling mudah lakukan from m5stack import * untuk memanggil semua fungsi dari library khusus ini.

Fungsi lcd memberikan semua kemungkinan untuk menggambar bidang, memberi warna, pilihan font, orientasi warna dan juga menampilkan gambar.

Screen demo seperti gambar diatas bisa didownload di halaman github

https://github.com/mdinata/micropython/blob/master/m5stack/

Untuk Button ABC, meskipun sederhana, button ini memilki timeout dan callback untuk menjalankan interupsi atau menjalankan fungsi lain.

from m5stack import *
def func():
    print('hello world')
buttonA.releasedFor(0.1,func)

Selain itu, kita dapat membuat short dan long press button dengan sangat mudah karena terdapat argumen timeout (second).

buttonB.pressedFor(2)

Fungsi speaker digunakan untuk mengatur besar kecilnya volume dan juga tone. Suara monotone yang dihasilkan oleh speaker 2W ini jernih dan keras. Fungsi tone memiliki dua argumen yaitu frekuensi untuk tinggi rendahnya nada dan timeout (milisecond) yang menandakan lamanya nada tersebut dimainkan.

from m5stack import *
speaker.volume(5)
speaker.tone(freq=1000,timeout=200)

Dokumentasi micropython untuk M5stack ini masih tergolong minim dan masih berkembang sehingga lebih baik melihat penggunaan library tersebut dari contoh-contoh yang bisa di dapatkan dari halaman githubnya.

Sekian artikel ini, terima kasih telah membaca semoga bermanfaat. Dukung blog ini dengan memberikan like, share dan subscribe. Sampai bertemu pada tulisan berikutnya.

 

 

Facebook Comments
 

Leave a Reply