Replies: 5 comments 4 replies
-
I do not think the problem was due to compiling your own firmware. The machine.timer module seems to be broken with firmware compiled with ESP-IDF-5.0.2, previous firmware compiled with ESP-IDF-4.x.x was fine. I am sure that the MicroPython core developers are working hard to fix some issues caused by the migration from ESP-IDF-4.x.x to ESP-IDF-5.x.x since the ESP-IDF-4 is no longer supported.
|
Beta Was this translation helpful? Give feedback.
-
For anyone inclined to try, esptool's Trying to force a 4 MB image to use all available flash does write a working MicroPython image, but all the extra storage is ignored:
There's a very strong chance I'm doing something wrong, though |
Beta Was this translation helpful? Give feedback.
-
@shariltumin I have also compiled esp32 with idf v5.0.2 (instructions and algo get an error with the timer (using Lilygo camera v1.6.2):
|
Beta Was this translation helpful? Give feedback.
-
One observation: I added a pin toggle to the timer ISR function. When the timer fires, this pin toggle fires over and over again for about 300ms, >86000 events in total, until the crash happens. |
Beta Was this translation helpful? Give feedback.
-
I can confirm that the machine.Timer is now working. Thanks @dpgeorge.
Nothing related, but something you might want to know. Three warnings under boot.
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
First, I would like to express a general frustration with the state of documentation surrounding MicroPython in general and it's ESP32 port in specific. Everything from the built-in module APIs to the instructions for compiling the firmware are terse to the point of incompleteness. I get the feeling I'm supposed to already know everything I'm trying to learn from the official docs, and I almost always have to google for old forum threads or random tutorials for the necessary detail and context.
I'm only interested in compiling the firmware myself because the dev boards I prefer working with--the Sparkfun Thing Plus--comes with 16MB of Flash instead of 4, and no ready-compiled version of the firmware is compiled for 16MB of flash.
I managed to compile a version of the firmware, essentially using the included partitions_16MiB.csv file to make my own SF_THING_PLUS board profile, otherwise copy-pasted from GENERIC. It has been working for me for days, I've been messing with Wifi and MQTT and such, decided to try out the machine.Timer functions and any attempt at setting a timer interrupt crashes the board with a Guru Meditation Error. I built the GENERIC firmware, none of my changes. Erased the flash and flashed that to the board. Same problem. I download the pre-compiled version from micropython.org, install that with esptool.py...it works fine.
Troubleshooting this one is beyond my level of skill and understanding; why would compiling the firmware myself be a problem?
Beta Was this translation helpful? Give feedback.
All reactions