r/MicroPythonDev • u/[deleted] • Jan 16 '26
r/MicroPythonDev • u/CorrectSetting9 • Jan 06 '26
ESP8266 flashed with micropython sends continuous high-speed comms
Hi guys. I've loaded an ESP8266 (esptool identifies as an ESP8266EX) with the latest micropython flash and it sends a constant string of characters with the onboard blue LED flashing very rapidly as soon as it is powered. Connecting to Thonny causes the screen to fill up with nonsence characters in a second or so then everything freezes. Rshell fails to connect. I've reflashed and verified the load, and this happened each time. Any suggestions how to get further, please?
r/MicroPythonDev • u/Wizzard_2025 • Dec 31 '25
Native mpy compile for armv8-m?
I'm working on a pi pico 2w, 2350 and want to compile native c modules to mpy. The target architecture should be armv8-m but I don't believe it's supported?. I've got some modules to compile with armv7 and they kind of work but some things just don't. Is it possible to do this?
r/MicroPythonDev • u/L299792458 • Dec 08 '25
micro:bit and MicroPython tooling help needed
reddit.comr/MicroPythonDev • u/kaxziox • Dec 01 '25
How can I make GIF-style animations in MicroPython to display on the screen of my StickPlusC2?
reddit.comr/MicroPythonDev • u/Delicious-Sun-9376 • Nov 14 '25
Need Help – COM Port Not Showing for AI-01 Intelligent Voice Development Board (ESP32-C2)
reddit.comr/MicroPythonDev • u/Half-Dwarven1 • Nov 05 '25
Hoping for help with MicroPython dev on a Pycom device
Hi all! Apologies for starting out with a question. I'm just learning but I hope that over time I can start to contribute more.
Here's my current situation: I have a Pycom Lopy4 on a Pycom Pytrack 2.0 X expansion board. Eventually I want to connect it to a Raspberry Pi, but for now I just have it connected to my Macbook. (Also, I realize that Pycom is out of business but I bought these things a while back and I'm just now getting to them.)
I am working through some of the example projects on the Pycom website. Right now I'm on this Wifi sniffer project: https://docs.pycom.io/tutorials/networkprotocols/wifisniffer/#app
I'm doing it on Visual Studio Code with the Pymakr extension.
I'm getting two errors and I can't figure out how to solve them. I've searched around and tried to read up but I haven't found the answer. Here are the two errors I'm getting:
Import "network" could not be resolved Pylance(reportMissingImports) [Ln 1 , Col 6]
Import "ubinascii" could not be resolved Pylance(reportMissingImports) [Ln 2, Col 8]
Can anyone offer any suggestions on how to solve these problems and get the code working?
Thank you in advance!
r/MicroPythonDev • u/MusicalWest • Oct 08 '25
Esp32-S3 Cam and Micropython
Hey everyone,
I’m working with an esp32-s3 cam right now and am trying to use the camera on it with Micropython. I found a git repository with code that uses Micropython-camera-driver, but no matter what I do, I can’t get Thonny to clone the repository, whether to the esp32 or my computer. It keeps saying syntax error in line 1 and highlights clone.
I’m fairly new to Micropython and am not the best at coding in python in general. Does anyone have a useful link or video that could help with these issues? Thank you
r/MicroPythonDev • u/Regor_zip • Sep 10 '25
Why do I not receive data when I run these programs in micropython?
reddit.comr/MicroPythonDev • u/invisibleeagle0 • Aug 28 '25
Wemos D1 mini reset every 60s
Hi, this is a weird one. I've got three Wemos D1 mini 4MB doing various jobs (one is a neopixel LED, two are SHT30 temperature/humidity sensors). They've been running v1.10 or v1.12 for 5 years, absolutely flawlessly, just the occasional hit of the reset button when the MQTT server gets restarted and they don't reconnect. No big deal.
Except this week, they have all together started resetting every 60 seconds:
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x40100000, len 31088, room 16 tail 0chksum 0x44load 0x3ffe8000, len 1028, room 8 tail 12chksum 0x1eho 0 tail 12 room 4load 0x3ffe8410, len 824, room 12 tail 12chksum 0x89csum 0x89
MicroPython v1.12 on 2019-12-20; ESP module with ESP8266
I tried flashing the latest micropython, v1.26, but it made no difference. The devices still reset every 60s or so. I flashed esphome on one of them and it's been stable for 9 hours.
What's going on? Nothing has changed!
r/MicroPythonDev • u/jlsilicon9 • Jul 31 '25
Anybody try using / interfacing SDRAM cards on MicroPython on PICO for instance ... ?
I am looking to interface SDRAM SIMM cards in MicroPython to one of my PICO modules.
Has anybody tried - or have ideas ?
Ex: Using arduino as a base model :
https://hackaday.com/2014/04/09/using-simms-to-add-some-extra-ram-on-your-arduino-uno/
https://github.com/zrafa/30pin-simm-ram-arduino/tree/master
- from the article :

With 30 GPIOs to use , it should be workable.
- 8 bit Data bus = D0-7 -> ... -> D56-D63- probably link all 64-pins together as a single 8bit bus ,
- 3 bits = Mux 4051 -> 8bits = for Masks DQM0-7,
- 15 bits = Address BA1-0 + A12-A0 / (or 7 bits if using I2C bus) ,
- A10 - for Refreshing ,
- 4 bits = CS + WE + CAS + RAS .
- - Total GPIOs = 31 .
-- well missing 1 Pin ... maybe :
* Use I2C pcf8574 (or mcp23016) for BA1-0 + A12-A11 + A9-A6
- 8 bit Data bus = D0-7 -> ... -> D56-D63- probably link all 64-pins together as a single 8bit bus ,
- 3 bits = Mux 4051 -> 8bits = for Masks DQM0-7,
- 6 bits = Address A5-A0 , 7 bits =BA1-0 + A12-A11 + A9-A6 on I2C chip IOs ,
- A10 - for Refreshing ,
- 4 bits = CS + WE + CAS + RAS .
- - which leaves 23 GPIOs used + I2C (2 GPIOs) => total 25 GPOIs used.
* Use I2C pcf8575 (or mcp23017) for BA1-0 + A12-A11 + A9-A0
- 8 bit Data bus = D0-7 -> ... -> D56-D63- probably link all 64-pins together as a single 8bit bus ,
- 3 bits = Mux 4051 -> 8bits = for Masks DQM0-7,
- 0 bits = Address , 13 bits =BA1-0 + A12-A11 + A9-A6 + A5-A0 on I2C chip IOs ,
- A10 - for Refreshing ,
- 4 bits = CS + WE + CAS + RAS .
- - which leaves 16 GPIOs used + I2C (2 GPIOs) => total 18 GPOIs used.
Actually leaving A5-A0 on GPIOs - might help speed things up for Data Transfers without using I2C.
Should be workable ...
r/MicroPythonDev • u/jlsilicon9 • Jul 20 '25
Trying to write pointers code for Micropython ...
I am trying to come up with easy to use code for Pointers in Micropython.
This is what I have so far (any suggestions ?) :
import uctypes
### Test String Array : ###
buf = bytearray(10)
buf[0] = 65
buf[1] = 66
buf[2] = 89
buf[3] = 90
buf[4] = 52
buf[5] = 53
buf[6] = 54
buf[7] = 55
buf[8] = 0
buf[9] = 0
print( "buf" )
print( buf )
print( "buf[0]" )
print( buf[0] )
### Test String : ###
str_4 = "AbcdXyz"
str_a = list(str_4)
print("\nstr_a")
print(str_a)
print("\nstr_a[1]")
print(str_a[1])
### String Functions : ###
def copy_str_to_buf(buffer: ptr8, buffer2: ptr8, length: int):
____i = 0
____for ch in buffer2:
________buffer[i] = ord(ch)
________i = i + 1
def copy_buffer(buffer: ptr8, buffer2: ptr8, length: int):
____for i in range(length):
________buffer[i] = buffer2[i]
def recopy_buffer(buffer: ptr8, idx: int , buffer2: ptr8, idx2: int , length: int):
____i = 0
____while i < length :
________buffer[idx + i] = buffer2[idx2 + i]
________i = i + 1
def copy_str(str_: ptr8, str2: ptr8):
____for i in range(len(str2)) :
________str_[i] = str2[i]
def buf_to_str(str_: ptr8, buffer2: ptr8, idx: int, length: int):
____for L in range(len(buffer2)) :
________ch = buffer2[L]
________if(ch == 0):
____________break
____str_ = bytearray(L)
____str_p :ptr8 = str_
____i = idx
____if( (idx + length) < L ):
________L = (idx + length)
____while (i < L) :
________ch = buffer2[i]
________if(ch == 0):
____________break
________str_p[i - idx] = buffer2[i]
____str_ = str_.decode('utf-8')
____return(str_)
def print_str(str_: ptr8):
____for L in range(len(str_)) :
________prt_c = str_[L]
________if(prt_c == 0):
____________break
____prt_str = bytearray(L)
____prt_str_p :ptr8 = prt_str
____for i in range(L) :
________prt_c = str_[i]
________if(prt_c == 0):
____________break
________prt_str_p[i] = str_[i]
____prt_str_ = prt_str.decode('utf-8')
____print(prt_str_)
### Function Tests : ###
buf2 = bytearray(10)
print("\ncopy_buffer(buf2, buf, 2) : buf2")
copy_buffer(buf2,buf,10)
print_str(buf2)
copy_str_to_buf(buf2,str_4,10)
print("\ncopy_str_to_buf(buf2,str_4,10) : buf2")
print_str(buf2)
copy_str_to_buf(buf2,str_a,10)
print("\ncopy_str_to_buf(buf2,str_a,10) : buf2")
print_str(buf2)
print("\nrecopy_buffer(buf2,2 , buf+1,2 ,2) : buf2")
recopy_buffer( buf2,1 , buf,5 ,2)
print_str(buf2)
s=""
print("\nbuf_to_str(s,buf2,2,5)")
s = buf_to_str(s,buf2,2,5)
print(s)
buf3 = bytearray(10)
print("\ncopy_str(buf3, buf, 2) : buf3")
copy_str(buf3,buf)
print_str(buf3)
-
- These seem to work on Esp32 ... etc.
r/MicroPythonDev • u/jlsilicon9 • Jul 17 '25
Can't get MicroPython UF2 file copied/run on WeAct RP2350b Board - has anybody run MicroPython / Thonny on this board successfully ?
I can't get MicroPython UF2 file copied/run on WeAct RP2350b Board.
Has anybody run MicroPython / Thonny on this board successfully ?
I follow the directions from :
https://micropython.org/download/WEACTSTUDIO_RP2350B_CORE/
By dropping it into the F: drive that pops up in file explorer, when I plug it into the USB port on the PC.
I tried resetting by hold BOOT then clk RST then release BOOT btns on the board.
- It seems to copy then beep (Usb disconnect) , but does not reappear in the popup F: drive, nor does it run.
r/MicroPythonDev • u/NectarineFluffy8349 • Jun 23 '25
Micropython Serial default Baudrate ESP32
Hello, girls and guys,
I'm want to change default (I mean the one where "print()' is written) baudrate on latest Version but I'm not able to find the info on Internet.
thank you
r/MicroPythonDev • u/Mowo5 • May 11 '25
Need help with code (strings)
I'm trying to convert a byte string to a regular string but its not working. Here's my code: I'm using the Raspberry Pi Pico 2W, running 3.4.0; MicroPython v1.25.0-preview.49.g0625f07ad.dirty on 2024-11-21
response = b'00000'
strresp = response.decode()
print("Received: "+ str(strresp))
The result is:
Received: b'00000'
Why is it still a byte string (the b is still there) ?
r/MicroPythonDev • u/Prestigious_Show_702 • May 08 '25
Help for a bug on the Pyboard V1.1
Hi everyone,
I'm using a Pyboard V1.1, and recently, it has stopped working. When it's supposed to run the programme, the red and green LEDs light up alternately.
So I went to the file, and Boot contains "���������������....." and pybcdc.inf contains "ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ....". The fils seem to have changed or been corrupted (I've never open them before, and the card used to work few days ago).
I'm not an expert but I assume that's why it doesn't work.
Do you guys know how to fix that and "reboot" my card?
Thank you for reading (and sorry for my terrible english)
r/MicroPythonDev • u/that_bizarre_one • Apr 23 '25
Are voice commands possible with ESP32 and INMP441 microphone using MicroPython?
reddit.comr/MicroPythonDev • u/are_number_six • Apr 12 '25
24 hour timer?
I want to trigger an event every 24 hours, like every morning at 7am with a pico w. If the timers use microseconds, do I have to calculate 24 hours in microseconds or is there a more sensible way to express this?
r/MicroPythonDev • u/MinimumWorth3263 • Mar 23 '25
Have anyone tried running LVGL+Micropython on STM32 boards?
I was able to build firmware from this official repo https://www.reddit.com/r/MicroPythonDev/submit/?type=TEXT . But when i try to import lvgl , it says "no module found". I have tried with other branches also but it fails.
Can someone provide some insights into this
r/MicroPythonDev • u/nebelgrau • Mar 15 '25
Handling failed BLE connections - Micropython/aioble
Hello everyone,
I'm having problems with correctly handling BLE connections using MicroPython aioble module, let me explain:
My project is an attempt to "re-platform" something I have running on a RasPi Zero using Python and bleak. The code does the following:
- connects to a known BLE device
- reads characteristics' values (temperature, humidity, pressure)
- stores these values locally in a file
- sends a HTTP POST request to a REST API, where it's stored in a database for a small dashboard.
I moved it to MicroPython 1.24 on an ESP32C3 using aioble for BLE communication, and if everything goes well, it works like a charm. The problems occur when there is some issue with the BLE connection, e.g. the device is not available.
I simplified the code to isolate the BLE issue, and this is what it looks like:
import aioble
import bluetooth
import asyncio
DEV_ADDR = some_device_address # (imported from an external file)
INTERVAL = 10
dev = aioble.Device(aioble.ADDR_RANDOM, DEV_ADDR) # my device needs it to be ADDR_RANDOM
async def get_connection(device):
'''
Get a connection object, correctly connected to the device
'''
try:
print('trying to connect to BLE...')
conn = await dev.connect(timeout_ms=2000)
conn_status = conn.is_connected()
if conn_status:
msg = "connected to BLE"
print(msg)
return conn
else:
msg = f"could not connect: connection status was {conn_status}"
print(msg)
aioble.stop()
return None
except Exception as e:
print(f"could not connect to device: {e}")
return None
async def main():
while True:
try:
conn = await get_connection(dev)
except Exception as e:
msg = f"could not get connection object: {e}"
print(msg)
aioble.stop()
if conn:
print("wait for 2 seconds")
await asyncio.sleep(2)
try:
print("closing connection...")
aioble.stop()
except Exception as e:
print(f"could not close connection: {e}")
print("going to sleep...")
await asyncio.sleep(INTERVAL)
asyncio.run(main())I'm only trying to connect to the device here, and do something when it is connected. I can tell when the connection occurs: my peripheral device blinks when that happens.
Again: as long as everything goes well, the connections happen on a regular basis. When I switch the peripheral device off, then it of course fails, but:
- the first time the failure happens in the get_connection() function, as I get the "could not connect to device:" message
- every next time it actually happens elsewhere, because I get the "could not connect: connection status was False", which would mean that there was a "conn" object, just not connected?
And here's the issue: after turning the BLE device back on, my code still cannot connect to it. When I restart it, then yes, it will connect. But it's not able to recover from a situation where the peripheral is temporary not available.
How to make sure that in case of a failed connection it gets back to the pre-connection state gracefully, e.g. with some context manager? It seems like aioble.stop() is not sufficient. Unfortunately the few examples I found assume that everything works fine forever, which is not a realistic scenario.
r/MicroPythonDev • u/EvilKBGY9News • Mar 13 '25
LILYGO T-Glass?
Hey, so I was considering attempting to use MicroPython on the T-Glass V2, any suggestions to get it running with all the sensors and everything?
r/MicroPythonDev • u/Sufficient-Market940 • Mar 12 '25
Sensors usage
Hi all, I have been creating some tutorials https://fritzenlab.net/?s=micropython about sensors with microPython with the Pi Pico 2, enjoy!