@kdschlosser i get an error:
python3 make.py esp32 mpy_cross submodules clean BOARD=ESP32_GENERIC_S3
BOARD_VARIANT=SPIRAM_OCT
Traceback (most recent call last):
File “/home/alex/micropython-tf/lv_binding_micropython/make.py”, line 12, in
argParser.add_argument(
File “/usr/lib/python3.10/argparse.py”, line 1424, in add_argument
kwargs = self._get_positional_kwargs(*args, **kwargs)
File “/usr/lib/python3.10/argparse.py”, line 1540, in _get_positional_kwargs
raise TypeError(msg)
TypeError: ‘required’ is an invalid argument for positionals
There is a board that exists already that you can use. You don’t need to specify a custom board at all and unless you really know what you are doing it’s not going to run correctly. The custom board thing is for really advanced users that have a large amount of knowledge about the ESP32 and the ESP32 SDK.
If the board you are using has 2mb of SPIRAM and 16mb of flash then you do not have a board that has octal SPIRAM. so your board variant is incorrect.
You need to be using BOARD_VARIANT=SPIRAM
I will fix that typeerror right now. Give me a couple of minutes to do that.
OK the TypeError is fixed.
If you find that after you compile the firmware that the amount of storage is not correct I will walk you through how to use the custom board feature. How you check to see if the storage is right is after you have flashed the firmware open up a repl over the serial port and type in the following.
import flashbdev
flashbdev.bdev
what will be printed out is this
<Partition type=1, subtype=129, address=2535424, size=31019008, label=vfs, encrypted=0>
and you can see the size right there. If the size is not around the 13.5mb area and it is smaller than that then the partition being used is not correct and we will need to fix that by using a custom board.
argParser.add_argument(
'--skip-partition-resize',
dest='skip_partition_resize',
help='clean the build',
action='store_true'
)
argParser need change to esp_argParser in make.py
and in logs:
make submodules -C ports/esp32 LV_CFLAGS=“-DLV_COLOR_DEPTH=16 -DLV_COLOR_16_SWAP=1 -DLV_KCONFIG_IGNORE=1” LV_PORT=esp32 BOARD=ESP32_GENERIC_S3 BOARD_VARIANT=SPIRAM USER_C_MODULES=…/…/…/…/micropython.cmake submodules –spiram=2 --spiflash=16
make: unrecognized option ‘–spiram=2’
make: unrecognized option ‘–spiflash=16’
Need to think about submodules_cmd = [ … ] + extra_args and other places.
I managed to flash with the specified flags:
import flashbdev
flashbdev.bdev
<Partition type=1, subtype=129, address=2494464, size=5894144, label=vfs, encrypted=0>
And this:
You didn’t read the readme file. I can tell you that much.
That build command will not work properly because you are running make not make.py. And the options you have specified are not going to work.
Your compile command is
python3 make.py esp32 submodules clean mpy_cross BOARD=ESP32_GENERIC BOARD_VARINT=SPIRAM
That’s all you need to do nothing more.
It is setting your flash size at 8mb, we need to get that up to the 16mb. It will work for the time being and you are having the reboot problem as well when you call lv.init. I will be spending some time to fix that issue in a little while. Dunno how long it will take me to fix. I gotta do some reading and learning.
Sorry, I misinformed you a little. I used make.py and attached an excerpt from the error log in the message. I read the readme
OK. just wanted to make sure you had read it. If there is anything you do not understand about it lemme know and I will see if I can do a better job explaining how to use it. I even went to the extent of installing the ESP-IDF to simplify it as much as possible for the user. so a single command and they can be off and running.
I have to figure out what is going on with lvgl causing the esp32 to reboot
Just for your information @kdschlosser
Since completes the removal of the heap_caps callback commit, “driver/esp32/heap_caps/include” directory has been removed. it cause a compile error,
CMake Error at .../esp-idf/tools/cmake/component.cmake:312 (message):
Include directory
'.../lv_binding_micropython/driver/esp32/heap_caps/include'
is not a directory.
solved by creating empty “include” directory
idk why I deleted the directory. I didn’t think that I did.
Thanks.
Dear @kdschlosser, Finally I could use latest lvgl v9 on micropython 1.21.0
And the display driver is awesome.
There was massive commits within 3 weeks, lvgl@3ececbf image header is not match with latest LVGLImage.py generates.
lv_binding_micropython has lvgl@3ececbf(3 weeks ago) ,
It has been successfully compiled with latest lvgl commits with latest lv_conf.h
lv.image, labels works just fine. but when I initialize canvas.init_layer(layer)
it’s been freezed with no error message.
It is working just fine with lvgl@3ececbf
( I dont have any idea about the cause, I found commit of ‘use draw buffer for canvas’ after lvgl@3ececbf)
What should I do for next ?
@kisvegabor
Maybe you can make heads or tales of this. I am not sure what it is but it appears that there is some kind of an issue in LVGL that is causing an issue.
@Sam_Sangkyu_Lee Could you open an issue about it on GitHub, so that I can cc the related developers?
Thank you so much for the concerning,
Multi-instance branch is working just fine… tested on today.
I will try again with the multi-instance branch configuration settings
and I will open it when it reproduces
We will merge multi-instance to master soon.
Oops, I did not know multi-instance branch has old lvgl commits.
I am narrowing down which commit causes the freezing.
lvgl@11afc95 is working without any issue
I’ve opened an issue on github repo.
It is fantastic that you are doing that but… This thread is about MicroPython v1.21 and not v1.19 which is what you are merging. The issue of it using a really old version of the ESP-IDF still exists. And it only supports SPI displays.
are you using a display that has a vglite graphics accelerator? If you are not then you need to turn off using that.
I am using esp32, with spiram ( gc9a01)
I meant that is the last commit without any issue, after the vg_lite commit,
( lvgl@e217674 (#5161) chore: move lv_obj_t define to lv_types.h
)
That is the issue point.
I’ve compiled dozens of commits within 3 weeks, after checkout to that commit, it is freezing.
it also happens on mp1.20.0 lvgl’s multi-instance branch, so I’ve opened an issue.