Seeed-Studio / wiki-documents

https://wiki.seeedstudio.com/Getting_Started Seeed Studio Wiki source code
https://wiki.seeedstudio.com/Getting_Started
GNU General Public License v3.0
111 stars 130 forks source link

[Page Update][Enhanced Function]Support the LVGL 9 on XIAO Round Display #1236

Open MatthewJeffson opened 4 months ago

MatthewJeffson commented 4 months ago

Overview

We need your help to run LVGL 9 seamlessly on XIAO Round Display, with full display and interaction capabilities, and make it easy for other developers to get started through the wiki documentation.

How do we work together?

github-actions[bot] commented 4 months ago

👋 @MatthewJeffson

Thank you for raising an issue. We will investigate into the matter and get back to you as soon as possible. Please make sure you have given us as much context as possible.

Timo614 commented 4 months ago

I can grab this one next if no one takes. I have a round display on hand and have been meaning to put it to use so would be an interesting project to get lvgl and the touchscreen working for it.

MatthewJeffson commented 4 months ago

Nice, thank you Tim!

Timo614 commented 3 months ago

I think this may already exist in a sense: https://wiki.seeedstudio.com/using_lvgl_and_tft_on_round_display/

The associated library was recently updated to support lvgl 9 so it may already work following the existing guide:
https://github.com/Seeed-Studio/Seeed_Arduino_RoundDisplay/commit/2c1e0aa7d2340e29210725e718d11850b9efc90d

I could run through the wiki for each element ensuring it still works with the updated library re: the functional verification. Will confirm if there's value in adding another wiki page / significant API changes.

Timo614 commented 3 months ago

I tried with LVGL 9 but the UI is not responsive with the demo code. Guessing some changes will need to be made to further support it / some underlying issue.

Will investigate further here as part of this. Did not run into any problems with LVGL 8. The UI does load just can't click anything.

Timo614 commented 3 months ago

I think it would be better if someone else grabbed actually. I realize my schedule is a bit hectic for the next month and my first pass at debugging wasn't fruitful / don't want to get too bogged down trying to sort out the issue. If time permits in the future will take another stab but someone else can grab this for now. :+1:

MatthewJeffson commented 3 months ago

@Timo614 Hello Tim! Yeah we do have some developments but they are not finished and that's why we launched it.:)

MatthewJeffson commented 3 months ago

And no problem at all for the issues. I will have it reopened until we found someone or you can carry on:D Thank you for your efforts! Best Regards, Matthew

Timo614 commented 3 months ago

I spent a little time here and was able to debug the issues and fix the library locally. I'll push up a pull request for the associated library with the fixes to get LVGL 9 working there once I have a chance to confirm the various Xiao models work with it and those other libraries.

For the wiki what were you thinking? Most of what would apply to LVGL 8 also applies to LVGL 9. I could just make a demo app of some form to show off the functionality in some way but I think the old pages are still applicable.

LVGL 9 also has built in driver support for TFT_ESPI but I kept things in the repo using the custom driver (still TFT_ESPI) for compatibility with the earlier versions.

Timo614 commented 3 months ago

Pushed up https://github.com/Seeed-Studio/Seeed_Arduino_RoundDisplay/pull/5 -- going to test it further tomorrow but after those changes I was able to use LVGL 9 on the Xiao RP2040 and use the touch functionality (the buffer's type needed to be adjusted and the tick functionality changed from LVGL 8 w/ an env var to the callback API approach which was preventing touches from being recognized prior to the change).

MatthewJeffson commented 3 months ago

Wow! Thank you Tim! @Timo614 For the updated wiki, I think you can add one portion in the same page: https://wiki.seeedstudio.com/using_lvgl_and_tft_on_round_display/

and it might be something like...:

Image

MatthewJeffson commented 3 months ago

And I will contact our R&D apartment for the PR:D

Best Regards, Matthew

Timo614 commented 3 months ago

Oddly enough I'm struggling to get TFT ESPI working for any of the demos on my ESP32 based Xiaos (even before the LVGL 9 code / can't get LVGL 8 working). There must be some other incompatibility with the newer stack or my machine in the mix. Going to take another break from debugging this if anyone else wants to take a look. That other PR should address the RP2040 issues though in the meantime.

MatthewJeffson commented 3 months ago

Ops, okay! XD

Priyanshu0901 commented 3 weeks ago

Hey @Timo614 , I was working with the Xiao Expansion board with oled display and Xiao s3. LVGL 8 is working properly. Can you share me the git repo for this or hit me up on discord. I might be able to help you out with the ESP32 issues.