The "Awesome MicroPython" project is a curated collection of resources aimed at developers using MicroPython, a lean and efficient implementation of Python 3 specifically designed for microcontrollers. This list includes libraries, tools, tutorials, and community resources that help users leverage MicroPython's capabilities for embedded systems and IoT applications. Whether you are a beginner looking to get started with microcontroller programming or an experienced developer seeking advanced techniques, this list provides valuable insights and tools to enhance your projects. Dive into the world of MicroPython and discover how to bring your hardware projects to life with ease and efficiency.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The "Awesome Asyncio" project is a curated collection of resources dedicated to Asyncio, an asynchronous I/O framework in Python 3 that enables concurrent code execution using the async/await syntax. This list encompasses a variety of categories, including libraries, frameworks, tutorials, and tools that facilitate asynchronous programming. It is beneficial for both beginners looking to understand the fundamentals of asynchronous programming and experienced developers seeking advanced techniques and libraries to enhance their applications. Users can explore a wealth of information and tools that empower them to build efficient, non-blocking applications in Python.
The "Awesome Data Science" project is a curated collection of resources aimed at supporting individuals interested in the field of data science, which encompasses data analysis and machine learning techniques. This list includes a variety of resources such as libraries, frameworks, tutorials, datasets, and tools that facilitate the process of extracting meaningful insights from data. Whether you are a beginner looking to understand the basics or an experienced data scientist seeking advanced techniques, this list offers valuable information and tools to enhance your skills and projects. Dive into this collection to discover the vast possibilities within data science and elevate your analytical capabilities.
The "Awesome Typing" project is a curated collection of resources focused on optional static typing in Python, a feature that enhances code quality and maintainability. This list encompasses type checkers, libraries, tools, tutorials, and community resources that support developers in implementing type hints and static analysis in their Python projects. Beneficial for both beginners looking to understand typing concepts and experienced developers aiming to improve their codebases, this collection provides valuable insights and practical tools. Users can explore various resources to effectively leverage typing in Python, ultimately leading to more robust and error-free applications.
The "Awesome Scientific Audio" project is a curated collection of resources focused on the intersection of audio technology and scientific research. This list encompasses a wide range of topics including audio analysis, sound synthesis, music perception, and signal processing, featuring libraries, software tools, research papers, and tutorials. It is particularly beneficial for researchers, audio engineers, and music technologists who seek to deepen their understanding of audio science and its applications. Whether you are exploring new algorithms or studying the psychological effects of sound, this collection provides a wealth of information to enhance your projects and research endeavors.
A lightweight multilayer perceptron neural network library for MicroPython, designed for embedded systems like ESP32 and Pycom modules.
A MicroPython example that connects to ChatGPT via OpenAI API and displays responses on an OLED screen.
Machine Learning and Digital Signal Processing library for MicroPython, enabling TinyML on microcontrollers without C code.
MicroPython binding for ESP-DL models enabling face detection, recognition, human detection, cat detection, and image classification on ESP32 devices.
A MicroPython library for controlling JQ6500 sound modules via serial communication on ESP32 and compatible boards.
A MicroPython library for playing Nokia compose ringtones and MIDI files through a buzzer.
A MicroPython library for controlling the DFPlayer mini MP3 player module with essential playback and file management functions.
A MicroPython library for controlling DFPlayer Mini MP3 modules via UART on ESP8266.
A WAV player for MicroPython boards using double-buffered sample loading.
Synchronous and asynchronous MicroPython drivers for the VS1053b MP3/FLAC audio player chip.
A Python library for parsing Ring Tone Text Transfer Language (RTTTL) strings to extract musical note frequencies and durations.
A collection of MicroPython examples for using the I2S protocol to play and record audio on microcontrollers.
A minimal Open Sound Control (OSC) client and server library for MicroPython and CPython.
MicroPython library for controlling the SGTL5000 low-power stereo codec with headphone amplifier.
A low-footprint MIDI file parser for MicroPython, CircuitPython, and CPython, optimized for microcontrollers.
MicroPython driver for the Texas Instruments TAS2505 digital input Class-D speaker amplifier.
A web-based tool for programming ESP32 IoT devices using blocks or Python with multiple connection modes.
A non-blocking MicroPython buzzer class for playing melodies and sound patterns without blocking the main program loop.
A MicroPython library for handling multiple MIDI ports (UART, PIO, USB) on RP2040/RP2350 boards with asynchronous event processing.
A web-based tool for programming ESP32 IoT devices using blocks or Python with multiple connection modes.
A computer algebra system designed to run on microcontrollers using MicroPython, enabling symbolic mathematics on embedded devices.
A numpy-like fast vector module for MicroPython and CircuitPython, written in C for embedded systems.
A fast single-precision Fast Fourier Transform (FFT) library written in ARM assembler for MicroPython on embedded platforms.
High-speed digital filters for MicroPython on ARM boards, implemented in inline assembler for real-time integer data processing.
A minimal matrix class and linear algebra module for MicroPython, offering NumPy-like functionality for embedded systems.
A MicroPython implementation of Python's statistics module for data analysis on microcontrollers.
A compact implementation of numpy's core matrix and array operations for Micropython microcontrollers.
A MicroPython module for automatic uncertainty propagation in scientific calculations.
A lightweight matrix library for MicroPython offering basic arithmetic, determinant, inverse, and NumPy-like slicing.
A MicroPython port of the CPython standard library fractions module for rational number arithmetic.
A collection of code samples, unofficial FAQ, and module index for MicroPython, covering hardware drivers, asyncio, GUIs, and embedded systems.
Read and write NumPy .npy files in MicroPython for numeric array persistence and streaming.
A MicroPython module for generating Perlin noise, optimized for embedded systems with firmware and native module versions.
MicroPython driver for PCA9685 16-channel 12-bit PWM/servo controller.
A MicroPython library for controlling RC servos using hardware PWM with calibration support.
A MicroPython module for controlling the 16-channel PCA9685 PWM controller, designed for LED and other PWM-driven loads.
MicroPython library for controlling stepper motors using the AMIS-30543 driver with acceleration support.
A MicroPython library for controlling Trinamic TMC5160 stepper motor drivers on microcontrollers.
A MicroPython library for smooth, non-blocking stepper motor control on RP2040/RP2350 microcontrollers using DMA and PIO.
MicroPython library for controlling 28BYJ-48 stepper motors with ULN2003 drivers using full-step and half-step modes.
A MicroPython library for controlling stepper motors with non-blocking timers and angle-based movement.
Micropython code for a self-balancing robot using an ESP32 and MPU6050 sensor.
A MicroPython library for precise control of stepper motors using sequence-based movement patterns.
A pure-Python library for controlling Pololu Tic stepper motor controllers via serial, I²C, and USB connections.
A MicroPython library for controlling stepper motors with ULN2003 driver boards on BBC micro:bit.
DIY rotating platform controlled via Wi-Fi using an ESP32 and MicroPython with a web interface.
An asynchronous task scheduler with persistence for MicroPython, enabling periodic coroutine execution and deep sleep support for battery-powered devices.
A MicroPython library for computing sunrise and sunset times based on geographic coordinates and date.
A MicroPython implementation of hexdump tools (hd and xxd) for displaying binary data in hexadecimal format.
A MicroPython-optimized port of wcwidth for measuring wide Unicode character widths in terminal output.
A lightweight Micropython library for unit-agnostic manipulation of physical quantities like temperature, pressure, and motion.
A microPython wrapper for the Telegram Bot API, enabling Telegram bot creation on ESP32, ESP8266, and RP2040 microcontrollers.
A lightweight Micropython client for accessing the local REST API of Rainforest Automation's EAGLE energy monitoring device.
A Twitter status updater bot for MicroPython v1.8.4 running on ESP8266 microcontrollers.
A Telegram Bot API wrapper for MicroPython, designed for ESP32 microcontrollers.
A MicroPython library for sending IoT sensor data to ThingSpeak.com from devices like ESP8266.
Send push notifications to smartphones using Pushbullet with MicroPython on ESP8266 via a pushbutton circuit.
Display YouTube channel metrics on an ESP32-driven TFT screen using MicroPython and the YouTube Data API.
A MicroPython library for accessing Spotify's web API from IoT devices like ESP8266.
A simple Telegram bot example using python-telegram-bot library for educational purposes.
A MicroPython module for basic dweet.io APIs to send and retrieve data from IoT devices.
A MicroPython module for secure machine-to-machine messaging via the free dweet.io service.
A MicroPython module for encrypted communication with the free dweet.io M2M service.
A MicroPython library for sending text, sticker, and image notifications to Line Notify from ESP32/ESP8266 devices.
A non-blocking Telegram bot library for MicroPython microcontrollers to control IoT devices via Telegram.
A MicroPython library for ESP32 to interact with Google Sheets via HTTP and Google Apps Script API.
MicroPython code for HC05 Bluetooth adapter with an Android app example for bidirectional communication with PyBoard.
A lightweight Bluetooth Low Energy driver written in pure Python for MicroPython, enabling control of BLE chips via HCI packets.
A MicroPython library for implementing Bluetooth Low Energy (BLE) Human Interface Devices (HID) like keyboards, mice, and joysticks.
Command-line tool for wireless development, prototyping, and testing of Bluetooth Low Energy MicroPython devices.
MicroPython examples for interacting with iTag Bluetooth keychain devices using aioble on ESP32 hardware.
A collection of MicroPython aioble examples for ESP32, demonstrating BLE communication with devices like voltmeters and heart rate sensors.
A MicroPython module for formatting sensor data into BTHome BLE advertisements to integrate DIY sensors with home automation systems.
Control DJI Robomaster S1/EDU robots via CAN BUS using STM32 microcontrollers running Micropython.
A MicroPython driver for the MCP2515 CAN bus controller, enabling CAN communication on embedded platforms.
A MicroPython library for interfacing with the MCP2515 CAN bus controller chip.