MicroPython dengan Papan Arduino: Panduan Praktis Lengkap

Pembaharuan Terakhir: 05/17/2026
  • MicroPython dapat dijalankan pada banyak papan Arduino modern (ESP32, RP2040, STM32, Renesas RA), tetapi secara realistis tidak dapat dijalankan pada perangkat Uno berbasis AVR klasik.
  • Firmware resmi, port, dan build harian dari GitHub dan server MicroPython menyederhanakan proses flashing pada board Arduino dan NodeMCU yang kompatibel.
  • Indeks Paket MicroPython yang lengkap menyediakan driver yang telah diuji untuk sensor, layar, expander IO, dan modul khusus Arduino seperti Modulino dan Nicla Sense Env.
  • Kombinasi MicroPython dan perangkat keras Arduino memungkinkan pembuatan prototipe yang cepat dan berbasis REPL, serta integrasi cloud melalui klien Python Arduino IoT Cloud.

Papan Micropython dan Arduino

Jika Anda sudah merasa nyaman dengan Python "biasa" dan baru saja menemukan MicroPython, Anda tidak sendirian.Banyak pengembang menemukan hal yang sama persis ketika mereka mulai bereksperimen dengan mikrokontroler seperti Arduino, ESP32, atau Raspberry Pi Pico. Sekilas, sintaksnya tampak hampir identik dengan CPython, tetapi tiba-tiba ada modul baru, kelas khusus perangkat keras, dan cara berbeda untuk memprogram dan menjalankan kode pada papan.

Panduan ini menggabungkan informasi penting dari sumber daya berbahasa Inggris terbaik tentang MicroPython dan Arduino, serta memadukannya dengan konteks praktis dan nyata.Anda akan melihat di mana kode resmi MicroPython berada, papan yang kompatibel dengan Arduino mana yang sebenarnya dapat menjalankan MicroPython, jenis driver dan pustaka apa yang tersedia, dan bagaimana cara memulai jika Anda memiliki papan bergaya Arduino seperti NodeMCU berbasis ESP, Nano ESP32, Nano RP2040 Connect, atau Portenta.

Apa itu MicroPython dan bagaimana hubungannya dengan Arduino

MicroPython adalah implementasi ringan dari bahasa Python yang dirancang untuk berjalan langsung pada mikrokontroler.Alih-alih berjalan pada sistem operasi desktop lengkap, MicroPython dieksekusi pada chip kecil dengan RAM dan memori flash terbatas, memberi Anda prompt Python langsung di perangkat. Inti bahasanya tetap sangat mirip dengan CPython, sehingga pengetahuan Python Anda yang sudah ada sebagian besar dapat digunakan, tetapi Anda mendapatkan modul tambahan seperti... mesin, jaringan or wussss untuk berkomunikasi dengan pin, sensor, bus, dan penyimpanan.

Hubungan dengan Arduino sebagian besar berkaitan dengan perangkat keras dan API, bukan tentang lingkungan "sketsa C++" Arduino tradisional.MicroPython menargetkan papan dan chip (port) tertentu seperti ESP32, ESP8266, RP2040, nRF51/nRF52, STM32, SAMD, Renesas RAdan seterusnya. Banyak papan Arduino modern dibangun di atas MCU tersebut, yang membuatnya kompatibel dengan MicroPython.

Arduino Uno klasik, yang berbasis pada ATmega328P 8-bit AVR, tidak memiliki port MicroPython resmi.. Kapasitas flash dan RAM-nya terlalu terbatas, dan VM MicroPython tidak dirancang untuk chip sekecil itu. Itulah mengapa Anda akan melihat pertanyaan komunitas seperti “Bagaimana cara menjalankan MicroPython di Arduino Uno?” dan jawaban singkat dan jujurnya adalah: biasanya Anda tidak bisa, dan jika Anda berhasil melakukannya, akan sangat terbatas dan tidak didukung secara resmi.

Titik temu antara Arduino dan MicroPython sebenarnya terletak pada papan "Arduino" yang lebih baru yang menggunakan MCU 32-bit dengan sumber daya yang memadai.Papan seperti Arduino Nano ESP32, Arduino Nano RP2040 Hubungkan, Arduino Nano 33 BLE Rasa, Arduino Giga, Tanda H7, Portenta C33, Visi Nicla, Nicla Sense Env ke Opta WiFi Mikrokontroler ini terpasang di atas chip seperti ESP32, RP2040, STM32H7, Renesas RA6M5, dan keluarga serupa lainnya. Mikrokontroler tersebut memiliki port MicroPython resmi atau yang sedang dikembangkan secara aktif.

Kode sumber resmi MicroPython, build, dan port yang didukung.

MicroPython dikembangkan secara terbuka menggunakan Git untuk kontrol versi, dan repositori kanoniknya berada di GitHub di github.com/micropython/micropython.Repositori tersebut menyimpan kode sumber interpreter lengkap, pustaka inti, dan port untuk berbagai keluarga mikrokontroler. Jika Anda perlu memeriksa bagian internal atau membuat citra firmware sendiri, di situlah tempatnya.

Proyek ini menyediakan distribusi kode sumber lengkap dari versi stabil terbaru sebagai arsip yang dapat diunduh.Rilis-rilis ini menggabungkan interpreter, pustaka, dan port dalam sebuah snapshot yang dapat Anda kompilasi sendiri. Bagi mereka yang ingin lebih dekat dengan batas kemampuan, tersedia Cuplikan harian dari repositori GitHub Tersedia dari server MicroPython. Snapshot tersebut biasanya tidak menyertakan submodule Git tetapi melacak status pengembangan saat ini, yang berguna jika Anda sedang menguji fitur baru atau mengirimkan patch.

Selain kode sumber, MicroPython menawarkan citra firmware yang dibuat secara otomatis untuk berbagai macam papan dan arsitektur.Firmware ini dihasilkan setiap hari untuk berbagai port, termasuk:

  • alf
  • Cc3200
  • esp32 (dengan varian seperti esp32c2, esp32c3, esp32c5, esp32c6, esp32p4, esp32s2, esp32s3)
  • esp8266
  • mimxrt (i.MX RT)
  • nrf (nRF51, nRF52, nRF91)
  • renesas-ra (RA4M1, RA4W1, RA6M1, RA6M2, RA6M5, dll.)
  • rp2 (RP2040, RP2350)
  • Samd (SAMD21, SAMD51)
  • stm32 (STM32F0, F4, F411, F7, G0, G4, H5, H7, L0, L1, L4, U5, WB, WL)

Pembaruan harian tersebut biasanya dikelompokkan dan dapat difilter berdasarkan fitur, vendor, dan MCU sehingga Anda dapat dengan cepat menemukan citra firmware yang sesuai dengan papan Anda.Filter fitur mencakup kemampuan seperti Audio Codec, BLE, Pengisian Baterai, CAN, Kamera, DAC, Display, Inti ganda, Sensor Lingkungan, Ethernet, Flash Eksternal, RAM Eksternal, Bulu, IMU, JST‑PH/JST‑SH, Lora, Mikropon, PoE, RGB LED, Kartu SD, Elemen Aman, USB/USB-C, WiFi, microSD, dan mikroBUSTerdapat juga filter vendor yang memungkinkan Anda, misalnya, mempersempit hasil pencarian ke vendor tertentu. Papan bermerek Arduino.

Beberapa papan Arduino secara eksplisit tercantum atau secara implisit tercakup melalui MCU-nya.Di antara nama-nama Arduino yang terkait dengan pengembangan MicroPython, Anda akan menemukan:

  • Giga
  • Arduino Nano 33 BLE Rasa
  • Arduino Nano ESP32
  • Arduino Nano RP2040 Hubungkan
  • Arduino Nicla Visi
  • Arduino Nicla Sense Env (disajikan melalui perpustakaan tertentu)
  • Arduino Opta WiFi
  • Arduino Portenta C33
  • Arduino Portenta H7 (sering disebut sebagai varian envie_m7)

Karena citra firmware dibuat per port dan papan, langkah pertama Anda selalu mengidentifikasi MCU dan varian yang tepat yang digunakan oleh papan Arduino Anda.Sebagai contoh, Arduino Nano ESP32 dipetakan ke esp32 port, sedangkan Nano RP2040 Connect menggunakan rp2 pelabuhan. Portenta H7 berada di bawah stm32 keluarga kelas atas, dan Portenta C33 bersandar pada renesas-ra Port. Mencocokkan ini memastikan Anda mem-flash binary MicroPython yang benar.

Apakah MicroPython berfungsi di semua papan Arduino?

Ini adalah salah satu pertanyaan paling umum dari orang-orang yang menemukan MicroPython setelah bekerja dengan ekosistem Arduino.Versi singkatnya adalah: MicroPython tidak mendukung semua papan Arduino.Namun, perangkat ini mendukung banyak perangkat yang lebih baru yang menggunakan MCU 32-bit dengan memori dan flash yang memadai.

Papan pengembangan yang secara realistis tidak memungkinkan untuk menggunakan MicroPython adalah Arduino AVR lawas seperti Uno, Nano (klasik), Mega, atau Leonardo.Papan tersebut mengandalkan mikrokontroler AVR 8-bit dengan sumber daya terbatas. Meskipun telah ada port eksperimental dan fork ultra-minimal di komunitas, proyek MicroPython resmi berfokus pada arsitektur 32-bit yang lebih mumpuni, jadi Anda tidak perlu mengharapkan firmware MicroPython yang sempurna dan dipelihara secara resmi untuk Uno.

Sebaliknya, NodeMCU dan papan pengembangan ESP8266/ESP32 serupa sangat cocok untuk MicroPython dan didukung secara aktif.NodeMCU biasanya menggunakan sebuah ESP8266 or ESP32 Kedua chip tersebut memiliki port MicroPython yang stabil dan populer. Memasang MicroPython ke NodeMCU memberi Anda cara yang sangat mudah untuk melakukan pengembangan IoT berkemampuan WiFi dengan sintaks Python, bukan dialek C++ Arduino.

Untuk perangkat keras bermerek Arduino, fokuslah pada model yang menggunakan kembali MCU yang sama dengan papan MicroPython arus utama.Ini mencakup keluarga besar:

  • Arduino Nano ESP32 — Berbasis ESP32; menggunakan port esp32.
  • Arduino Nano RP2040 Hubungkan — berbasis pada Raspberry Pi RP2040; menggunakan port rp2.
  • Arduino Nano 33 BLE Rasa — Nordic nRF52; didukung melalui port nrf.
  • Arduino Giga — MCU STM32H7 kelas atas; tercakup melalui port stm32.
  • Arduino Portenta H7 — STM32H7 dual-core; didukung melalui stm32.
  • Arduino Portenta C33 — Mikrokontroler Renesas RA; terhubung ke port renesas-ra.
  • Arduino Nicla Visi dan papan Nicla terkait — dibangun di sekitar MCU yang didukung dan diakses dengan driver MicroPython khusus.
  • Arduino Opta WiFi — berorientasi industri, tetapi dibangun di atas komponen STM32 yang didukung.

Jika Anda memegang Arduino Uno dan NodeMCU berdampingan, hanya NodeMCU yang benar-benar merupakan kandidat utama untuk MicroPython.Dengan Uno, lebih pragmatis untuk tetap menggunakan Arduino C++ atau meningkatkan ke papan yang lebih modern dan kompatibel dengan MicroPython yang tetap sesuai dengan ekosistem Arduino, seperti Nano ESP32 atau Nano RP2040 Connect.

Apakah Anda memerlukan IDE baru atau alat tambahan untuk MicroPython?

Pengembangan MicroPython terasa berbeda dari kompilasi sketsa Arduino, tetapi Anda tidak perlu IDE baru yang berat.Karena MicroPython menjalankan interpreter di papan, Anda biasanya bekerja dengan file .py teks biasa dan REPL serial, bukan sketsa .hex atau .bin yang telah dikompilasi.

Persyaratan pentingnya adalah cara untuk memprogram firmware ke papan dan alat untuk mengunggah file Python serta berkomunikasi dengan REPL.Untuk melakukan flashing, Anda biasanya mengandalkan alat dari vendor atau utilitas baris perintah seperti esptool.py (untuk ESP8266/ESP32), atau Anda menggunakan dukungan bootloader papan (UF2 untuk RP2040, DFU untuk STM32, dll.). Banyak halaman web dan dokumentasi MicroPython memberikan instruksi flashing yang konkret untuk setiap port.

Untuk pengeditan dan transfer file, Anda dapat tetap menggunakan editor kode favorit Anda dan cukup menambahkan helper yang kompatibel dengan MicroPython.Pilihan umum meliputi:

  • Thony — sebuah IDE Python sederhana dengan dukungan MicroPython bawaan, REPL serial, dan manajemen file.
  • Editor Mu — editor ramah pemula yang mendukung MicroPython dan CircuitPython.
  • VS Code Dengan ekstensi — Anda dapat menggunakan dukungan Python reguler bersama dengan add-on yang menangani unggahan/REPL MicroPython.
  • ampy / rshell / mpremote — alat baris perintah untuk mengunggah skrip, mencantumkan file, dan berinteraksi dengan REPL pada perangkat.

Pada beberapa papan bermerek Arduino, Anda juga akan menemukan jalur integrasi yang memungkinkan Anda tetap dekat dengan dunia Arduino sambil tetap menulis kode MicroPython.Beberapa alat dan pustaka memungkinkan Anda untuk Susun program MicroPython Anda dengan gaya Arduino. mempersiapkan() ke loop (), dan menampilkan fungsi-fungsi yang sudah dikenal seperti digitalTulis or analogRead Di balik layar. Hal ini memungkinkan pengguna Arduino lama merasa lebih nyaman, meskipun runtime yang mendasarinya adalah MicroPython.

Dalam praktiknya, beralih ke MicroPython biasanya berarti Anda berhenti menggunakan IDE Arduino klasik untuk proyek-proyek tersebut dan beralih ke alur kerja yang berorientasi pada Python.Meskipun demikian, model mental Anda tentang "papan + pin + pustaka + contoh" tetap utuh, dan setelah satu atau dua hari mencoba-coba, kombinasi editor MicroPython + REPL terasa sangat alami.

Memulai: dari Arduino Uno dan NodeMCU ke MicroPython

Jika tujuan Anda adalah menjalankan MicroPython di Arduino Uno, kemungkinan besar Anda akan menghadapi kendala yang cukup besar.Interpreter tersebut terlalu besar untuk ATmega328P pada Uno, dan proyek resminya tidak menyediakan port yang terawat. Anda mungkin menemukan fork eksperimental atau turunan yang sangat disederhanakan, tetapi mereka tidak akan berperilaku seperti lingkungan MicroPython normal, dan banyak pustaka yang tidak akan cocok. Bagi kebanyakan orang, langkah pragmatis adalah menerima bahwa Uno adalah papan "Arduino C++ klasik" dan memilih perangkat lain untuk eksperimen MicroPython.

Namun, dengan NodeMCU (varian ESP8266 atau ESP32), Anda dapat mengikuti jalur yang mudah untuk mempelajari MicroPython.Langkah-langkah pastinya sedikit berbeda tergantung pada chipnya, tetapi alur umumnya adalah:

  • 1. Unduh firmware MicroPython yang sesuai. Unduh versi Python untuk port ESP8266 atau ESP32 Anda dari halaman unduhan MicroPython atau server build harian. Pastikan versi tersebut sesuai dengan ukuran flash dan keluarga board Anda.
  • 2. Hapus dan flash papan. menggunakan esptool.py (atau yang setara) dari komputer Anda. Ini akan menghapus firmware yang ada (seringkali berupa sketsa NodeMCU Lua atau Arduino) dan menginstal MicroPython sebagai gantinya.
  • 3. Hubungkan terminal serial atau alat REPL (seperti Thonny, Mu, mpremote, atau konsol serial generik) pada kecepatan baud yang tepat. Anda akan melihat tampilan yang familiar. >>> Prompt Python jika semuanya berjalan lancar.
  • 4. Membuat dan mengunggah skrip bernama boot.py ke main.py, atau modul lain apa pun yang ingin Anda impor. Modul-modul ini akan berjalan secara otomatis atau tersedia untuk impor interaktif.

Pola yang sama berlaku untuk banyak papan bermerek Arduino yang kompatibel dengan MicroPython, dengan satu-satunya perbedaan nyata adalah alat flashing dan perilaku bootloader yang tepat.Sebagai contoh, Arduino berbasis RP2040 akan menggunakan bootloader UF2 (seret dan lepas file .uf2), sedangkan Portenta H7 akan mengandalkan mekanisme boot STM32 atau utilitas pabrikan. Setelah di-flash, sisi Python akan terlihat sangat mirip: mesin.Pin untuk GPIO, mesin.I2C untuk sensor, dan sebagainya.

Salah satu kemudahan tambahan yang tersedia dalam ekosistem Arduino adalah pustaka pembantu MicroPython yang memungkinkan Anda menulis kode dengan gaya seperti sketsa.Pustaka ini menyediakan API yang mirip dengan Arduino dan bahkan implementasi MicroPython untuk mempersiapkan() ke loop ()Sebagai contoh, Anda dapat menulis sesuatu yang secara konseptual mirip dengan sketsa Arduino, tetapi di balik layarnya berjalan pada runtime MicroPython dengan sintaks dan semantik Python. Hal ini membuat transisi lebih lancar bagi orang-orang yang sudah terbiasa menggunakan Arduino selama bertahun-tahun.

Paket dan pustaka MicroPython untuk papan yang kompatibel dengan Arduino.

Salah satu keunggulan utama MicroPython pada papan kelas Arduino adalah ekosistem driver perangkat keras dan pustaka pembantu yang terus berkembang.Komunitas MicroPython memelihara sebuah Indeks Paket MicroPython yang mencantumkan modul yang dapat digunakan kembali yang dapat diinstal atau disalin ke papan yang didukung, termasuk banyak modul dengan verifikasi eksplisit pada produk Arduino.

Pedoman kontribusi untuk indeks ini menjelaskan cara mengirimkan paket baru, mendokumentasikannya dengan benar, dan memberi tag pada paket tersebut dengan fitur-fitur yang relevan.Hal ini memastikan bahwa ketika Anda mencari sensor atau layar, Anda dapat dengan cepat menemukan driver yang diketahui kompatibel dengan port mikrokontroler tertentu atau bahkan papan Arduino tertentu.

Di antara pustaka yang tersedia, beberapa dikhususkan secara khusus untuk perangkat keras Arduino, sementara yang lain adalah driver generik yang kebetulan berjalan dengan baik pada papan bermerek Arduino.Misalnya, ada sebuah Pustaka MicroPython untuk mengontrol Arduino Modulino., yang merupakan add-on modular yang terintegrasi erat dengan perangkat keras Arduino. Paket penting lainnya adalah sebuah Pustaka MicroPython untuk Arduino Nicla Sense Env, berfokus pada kemampuan penginderaan lingkungan dari papan tersebut.

Ada juga fitur pembantu unggulan yang memudahkan penulisan kode menggunakan pola ala Arduino seperti setup/loop dan API yang familiar sambil tetap menggunakan MicroPython.Paket ini secara efektif menjembatani kesenjangan konseptual antara "sketsa Arduino" dan modul Python, memungkinkan pengguna untuk mempertahankan kebiasaan seperti memanggil digitalTulis padahal sebenarnya memanfaatkan runtime dan REPL MicroPython.

Selain pustaka-pustaka yang bertema Arduino, ekosistem ini berisi daftar panjang driver sensor, layar, penyimpanan, dan utilitas yang mendukung MicroPython pada MCU dan board umum.Banyak di antaranya telah diuji pada papan seperti... arduino:esp32:nano_nora, Berbagai esp32s3 perangkat, dan kelas atas mbed_portenta varian. Catatan verifikasi sering kali menyebutkan versi MicroPython dan ID papan yang digunakan, sehingga Anda tahu bahwa pustaka tersebut bukan sekadar teori.

Driver dan utilitas MicroPython penting yang dapat Anda gunakan

MicroPython Package Index menyediakan koleksi driver yang lengkap yang mencakup sensor lingkungan, pengontrol tampilan, pengembang I/O, penyimpanan, protokol komunikasi, dan banyak lagi.Jika Anda membangun proyek pada papan Arduino yang kompatibel, kemungkinan besar sudah tersedia driver siap pakai untuk perangkat keras yang Anda inginkan.

Sensor lingkungan dan gas terwakili dengan baik.Anda akan menemukan driver MicroPython untuk BME280 sensor (sering dirujuk dengan perangkat Pycom sebagai target) dan satu lagi untuk BME680 terobosan, berkomunikasi melalui saya²CDriver ini menangani pembacaan suhu, kelembaban, tekanan, dan gas, memungkinkan Anda untuk menghubungkan papan seperti Nano ESP32 atau Nano RP2040 Connect ke sensor lingkungan hanya dengan beberapa baris kode Python.

Kontrol tampilan juga tercakup dengan baik.Tersedia driver Python untuk Holtek HT16K33 Pengontrol ini memberi daya pada perangkat seperti Adafruit 0.8 inci 8×16 LED Matrix FeatherWing atau beberapa layar Raspberry Pi Pico. Driver ini mendukung keduanya. SirkuitPython ke MikroPython Melalui I²C, sehingga membuatnya serbaguna dan dapat digunakan kembali di berbagai ekosistem. Anda juga mendapatkan driver MicroPython untuk pengontrol tampilan seperti SH1106 ke SH1107, digunakan dalam berbagai panel OLED, serta kemasan untuk HD44780LCD karakter berbasis (model 1602 dan 2004) yang dikendalikan melalui I²C.

Untuk konversi analog ke digital dan perluasan I/O, tersedia beberapa paket yang handal.Terdapat driver MicroPython untuk itu. ADS1x15 serangkaian ADC, banyak digunakan untuk menambahkan input analog dengan resolusi lebih tinggi. Pustaka lain mendukung MCP23017 Expander I/O 16-bit dengan antarmuka I2C, yang memungkinkan Anda meningkatkan secara dramatis jumlah pin digital yang diekspos oleh papan kelas Arduino Anda, semuanya dikendalikan dari MicroPython.

Berbagai paket driver LED mencakup umpan balik visual dan tampilan.Anda akan menemukan pustaka MicroPython untuk MAX7219 Driver matriks LED 8×8 menggunakan SPI dan frame buffer, serta driver untuk tampilan LED 7 segmen quad berdasarkan TM1637 chip. Ada juga perpustakaan untuk Grafik batang LED 10 segmen menggunakan MY9221 driver, dan modul MicroPython terpisah untuk LED yang dapat diatur alamatnya seperti WS2812B ke SK6812 (sering dikenal secara umum sebagai neopixel) pada Raspberry Pi Pico. Semua ini cocok dipasangkan dengan papan bermerek Arduino yang memiliki keluarga MCU yang sama.

Jam waktu nyata dan kasus penggunaan pencatatan data didukung melalui modul khusus.Salah satu pengemudi menargetkan DS3231 RTC dikombinasikan dengan AT24C32 EEPROM, sehingga memudahkan untuk menjaga ketepatan waktu dan menyimpan konfigurasi atau log kecil di seluruh siklus daya. Dikombinasikan dengan fitur SDCard dan microSD yang tersedia di port tertentu, Anda dapat menyusun pengaturan pencatatan data yang serius hanya dengan menggunakan skrip MicroPython.

Pengukuran suhu tanpa kontak dan input kapasitif juga mudah dilakukan berkat driver yang terfokus.Terdapat pustaka MicroPython untuk itu. Melexis MLX90614 Sensor suhu IR, yang memungkinkan pengukuran suhu jarak jauh, dan satu lagi untuk MPR121 Papan tombol sentuh kapasitif dan papan breakout, berguna untuk antarmuka pengguna berbasis sentuh. Keduanya terintegrasi dengan lancar melalui I²C dan dapat digunakan dengan papan MicroPython yang kompatibel dengan Arduino.

Untuk perangkat keras biometrik dan yang terkait dengan audio, Anda akan menemukan port MicroPython khusus.Tersedia paket untuk itu. MAX30102 Sensor, modul oksimeter denyut/detak jantung populer yang awalnya didukung oleh driver SparkFun, kini diadaptasi ke MicroPython. Modul pemutaran audio tercakup dalam Implementasi MicroPython untuk kontrol DFPlayer melalui UART., sehingga pemutaran MP3 dapat diakses tanpa kode yang rumit.

Pengaturan waktu, gerakan, dan perangkat input mendapatkan implementasi yang kuat masing-masing.Sebuah driver MicroPython untuk encoder putar menggunakan interupsi GPIO dan debouncing untuk memberikan pembacaan yang akurat dan tidak bergetar pada papan seperti Pyboard, Raspberry Pi Pico, ESP8266, dan ESP32. Kontrol servo pada Raspberry Pi Pico diatasi melalui driver yang menggunakan PDM (Modulasi Kepadatan Pulsa) atau pembungkus berbasis PWM yang lebih sederhana, dan ada kelas pembantu kecil yang berfokus pada mengendalikan servo 9g dari MicroPython.

Komunikasi inframerah ditangani oleh sepasang driver non-blocking untuk penerima dan pemancar.Satu pustaka berfokus pada penerimaan kode kendali jarak jauh IR, sementara pustaka lainnya menangani transmisi IR untuk aplikasi "blaster". Keduanya dirancang untuk operasi non-blocking sehingga dapat berjalan dengan nyaman bersamaan dengan tugas-tugas MicroPython lainnya.

Untuk pencetakan termal dan output tampilan, tersedia port MicroPython dari pustaka Python Thermal Printer milik Adafruit.Paket ini memungkinkan Anda untuk mengendalikan printer struk termal dari papan seperti ESP32 atau RP2040, sekali lagi menggunakan MicroPython sebagai lingkungan pengendalinya.

Selain driver perangkat keras, terdapat utilitas yang membuat proyek IoT berbasis Arduino menjadi jauh lebih sederhana.Salah satu yang menonjol adalah Aplikasi klien Python untuk Arduino IoT Cloud Paket ini berfungsi baik di CPython maupun MicroPython. Paket ini, yang dihosting di GitHub di bawah organisasi Arduino dan dilisensikan di bawah Mozilla Public License 2.0, memungkinkan perangkat MicroPython untuk terhubung ke Arduino IoT Cloud untuk telemetri, dasbor, dan kendali jarak jauh. Paket ini telah diverifikasi pada... arduino:mbed_portenta:envie_m7 Platform yang menjalankan MicroPython, menunjukkan bahwa papan Arduino kelas atas dapat terintegrasi dengan mulus ke dalam layanan cloud Arduino dari lingkungan eksekusi Python.

Beberapa pustaka tampilan dan input awalnya dirancang berdasarkan varian Pycom dari MicroPython, tetapi tetap dapat diterapkan dengan baik pada banyak papan kelas Arduino.Sebagai contoh, terdapat paket antarmuka layar karakter LCD I2C yang dirancang khusus untuk Pycom, dan port MicroPython dari ucPack pustaka tersebut, yang keduanya seringkali dapat digunakan kembali atau diadaptasi untuk port MicroPython lainnya ketika konfigurasi bus dan pin yang mendasarinya cocok.

Mengapa MicroPython pada perangkat keras kelas Arduino layak untuk dieksplorasi?

Ketika Anda menggabungkan nuansa dinamis dan tingkat tinggi MicroPython dengan beragam perangkat keras yang kompatibel dengan Arduino, Anda akan mendapatkan platform pembuatan prototipe yang sangat fleksibel.Alih-alih terus-menerus mengkompilasi ulang sketsa, Anda dapat melakukan iterasi secara interaktif: buka REPL, sentuh pin, baca sensor, sesuaikan logika, dan lihat umpan balik instan. Hal itu saja dapat secara signifikan mengurangi waktu pengembangan untuk proyek hobi, demo singkat, atau bahkan prototipe profesional.

Ekosistem paket MicroPython, dengan dukungan dan verifikasi eksplisit pada papan Arduino, berarti Anda jarang perlu memulai dari awal dengan register mentah atau driver C yang kompleks.Pustaka untuk sensor seperti BME280/BME680, layar yang didukung oleh HT16K33, SH1106 atau HD44780, pengembang IO seperti MCP23017, dan komponen infrastruktur seperti klien dan host ModBus TCP/RTU semuanya membantu Anda memanfaatkan kontribusi komunitas.

Pada saat yang sama, ekosistem Arduino memberikan integrasi cloud dan desain papan yang dirancang dengan baik.. Yang berdedikasi Klien Python untuk Arduino IoT Cloud adalah contoh bagus bagaimana kedua ekosistem tersebut beririsan: Anda dapat menulis kode MicroPython pada papan kelas Portenta, namun tetap memanfaatkan dasbor dan perangkat IoT Arduino. Papan kelas atas seperti Giga atau Portenta H7 menghadirkan MCU dual-core, Ethernet, WiFi, BLE, USB-C, dan banyak lagi dalam satu perangkat, yang semuanya dapat dioperasikan dari firmware MicroPython.

Tentu saja, ada konsekuensi yang harus ditanggung.Beberapa aplikasi tingkat rendah yang sangat sensitif terhadap waktu mungkin masih lebih baik ditulis dalam C/C++ sebagai sketsa Arduino klasik, dan papan dengan sumber daya yang sangat terbatas seperti Uno asli sama sekali tidak cocok untuk MicroPython. Tetapi untuk sebagian besar kategori proyek yang melibatkan sensor, tampilan, konektivitas, dan kebutuhan waktu nyata yang moderat, MicroPython pada perangkat keras Arduino yang kompatibel adalah kombinasi yang cepat, mudah diakses, dan sangat ampuh.

Bagi siapa pun yang berasal dari Python standar, beralih ke MicroPython pada papan kelas Arduino modern seperti Nano berbasis ESP32, RP2040 Connect, atau perangkat Portenta menawarkan jalan masuk yang mudah ke pengembangan sistem tertanam sambil memanfaatkan kembali keterampilan bahasa Anda, mengakses indeks paket yang kaya, dan mengambil keuntungan dari perangkat keras yang tangguh dan terdokumentasi dengan baik yang membuat Arduino begitu populer sejak awal..

agen AI lokal di esp32
Artikel terkait:
Agen AI lokal di ESP32: kerangka kerja, asisten suara, dan proyek nyata
Pos terkait: