MicroPython
circuitpython
MicroPython | circuitpython | |
---|---|---|
212 | 94 | |
20,584 | 4,305 | |
0.8% | 0.8% | |
9.9 | 0.0 | |
8 days ago | 2 days ago | |
C | C | |
MIT | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
MicroPython
-
Why Lua Beats MicroPython for Serious Embedded Devs
it's not an embeddable runtime like Lua
While it's true you can't have multiple MicroPython interpreters running concurrently (or at least not easily; it's not that the design makes this impossible, it's just that all in all MicroPython is fairly young and development focus has been put elsewhere), it is possible to embed MicroPython. Not completely out of the box, needs some glue code etc. See for example https://github.com/micropython/micropython/tree/master/ports....
- 讓 MicroPython 輸入中文
-
MicroPython on M68k Mac
It's obviously not directly comparable - each port will be different - but startup time is <50ms on an RP2040 (Cortex M0 @133MHz):
https://github.com/micropython/micropython/issues/8420
-
MicroPython v1.25.0
Yes, although MicroPython is focused on running on microcontrollers it can be useful if you want to reduce memory consumption, flash space and even startup time on servers.
The challenge is that MicroPython has many fewer standard libraries:
https://github.com/micropython/micropython/wiki/Standard-Lib...
And so many Python libraries targeting CPython won't work out-of-the box and you'll need to modify them or use alternatives that do work on the MicroPython subset.
- MicroPython – Python for Microcontrollers
- Mruby/C and picoruby: high level langs in low-level devices?
-
Ask HN: What less-popular systems programming language are you using?
I'll link to it because many people don't know a version of Python runs on microcontrollers:
https://micropython.org/
-
Tactility: OS for the ESP32 Microcontroller Family
I'm personally working on something like this for the ESP32, but written on top of micropython [1]. A few things are written in C such as the display driver, but otherwise most things are in micropython. We chose the T-Watch 2020 V3 microphone variant as the platform [2].
Our objective is to build a modern PDA device via a mostly stand-alone watch that can be synced across devices (initially the Linux desktop). We want to achieve tasks that you might typically do on your desktop, focussed towards productivity.
We did consider a custom OS, but decided against it for a few reasons:
1. Allowing somebody else to handle basic OS stuff allows us to concentrate on what really matters, the higher level stuff on top.
2. Having multiple threads in micropython is super simple and we are able to run many active apps at the same time, rather than having to kill them off [3]. Our background apps can continuously interact with the network in the background.
3. Code written for micropython can be easily run on other Python-capable devices.
[1] https://micropython.org/
[2] https://lilygo.cc/products/t-watch-2020-v3
[3] https://tactility.one/#/application-lifecycle
- Release RP2350 and ESP32-C6 support, RISC-V native emitter, common TinyUSB code
-
Wasm2Mpy: Compiling WASM to MicroPython so it can run in Raspberry
tools/mpy_ld.py: https://github.com/micropython/micropython/blob/master/tools...
tools/mpy-tool.py lists opcodes: https://github.com/micropython/micropython/blob/master/tools...
Can the same be done with .pyc files; what are the advantages of MicroPython native modules?
Why does it need wasm2c?
circuitpython
-
Talking to the Pico over USB
The keypad itself can mimic any keypresses on a regular keyboard if the Pico is installed with CircuitPython, so the Pico-to-Mac communication is already set up. For the Mac to communicate with the Pico, I managed to piece the instructions together from various sources. That’s the bit I’ll be bringing together into this article.
-
Thoughts on a machine?
As another point for those interested, it (to my knowledge) is currently the ONLY implementation of a scoring machine that the firmware for the device is written in Circuit Python. which gives this unit an advantage when it comes to any and all multi tasking that the unit may need to do.
-
Unveiling secrets of the ESP32: creating an open-source Mac layer
The barrier to entry has never been lower. Last night I prototyped some code in Python on my Mac to talk to a Bluetooth peripheral, and then had ChatGPT translate it to Arduino C++ code for a $5 ESP32 which mostly worked on the first go.
You can even run Python on microcontrollers these days. See Adafruit's https://circuitpython.org for which they publish modules for many (almost all?) of the sensors they sell. The modern microcontroller frameworks hide much of the complexity of Wi-Fi, Bluetooth, filesystems, etc. so you can do complicated things with minimal effort. You can really cobble something together in an afternoon.
-
ALT.CTRL.GameCraft Workshop @ Beta Festival Write-up
The Pico runs CircuitPython and uses Adafruit's HID library to emulate a keyboard. It's also possible to emulate a mouse and a gamepad (there are some experiments for gamepad emulation in experiments).
- CircuitPython added supports for Makerdiary nRF52840 Connect Kit
-
HT1632c library for circuitpython
Asked your question in the adafruit discord and they said there's no HT1632c library for circuit python yet. There is a library for micropython. You can request to have it ported from the Micropython library I linked to by opening a feature request in the Circuit Python Github. That would be your best option for now or attempt to port the library yourself.
- Question about programming arduino
-
This may be an odd question but can someone give me a Tl;dr of the Adafruit ecosystem between 2019-now?
Microcontrollers can run Python now https://circuitpython.org/
-
Projects for newbs!
I'm aware of two versions of Python for microcontrollers. Micro Python and Circuit Python
-
Pause and resume more than one audiofile with audiocore
I tried to look in https://github.com/adafruit/circuitpython/tree/main/shared-bindings at audiocore, audioio, an audiomixer looking for a way to access the sample counter manually but I have no clue what I'm looking at :(
What are some alternatives?
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
moddable - Tools for developers to create truly open IoT products using standard JavaScript on low cost microcontrollers.
Unicorn Engine - Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, PowerPC, RiscV, S390x, TriCore, X86)
micropython-ulab - a numpy-like fast vector module for micropython, circuitpython, and their derivatives
IronPython - Implementation of Python 3.x for .NET Framework that is built on top of the Dynamic Language Runtime.
Espruino - The Espruino JavaScript interpreter - Official Repo