<p align="center">
<a href="https://awesome-micropython.com/" style="display:block"><img src="https://raw.githubusercontent.com/mcauser/awesome-micropython/master/docs/img/logo.svg"></a>
</p>
<p align="center">
<a href="https://awesome.re">
<img alt="Awesome" src="https://awesome.re/badge-flat.svg">
</a>
</p>
<hr>
A curated list of awesome MicroPython libraries, frameworks, software and resources.
MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimised to run on microcontrollers and in constrained environments.
Contents
Libraries
Other places you can look for MicroPython Libraries:
- PyPi - This filter shows just the MicroPython libraries on PyPi. Note: You cannot
pip install
MicroPython libraries. See the MicroPython docs for more information on managing packages with MicroPython.
- GitHub Search - Search GitHub for repositories containing MicroPython.
- GitHub Topic - MicroPython - Browse GitHub Topics for projects tagged with MicroPython.
- Libraries.io - Libraries.io query for MicroPython.
- GitLab Explore - Explore repositories on GitLab.
- Codeberg Explore - Explore repositories on Codeberg.
AI
Audio
Communications
APIs
Authentication
Bluetooth
- PyBoard-HC05-Android - Pyboard HC05 Bluetooth adapter example application.
- uble - Lightweight Bluetooth Low Energy driver written in pure Python for MicroPython.
- MicroPythonBLEHID - Human Interface Device (HID) over Bluetooth Low Energy (BLE) GATT library for MicroPython.
- upyble - Command line tool for Bluetooth Low Energy MicroPython devices.
- micropython-xiaomi-ble-adv-parse - Passively retrieve sensor data from some Xiaomi Bluetooth Low Energy (BLE) sensors.
- mijia-temphum-upy - MicroPython library to read certain Xiaomi Mijia BLE temperature & humidity sensors.
- micropython-aioble-itag - Examples using aioble to interact with iTag BLE keychain tags.
CAN
Compression
- ufastlz - MicroPython wrapper for FastLZ, a lightning-fast lossless compression library.
- tamp - A low-memory, MicroPython-optimized, DEFLATE-inspired lossless compression library.
Cryptography
- ucryptography - Lightweight porting of pyca/cryptography to MicroPython based on ARM Mbed TLS.
- mpyaes - MicroPython module for AES encryption.
- micropython-aes - AES algorithm with pure python implementation.
- ucrypto - MicroPython package for doing fast RSA and elliptic curve cryptography, specifically digital signatures. ECDSA API design inspired from fastecdsa and implementation based on tomsfastmath.
- ucryptoauthlib - Lightweight driver for Microchip Crypto Authentication secure elements written in pure Python for MicroPython.
- embit - A minimal Bitcoin library for MicroPython and Python 3 with a focus on embedded systems.
- microotp - An ESP8266 MicroPython OTP Generator.
- micropython-rsa-signing - RSA signing on MicroPython.
- micropython-cryptomsg - A MicroPython module to encrypt and decrypt messages with AES CBC mode.
- mprsa - A MicroPython module for creating, importing, and exporting RSA keys in DER and PEM formats with PKCS#1, PKCS#8, and X.509/SPKI structures, and signing/verifying and encryption/decryption using blinding and SHA-1 and SHA-256 hashing algorithms.
- mpy-mbedtls - MicroPython bindings for some MbedTLS EC and x509 cert/csr functions.
- micropython-cryptocfb - A Python module to encrypt and decrypt data with AES-128 CFB mode.
- tscp - An endpoint-to-endpoint encryption based on Diffie-Hellman-Merkle with TLS1.3 styled handshake using MicroPython.
DNS
- ICantBelieveItsNotDNS - "I Can't Believe It's Not DNS!" (ICBIND) is an authoritative DNS server for the ESP8266 written in MicroPython.
- MicroDNSSrv - A micro DNS server for MicroPython to simply respond to A queries on multi-domains with or without wildcards (used on Pycom modules & ESP32).
- tinydns - Very simple DNS async server for MicroPython.
- micropython-captiveportal - Minimal async captive portal for MicroPython (compatible with uasyncio v3/MicroPython 1.13+ as well as earlier versions).
- Micropython-DNSServer-Captive-Portal - MicroPython WiFi AP Captive Portal with DNS and Web Server.
ESP-NOW
Ethernet
FTP
GPS
GSM
HTTP