SuperHouse / esp-open-rtos

Open source FreeRTOS-based ESP8266 software framework
BSD 3-Clause "New" or "Revised" License
1.52k stars 491 forks source link

LVGL: Open-source Embedded GUI Library #669

Closed Zaltora closed 5 years ago

Zaltora commented 5 years ago

Hi, i use lvgl in my current project and i suggest to use it as main GUI library for esp-open-rtos. It is the most complete GUI Library graphics open source i found (license MIT). If someone know alternative, tell me. I know µGUI but is not as complete as it. I will not describe the library here, the website is better for that: lvgl Font/image tools, UTF-8 encoding, filesystem compatible, complete docs ...

Some clean up/organization to do before merge it. Suggest are welcome for everything. My implementation is maybe not good. Configuration files will be split because some of them need to be set just for the current sdk, not the current project. I use the dev-5.2 branch of lvgl and the "new_api" branch of lv_drivers. Some lvgl GUI example are present too.

I added a usage example with ssd1306 (work well). I will add some more example. I need fix usage of multiple spi to put the example with ili9341 and the AR1021.

Look this video (sry for quality)(mkv): ili9341_esp8266_test.zip HW : esp8266 + ILI9341 + AR1021

Warning: -Not all drivers from lv_drivers is compatible, it is a dev branch. ILI9341, AR10XX and SSD1306 are compatible. -5.2 branch need to be stable before merging.

Zaltora commented 5 years ago

Now: you need add lv_conf.h and the lv_drv_conf.h to our root project directory. It exist a way to make possible to add theses files in any sub-folder ?

The way FreeRTOSConfig.h is implemented seem to work in a better way, unfortunately i don't no yet how do the same with lvgl files.

UncleRus commented 5 years ago

Great work! Thank you!

UncleRus commented 5 years ago

Going to merge it

Zaltora commented 5 years ago

Not yet, the official release 5.2. was done this week. Need to update it and the example with configuration files.

I didn't found a solution to make possible to user to change the placement of configuration file. This feature can wait i guess :)

Zaltora commented 5 years ago

5.2 branch add new feature for monochrome display. i will update the driver soon

Zaltora commented 5 years ago

This PR is ready to be merged :) With lvgl, we can use a lower buffer than the original SSD1306 library. instead of 1kB, we can use 1/8 of this size (minimum).