MicroPython(マイクロパイソン)は、C言語で記述されマイクロコントローラ上での動作に最適化された、Python 3と高い互換性を持つプログラミング言語処理系である。
概要 MicroPythonはマイコン上で動作する完全なPythonコンパイラおよびランタイムである。サポートされたコマンドを即時実行するための対話型プロンプト (REPL) も用意されている。MicroPythonにはPythonのコア・ライブラリのみならず、低レイヤへのアクセスを提供するモジュール群も含まれる。
MicroPythonはもともと、2013年にKickstarterでの資金集めに成功した後、オーストラリアのプログラマ・物理学者のダミアン・ジョージ()により開発されたものである。元のKickstarterプロジェクトではpyboardというを搭載したマイコンボードと共にリリースされたものの、MicroPythonは多くのARMベースのアーキテクチャをサポートしている。メインラインでサポートされているのは ARM Cortex-M(STM32を使用した様々なボード、TI CC3200/WiPy、Teensy ボード、Nordic nRF シリーズ、SAMD21、SAMD51)、ESP8266、ESP32、16bit PIC、Unix、Windows、Zephyr、JavaScriptである。このほか、メインラインでサポートされていない様々なシステムやハードウェア向けに数多くのフォークがある。
2016年にはBBC Micro:bit 向けバージョンのMicroPythonが、BBCとのMicro Bitパートナーシップの一環としてPythonソフトウェア財団により開発された。
2017年7月には、MicroPythonのフォークとして、教育用途および簡単に使えることを主眼にしたCircuitPythonが作成された。MicroPythonとCircuitPythonでは、サポートするハードウェアが若干異なる(例えば、CircuitPythonは Atmel SAM D21とD51をサポートするが、ESP8266はサポートしない)。現在のCircuitPython version 4.0はMicroPython version 1.9.4に基づいている。
2017年、はMicroPythonをRISC-V(RV32およびRV64)アーキテクチャへ移植している。
2021年1月、MicroPythonのRP2040(ARM Cortex-M0+アーキテクチャー、Raspberry Pi Picoその他で採用)への移植版が作成された。
ソースコードはGitHub上でMITライセンスで公開されている。
MicroPythonが使えるIDE 主に教育用で作られたthonny IDEなどがあるが、拡張機能を使えばvisal stadio codeでも使える
脚注
外部リンク MicroPython MicroPython on GitHub