uPyCam
A MicroPython-based video streaming application designed for ESP32-CAM and M5Camera modules. It provides a web-based interface for real-time video streaming and photo capture using a custom MicroPython firmware with integrated camera drivers.
111 projects using MicroPython
MicroPython is a lean and efficient implementation of the Python 3 programming language specifically optimized to run on microcontrollers and constrained embedded environments. It provides a complete Python compiler and runtime, a cross-compiler for bytecode, and a robust set of hardware-abstraction modules, allowing developers to write high-level code for hardware with as little as 16kiB of RAM.
A MicroPython-based video streaming application designed for ESP32-CAM and M5Camera modules. It provides a web-based interface for real-time video streaming and photo capture using a custom MicroPython firmware with integrated camera drivers.
Wasp-os is a MicroPython-based firmware for nRF52-powered smartwatches, including the Pine64 PineTime. It provides a complete wearable operating system with heart rate monitoring, step counting, and a variety of applications, all accessible via an interactive Python REPL for real-time development.
A web-based WiFi configuration tool for ESP8266 and ESP32 microcontrollers running MicroPython. It provides a captive portal interface to scan for networks, enter credentials, and persist them to the device's local storage.
An in-place over-the-air (OTA) update solution for the ESP8266 WiFi SoC designed for large firmwares on small flash devices. It features a dual-stage bootloader architecture with RSA-signed UDP updates, eliminating the need for redundant flash partitions.
An open-source modular Test and Measurement platform centered around an STM32F769 ARM Cortex-M7 MCU. It provides a complete hardware and software framework for modular power supplies and data acquisition, supporting visual programming via EEZ Flow, SCPI commands, and MicroPython scripting.
A bare-metal port of MicroPython for the Raspberry Pi Zero, Zero W, and Raspberry Pi 2. It enables running Python code directly on the hardware without an underlying operating system. The project includes drivers for USB host support and SD card access, allowing for a standalone Python environment on classic Raspberry Pi boards.
A custom MicroPython firmware deployment specifically designed for the Monocle AR glasses. It integrates the Nordic nRF52832 SoC with support for Bluetooth LE, FPGA-driven displays, and camera modules using the LittleFS file system and Nordic SoftDevice.
A specialized port of MicroPython to the RT-Thread operating system, primarily targeting STM32F4 microcontrollers. It provides a seamless integration between the RT-Thread shell and the MicroPython REPL, allowing developers to control hardware and inspect RTOS internals using Python scripts.
A robust, interrupt-driven MicroPython driver for reading rotary encoders on various development boards including ESP32, ESP8266, Pyboard, and Raspberry Pi Pico. It utilizes a state machine approach for effective debouncing and accurate tracking of encoder transitions.
A comprehensive collection of drivers, tutorials, and code samples for MicroPython targeting platforms like Pyboard, ESP32, ESP8266, and RP2040. It features advanced implementations for asynchronous programming, hardware interfacing, and data serialization.
A modified ST7735 driver for MicroPython optimized for ESP32 and Raspberry Pi Pico. It supports multiple display variants, text rendering with custom fonts, and advanced features like offscreen frame buffering and BMP image display.
A collection of Python modules and drivers for MicroPython, specifically optimized for STM32F4-based hardware like the pyboard and STM32F4DISCOVERY. It provides essential utilities for rotary encoders, LCDs, MIDI communication, SPI flash memory, and networking, with support extending to ESP8266 and ESP32 ports.
A specialized toolset for generating PEP 484 type hint stubs for MicroPython firmware, enabling advanced IntelliSense and static analysis in modern IDEs. It supports a wide range of ports including ESP32, RP2040, and STM32, and facilitates the creation of stubs for custom firmware builds.
A collection of over 3,000 stub files for MicroPython that provide type hinting, auto-completion, and static type checking for embedded development. It supports numerous ports and boards, including ESP32 and Raspberry Pi Pico, and integrates with major IDEs to streamline the MicroPython coding workflow.
A collection of MicroPython drivers for various Waveshare e-Paper displays, supporting a wide range of screen sizes and color configurations. The library provides an interface for controlling these displays using SPI or UART on MicroPython-compatible hardware, including support for partial and full refreshes.
A MicroPython library for quad 7-segment LED display modules using the TM1637 LED driver. It provides a comprehensive API for controlling brightness, displaying numbers, hex values, temperatures, and scrolling text on various microcontroller platforms.
A header-only C++ library that provides seamless interoperability between C++ and MicroPython. It automates the conversion of function arguments and return values between native types and the MicroPython object model, significantly reducing the boilerplate required to extend MicroPython with custom C++ modules.
A MicroPython-based application execution platform and operating system designed for DIY projects and IoT devices. It provides a robust framework for managing asynchronous tasks, hardware interrupts, and cron-based scheduling on ESP32 and Raspberry Pi Pico W microcontrollers. With built-in shell and web servers, micrOS enables seamless remote management and device-to-device communication via WiFi and ESP-NOW.
A micro HTTP Web server for MicroPython that supports WebSockets, HTML/Python templating, and routing handlers. It is optimized for embedded modules like the ESP32, Pycom, and Pyboard D-series.
A powerful, fully asynchronous embedded web server for MicroPython and CPython. It supports route handlers, WebSockets, and template engines while maintaining a small footprint optimized for microcontrollers like ESP32 and STM32.
An open-source MicroPython-based firmware and hardware project for the mPython (掌控板) educational board. Powered by the ESP32 dual-core microcontroller, it provides a Python 3 compatible environment designed for STEAM education and maker projects.
A micro-framework for managing MicroPython boards remotely via MQTT and asyncio. It provides a robust MQTT client, remote REPL access, OTA updates, and remote logging over a single encrypted connection, specifically optimized for ESP32 microcontrollers.
A cross-platform Python IDE specifically designed for beginner programmers and educators. It provides specialized modes for embedded development, including support for MicroPython, CircuitPython, and the BBC micro:bit, featuring integrated serial REPL and device flashing capabilities.
A MicroPython-based bootloader and OTA update system for ESP32 that uses an external SD card as the root filesystem. It minimizes internal flash wear and provides a robust update mechanism with hash matching and rollback capabilities.
ulab is a high-performance, C-implemented numerical library for MicroPython and CircuitPython that provides a NumPy-like interface for array manipulation. It supports multi-dimensional ndarrays and advanced mathematical routines from NumPy and SciPy, optimized for resource-constrained embedded systems like STM32, ESP32, and RP2040.
A comprehensive resource for asynchronous programming in MicroPython using the asyncio library. It provides documentation, tutorials, synchronization primitives, and hardware drivers optimized for high performance on bare-metal microcontrollers.
A Python and MicroPython library designed to connect IoT hardware to the Blynk Cloud. It provides an API for exchanging sensor data and controlling hardware peripherals like relays and motors from iOS and Android devices, specifically targeting Raspberry Pi and ESP-based microcontrollers.
A comprehensive collection of out-of-the-box UI components and enhanced interfaces for the LVGL graphics library. It provides ready-to-use modules such as a Pinyin input method, page manager, file explorer, and NES simulator for embedded platforms.
Automatically generated MicroPython bindings for the LVGL graphics library, enabling high-level GUI development on microcontrollers. It features seamless integration with MicroPython's garbage collector, support for various display and touch drivers, and an automated API generation system for maintaining parity with the C library.
A comprehensive collection of MicroPython scripts for the MaixPy platform, targeting Sipeed hardware based on the Kendryte K210 RISC-V SoC. It includes examples for machine vision, AI acceleration, hardware peripheral control, and multimedia processing.
Microdot is a minimalistic Python web framework inspired by Flask, specifically designed for resource-constrained environments like microcontrollers. It supports both CPython and MicroPython, offering a lightweight and extensible solution for building web applications and APIs on embedded hardware.
A MicroPython framework for the Homie convention, a lightweight MQTT protocol for IoT devices. It targets ESP8266 and ESP32 platforms, providing an asynchronous implementation of Homie v4.0.0 using MicroPython's uasyncio library.
A lightweight multilayer perceptron neural network library specifically designed for MicroPython environments on ESP32 and Pycom modules. It provides a single-file implementation of artificial neural networks with support for multiple activation functions, supervised learning, and Q-Learning for reinforcement learning tasks.
A comprehensive development extension for Visual Studio Code tailored for MicroPython projects on Raspberry Pi Pico, ESP32, and Teensy 4.0. It provides an integrated REPL, automatic code completion via stubs, and streamlined file management for embedded microcontrollers.
A project management and generation tool for MicroPython development. It automates workspace setup with linting, IntelliSense, and dependency management for modern IDEs like VSCode, targeting platforms such as ESP32 and Raspberry Pi Pico.
A full-featured GPS NMEA-0183 sentence parser written in pure Python 3.x for MicroPython and embedded platforms. It provides robust parsing for various GPS messages, including position, time, and satellite data, with specific support for the PyBoard and ESP32.