A collection of Python libraries ported and adapted for MicroPython, enabling standard and ecosystem packages on microcontrollers.
micropython-lib is a collection of Python libraries ported and adapted for MicroPython, the lightweight Python implementation for microcontrollers. It provides compatible versions of standard library modules, popular PyPI packages, and MicroPython-specific hardware drivers, enabling developers to use familiar Python libraries on resource-constrained embedded devices.
MicroPython developers working on embedded systems, IoT devices, and microcontroller projects who need access to Python libraries in constrained environments.
It solves the problem of library availability in MicroPython by providing carefully adapted packages that balance functionality with resource constraints, allowing developers to leverage existing Python knowledge and code on microcontrollers.
Core Python libraries ported to MicroPython
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides drop-in replacements for CPython standard library modules, enabling familiar Python code on MicroPython with minimal changes, as described in the python-stdlib category.
Offers compatible, reduced-functionality versions of popular PyPI packages for MicroPython, allowing use of community libraries in resource-constrained environments, evidenced by the python-ecosys directory.
Includes drivers for sensors, Bluetooth, and other embedded functionality not available in standard Python, as highlighted in the micropython directory for hardware-specific tasks.
Supports installation via mip package manager, mpremote tool, freezing into firmware, or manual copying, providing versatility for different development workflows, as detailed in the Usage section.
Many modules have missing methods or classes compared to CPython counterparts, limiting advanced usage, as admitted in the README for python-stdlib packages.
When installing via manual file copying, developers must resolve dependencies manually by inspecting manifest.py files, adding complexity and potential for errors, as noted in the README.
Focused on MicroPython and embedded systems, it lacks the breadth and depth of PyPI for general-purpose Python development, with fewer packages available.