7" display - reinstall factory firmware
I have a brand-new 7" display, which when powered on, ran a nice demo program, so the hardware definitely works.
I erased the flash using esptool.py, and attempted to reinstall the 7.0-inch_Factory_firmware files from the Google Drive link.
I used esptool.py to load the 4 firmware bin files, and the flash was successful according to the esptool output.
When I reset the board, the screen is blank. If I connect to the usb serial port, I see a constant stream of "invalid header: 0xffffffff" messages, and the board periodically resets with the following message:
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x10 (RTCWDT_RTC_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
As far as I can tell, there are no hardware or connectivity issues, so I suspect the firmware files are not valid in some way.
I would appreciate any suggestions or advice.
Comments
Hello @jalsop ,
Did you follow this instruction:https://forum.elecrow.com/discussion/510/how-to-install-the-factory-demo-firmware-with-flash-download-tool/p1?new=1 to install the firmware?
The firmware in the Google Drive is old. You can try following this tutorial:https://forum.elecrow.com/discussion/495/how-to-upload-the-esp32-display-factory-program-by-arduino-ide to upload the code by Arduino IDE to sea if it can display normally.
Hi @jalsop ,
Here's the new firmware:
Thank you.
Yes - I followed the instructions you referred to. They said to use the Google drive files, which I now understand are "old".
I will try with the new firmware you supplied. I'm running on MacOS so I can't use the Windows flash tool, but I will try with esptool.py and let you know if it works.
Note: I built a new micropython binary from scratch for the ESP32-S3 and it works fine on the board., so I am satisfied that the hardware is ok.
Is there information available on how to add LVGL support for your display to a custom micropython build?
Thanks!
OK - I loaded the new firmware you supplied, and it works correctly. Thank you!
For the benefit of anyone else needing to use esptool.py, here is the command I used to flash the board:
esptool.py -b 460800 --before default_reset --after no_reset --chip esp32s3 \
write_flash --flash_size detect --flash_freq 80m \
0xe000 elecrow/boot_app0.bin \
0x0 elecrow/LvglWidgets-LVGL-7.0.ino.bootloader.bin \
0x8000 elecrow/LvglWidgets-LVGL-7.0.ino.partitions.bin \
0x10000 elecrow/LvglWidgets-LVGL-7.0.ino.bin
Note that I moved the firmware files to a folder named "elecrow".
I would still like to know how to add LVGL support for your display to a micropython build.
Thanks!
Jalsop,
Can you tell me what version of MicroPython the new firmware is running?
I'm using the latest version of micropython. It prints the following banner on startup:
> MicroPython v1.23.0-preview.36.gbd21820b4 on 2024-01-10; Generic ESP32S3 module with ESP32S3
Also, I am using esp-idf-v5.1.2
Jalsop,
Is this something that you compiled yourself? The MicroPython website has something for the ESP32S3, but it's for a device with 8MB of flash memory.
Can you share the build that you've made?
@Elecrow,
Do you have that new firmware for the 5.0 screen?
I made a standard build of micropython for a generic ESP32-S3. It runs fine on the HMI 7" hardware, but of course does not support the display. It would likely run equally well on the 5" display.
I want to make my own micropython build which includes LVGL support for the HMI display.
Happy to share the firmware that I built, but I don't know how to upload files here. (I'm a newbie on this site).
OK - figured it out. Here are the firmware files.