lvgl / lv_binding_micropython

LVGL binding for MicroPython
MIT License
237 stars 156 forks source link

Update LVGL, fix display drivers and examples #298

Closed PGNetHun closed 5 months ago

PGNetHun commented 8 months ago

PS: this PR contains fixed (old) display drivers. I think it will be sufficient till the new display driver approach is finished (see: https://forum.lvgl.io/t/micropython-display-drivers-part-2/14131/9 )

PGNetHun commented 8 months ago

Rebased to https://github.com/lvgl/lv_binding_micropython/commit/14058be30b3dc501d80360e3ce59ac1f92b4959a

PGNetHun commented 7 months ago

Rebased branch to feat/multi-instance branch commit #7e0adef8

PGNetHun commented 6 months ago

Please squash merge this PR

PGNetHun commented 5 months ago

@kisvegabor , @XuNeo This PR contains updated lv_conf.h and fix for RGB565 (old) display drivers (using lv_draw_sw_rgb565_swap() function). I have tested it (with ILI9341 display), and it works, my "old" MicroPython pet-project works with these changes. So, I think after merging this (and https://github.com/lvgl/lv_binding_micropython/pull/309 ) to multi-instance branch, we could think on merging multi-instance branch also to master branch, and update lv_micropython repo, too. MicroPython (v1.20) binding with latest LVGL 9 changes seems to be (mostly) stable.
I think it is better to merge these LVGL 9 related changes to lv_micropython -> master branch, because that contains now an unstable version.

Other topic: if it's OK for you, then I can help in LVGL-MicroPython binding changes as PR approver, or as maintainer "helper", so you can focus on LVGL itself.

kisvegabor commented 5 months ago

@PGNetHun

if it's OK for you, then I can help in LVGL-MicroPython binding changes as PR approver, or as maintainer "helper", so you can focus on LVGL itself.

Thank you yo much for that! It would really help a lot. I'm not sure if you meant like that, but to work more effectively I can grant you write access to both Micropython repos. What do you think?

PGNetHun commented 5 months ago

@PGNetHun

if it's OK for you, then I can help in LVGL-MicroPython binding changes as PR approver, or as maintainer "helper", so you can focus on LVGL itself.

Thank you yo much for that! It would really help a lot. I'm not sure if you meant like that, but to work more effectively I can grant you write access to both Micropython repos. What do you think?

@kisvegabor , @XuNeo

Hello! Yes, I want to stabilize/update the MicroPython binding so other developers can use it also; if it is okay for you, then please grant me the minimal permission to merge PRs (-> "write" access).

What do you think on my other question/request: merge multi-instance branch to master? (I think that branch is stable enough (and will have up-to-date LVGL config with this PR) to merge to master)

A 3rd topic would be to have same contributing guidelines for these MicroPython repos just like for LVGL: issue/PR templates and commit message format. (but of course a new commit "type" prefix would be needed only for LVGL update commits)

kisvegabor commented 5 months ago

Yes, I want to stabilize/update the MicroPython binding so other developers can use it also; if it is okay for you, then please grant me the minimal permission to merge PRs (-> "write" access).

Write permission granted for both repos! Thank you for your help!

What do you think on my other question/request: merge multi-instance branch to master? (I think that branch is stable enough (and will have up-to-date LVGL config with this PR) to merge to master)

I do agree to merge the multi-instance branch to master. We also need to update LVGL's CI here.

A 3rd topic would be to have same contributing guidelines for these MicroPython repos just like for LVGL: issue/PR templates and commit message format. (but of course a new commit "type" prefix would be needed only for LVGL update commits)

I also agree. I think following LVGL's templates and rules is a good starting point. IMO the READMEs could be clean up as well and move the technical data to MicroPython's docs page.

sam0910 commented 5 months ago

greetings! thank you so much for the updates.

GC9A01 display needs 'swap_rgb565_bytes=True' option for proper color display. I found it is missing on PGNetHun:fix-color-format-detection/driver/esp32/ili9XXX.py

PGNetHun commented 5 months ago

greetings! thank you so much for the updates.

GC9A01 display needs 'swap_rgb565_bytes=True' option for proper color display. I found it is missing on PGNetHun:fix-color-format-detection/driver/esp32/ili9XXX.py

Fixed in a new commit