Support Cheap Yellow Display#110
Conversation
e291fc9 to
780688e
Compare
On a new, unsupported device, you may get a reboot loop. Because if the "mpos.main" can't detect the board it just continues and tries to init the display. In by case (on a CYD) it results in a hard crash -> a boot loop. This loop is short and avoids to be able to use "mpremote cp"... It looks like: ``` ... sys.version=3.4.0; LVGL (9.3.0) MicroPython (1.25.0) Binding compiled on 2026-04-01 sys.implementation=(name='micropython', version=(1, 25, 0, ''), _machine='Generic ESP32 module with SPIRAM with ESP32', _mpy=11014, _build='ESP32_GENERIC-SPIRAM') Free space on root filesystem: total_space=0 / used_space=0 / free_space=0 bytes RAM: 110656 free, 640 allocated, 111296 total Passing execution over to mpos.main MicroPythonOS 0.9.0 running lib/mpos/main.py unPhone ? odroid_go ? m5stack_core2 ? Try to I2C initialized on sda=21 scl=22 fail_save_i2c ok Attempt to write a single byte to I2C bus address 0x34... No device at this address: [Errno 116] ETIMEDOUT m5stack_fire ? Try to I2C initialized on sda=21 scl=22 fail_save_i2c ok Attempt to write a single byte to I2C bus address 0x68... No device at this address: [Errno 116] ETIMEDOUT Unknown board: couldn't detect known I2C devices or unique_id prefix A fatal error occurred. The crash dump printed below may be used to help determine what caused it. If you are not already running the most recent version of MicroPython, consider upgrading. New versions often fix bugs. To learn more about how to debug and/or report this crash visit the wiki page at: https://github.com/micropython/micropython/wiki/ESP32-debugging LVGL MicroPython IDF version : 67c1de1e Machine : Generic ESP32 module with SPIRAM with ESP32 Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled. ... ``` The interesting line is `Unknown board: couldn't detect known I2C devices or unique_id prefix` so that `detect_board()` returns `None` but the code just continues. This PR will raise and error, that will be captured in the `main.py` and we end in the REPL. This looks like: ``` ... sys.version=3.4.0; LVGL (9.3.0) MicroPython (1.25.0) Binding compiled on 2026-04-01 sys.implementation=(name='micropython', version=(1, 25, 0, ''), _machine='Generic ESP32 module with SPIRAM with ESP32', _mpy=11014, _build='ESP32_GENERIC-SPIRAM') Free space on root filesystem: total_space=0 / used_space=0 / free_space=0 bytes RAM: 110656 free, 640 allocated, 111296 total Passing execution over to mpos.main MicroPythonOS 0.9.0 running lib/mpos/main.py unPhone ? odroid_go ? m5stack_core2 ? Try to I2C initialized on sda=21 scl=22 fail_save_i2c ok Attempt to write a single byte to I2C bus address 0x34... No device at this address: [Errno 116] ETIMEDOUT m5stack_fire ? Try to I2C initialized on sda=21 scl=22 fail_save_i2c ok Attempt to write a single byte to I2C bus address 0x68... No device at this address: [Errno 116] ETIMEDOUT Unknown board: couldn't detect known I2C devices or unique_id prefix Traceback (most recent call last): File "main.py", line 32, in <module> File "mpos/main.py", line 253, in <module> RuntimeError: No board detected, exit initialization! Error in mpos.main, sleep for 5 seconds and end then... LVGL (9.3.0) MicroPython (1.25.0) Binding compiled on 2026-04-01; Generic ESP32 module with SPIRAM with ESP32 Type "help()" for more information. >>> ```
Seems to be just another hacky way to expand the build process. Maybe the whole thing should be restructured? The idea is to add a target for CYD that has 4MB flash and no PSRAM. On the other side the normal "esp32" build runs here ... So i really don't know it it's needed...
57ef6d6 to
0293dda
Compare
|
current progress: The ILI9341 display doesn't work: Just garbage on it, today... |
|
Hello, did you really can start this device (ESP32-2432S028R?) into MPOS? But also the 'real' CYD can unleashed with a hardware mod: https://esp3d.io/ESP3D-TFT/Version_1.X/hardware/esp32/sunton-28-2432/ Greetings Alex |
Yes, but you have to build the "esp32-small" image for this. |
|
Ha! I think we are working on something similar! Maybe I should just paste all of my stuff here lol. I'm trying to get the Elegoo vesion of this to work, I'm running into the exact same problem! I don't know if I will figure it out, I just thought I would give it a go. Its cool to see someone was already working on it. I guess I should have checked PRs haha. Anyway, I can just close mine and work with you if you would want an extra person helping or I can keep mine open. Let me know if you want to team up on this! I got a color test to run on mine RGB flashing on the screen, but I have the same memory errors after MPOS starts. |
|
Do whatever you would like. The point is to get this device supported 😉 |
True |
see: #88