MicroPython[1] — реализация языка Python, написанная на C и предназначенная для выполнения на микроконтроллерах[2][3].
MicroPython включает в себя компилятор и среду выполнения, которые запускаются на микроконтроллере. Для взаимодействия пользователь может использовать интерактивную консоль для непосредственного выполнения программы. MicroPython включает в себя модули, позволяющие программисту использовать низкоуровневые возможности микроконтроллера[1].
Исходный код проекта доступен на GitHub и распространяется по лицензии MIT[4].
MicroPython создан австралийским программистом Дэмиеном Джорджем. Средства на разработку были собраны на Kickstarter компании в 2013 году[5]. Изначально MicroPython разрабатывался для основанной на чипе STM32F4 плате разработки PyBoard, но позднее стал поддерживаться большим количеством других платформ[4]; также существуют неподдерживаемые версии[6].
В 2016 году версия MicroPython была создана, в рамках Python Software Foundation, для встраиваемой системы BBC Micro Bit[англ.][7].
В июле 2017 года на основе исходного кода MicroPython была создана его версия — CircuitPython[англ.] — предназначенная для студентов и начинающих, для простого обучения и использования[8], которая имеет некоторые преимущества, по сравнению с оригиналом. Этот язык был портирован для работы на нескольких современных микроконтроллерах.
В 2017 году Microsemi[англ.] разработала порт MicroPython на платформы архитектуры RISC-V[9].
В апреле 2019 года была разработан порт для Lego Mindstorms EV3[англ.] (см. Lego Mindstorms)[10].
Также в сборках под некоторые платформы есть специфичные только для них библиотеки
MicroPython включает в себя кросс-компилятор, который генерирует байт-код, (*.mpy). Байт-код может быть сгенерирован как непосредственно на микроконтроллере, так и на другом устройстве[источник не указан 1709 дней].
Прошивка MicroPython может использоваться без компилятора, используя только заранее сгенерированные файлы байт-кода формата *.mpy.