Jupyter for Micropython

, , Leave a comment

Halo selamat datang kembali di andidinata.com. Jupyter adalah sebuah program interface Python yang sering digunakan dalam scientific computing atau memberikan tutorial tentang tahapan-tahapan coding. Jupyter sendiri tidak melakukan processing dari input yang kita tuliskan, namun sebagai webserver. Yang dilakukannya adalah mengkomunikasikan perintah itu ke main programming languagenya, misalnya Python. Setelah mendapatkan respon, Jupyter akan menerimanya dan menampilkannya di layar web. Oleh karenanya Jupyter berjalan di web browser. Dalam experimennya, Adafruit mencoba untuk membuat agar Jupyter dapat berkomunikasi dengan micropython yang ada di board microcontroller kita. Cara instalasinya sangat sederhana.

  1. Pertama, install jupyter terlebih dahulu
    python3 -m pip install --upgrade pip
    python3 -m pip install jupyter
  2. Pertama, clone repository https://github.com/adafruit/jupyter_micropython_kernel.git
  3. Kedua, kemudian masuk ke dalam direktori jupyter_micropython_kernel dan jalankan setup python3 setup.py install
  4. Ketiga, buatlah direktori ~/.local/share/jupyter/kernels/micropython kemudian copykan kernel.json dari repository clone kedalamnya.
  5. Editlah file kernel.json seperti dibawah ini.
  6. Dari terminal jalankan perintah jupyter notebook dan seketika jupyter akan dilaunch. Pilih new notebook Micropyhon – ESP8266. Micropython akan ready saat teks Kernel Ready muncul

Saat ini jupyter sudah terhubung dengan micropython board di ESP8266. Adafruit sendiri mengklaim bahwa jupyter kernel untuk micropython ini masih dalam tahap eksperimen, jadi expect beberapa bug yang mungkin akan ditemukan.

Untuk mengetahui benar apakah sudah terhubung, maka coba jalankan perintah yang spesifik untuk micropython.

Psst… kalau ingin menggunakan library uGPIO dengan help yang graphical, clone saja repository https://github.com/mdinata/micropython.git

Ada beberapa bug yang memang terlihat dari jupyter kernel untuk micropython ini. Satu yang terlihat adalah fungsi REPL yang belum berjalan semestinya. Agar kita melihat output dari script, maka kita perlu memberikan perintah print terlebih dahulu agar output dari board dapat diterima dan ditampilkan. Bandingkan antara Python3 dan Micropython output berikut ini dengan Jupyter.

Namun yang terpenting error message dari micropython bisa ditampilkan di Jupyter. Dalam coding, ini yang terpenting agar kita dapat segera memperbaikinya. Dalam hal ini Jupyter dapat menjalankan program block-by-block dengan mudah sehingga kita dapat segera memperbaikinya tanpa harus menjalankan keseluruhan program.

Menurut saya, eksperimen ini sudah berhasil untuk menghubungkan antara micropython yang berjalan di board dengan Jupyter. Saya senang sekali dengan eksperimen ini karena memudahkan untuk menyusun tutorial untuk kelas programming atau workshop karena saya dapat menyisipkan narasi untuk setiap baris/blok program agar mudah dimengerti dan diprint sebagai satu paper yang bagus. Saya akan mencoba Jupyter kedepan sebagai IDE untuk micropython, karena kelebihan-kelebihan ini.

Jupyter belum dapat digunakan untuk mentransfer file kedalam flash memory ESP8266 sehingga kita masih perlu menggunakan program lain untuk melakukannya. Namun lain halnya dengan Pyboard maupun Circuit Playground Express (CPX) yang muncul sebagai flashdisk di komputer kita. Untuk Pyboard dan CPX, Jupyter bisa digunakan sebagai full alternative IDE.

Sekian sharing dari saya, semoga memberikan manfaat. Mohon dukungannya untuk memberikan komentar, like dan share tulisan ini. Dan apabila belum, silahkan subscribe blog ini untuk mendapatkan notifikasi tulisan terbaru.

Terima kasih dan sampai bertemu dalam tulisan selanjutnya.

Facebook Comments
 

Leave a Reply