{"id":18301361,"url":"https://github.com/lvgl/lv_platformio","last_synced_at":"2025-05-16T03:02:24.228Z","repository":{"id":41230289,"uuid":"165888270","full_name":"lvgl/lv_platformio","owner":"lvgl","description":"PlatformIO project example for LVGL","archived":false,"fork":false,"pushed_at":"2024-12-21T19:11:23.000Z","size":833,"stargazers_count":292,"open_issues_count":7,"forks_count":104,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-04-08T13:07:41.568Z","etag":null,"topics":["littlevgl","platfomio"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lvgl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"support/pio_explorer.jpg","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-15T16:49:03.000Z","updated_at":"2025-04-04T04:22:46.000Z","dependencies_parsed_at":"2024-01-23T22:08:26.070Z","dependency_job_id":"463b8be8-ff9a-4a14-ae4c-ce2914ddab57","html_url":"https://github.com/lvgl/lv_platformio","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvgl%2Flv_platformio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvgl%2Flv_platformio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvgl%2Flv_platformio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvgl%2Flv_platformio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lvgl","download_url":"https://codeload.github.com/lvgl/lv_platformio/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254459078,"owners_count":22074604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["littlevgl","platfomio"],"created_at":"2024-11-05T15:15:27.027Z","updated_at":"2025-05-16T03:02:24.211Z","avatar_url":"https://github.com/lvgl.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Run LittlevGL via PlatformIO\n\n[![CI](https://github.com/lvgl/lv_platformio/workflows/CI/badge.svg?branch=master)](https://github.com/lvgl/lv_platformio/actions)\n\nThis demo should help you to organize your project with awesome PlatformIO IDE.\n\n1. It automates installing everything - just open folder with this project in\n   [vscode](https://code.visualstudio.com/), and agree to install all it offers.\n2. It contains working LVGL demo, runnable on both bare metal and PC.\n3. It has example, how to configure PlatomIO.\n\n\n## How to install \u0026 use demo\n\n### Install Visual Studio Code\n\nhttps://code.visualstudio.com/ - follow instructions there, if you don't have\nvscode yet.\n\n\n### Install SDL drivers\n\n**Linux (Ubuntu, Debian, ...)**\n\nUse one of options below:\n\n```sh\n# 64 bits\nsudo apt-get install libsdl2-dev\n```\n\n```sh\n# 32 bits\nsudo apt-get install gcc-multilib g++-multilib libsdl2-dev:i386\n```\n\nNote:\n\n- Use 32-bits build for more correct memory stat info.\n- If you have conflicts on `libsdl2-dev:i386` install, remove 64-bits version\n  and dependencies first.\n\n**MacOS**\n\nUse [Homebrew](https://brew.sh/):\n\n```sh\nbrew install sdl2\n```\nNote: \nOn MacOS you need to include (uncomment in provided example platformio.ini file) these lines in your platformio.ini file to import the drivers:\n```\n  ; SDL2 includes\n  !find /opt/homebrew/Cellar/sdl2 -name \"include\" | sed \"s/^/-I /\"\n  !find /opt/homebrew/Cellar/sdl2 -name \"libSDL2.a\" | xargs dirname | sed \"s/^/-L /\"\n```\n\nIf you get the following error on M-chip Mac with VSCode, you can add `-arch arm64` to `build_flags` in `platformio.ini` or just run `pio run -e emulator_64bits -t execute` in the system Python environment. (`pio` should be installed in system Python first).\n```\nld: warning: ignoring file '/opt/homebrew/Cellar/sdl2/2.30.1/lib/libSDL2-2.0.0.dylib': found architecture 'arm64', required architecture 'x86_64'\nld: Undefined symbols:\n  _SDL_CreateRenderer, referenced from:\n      _window_create in sdl.o\n...\n```\n\n\n**Windows**\n\nUse [MSYS2](https://www.msys2.org/)\n\n```sh\npacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-SDL2\n```\n\nAdd the path to your Mingw-w64 `bin` folder to the Windows PATH environment\nvariable (usually `C:\\msys64\\mingw64\\bin`). See [instruction, 4](https://code.visualstudio.com/docs/cpp/config-mingw#_prerequisites).\n\n**ESP32**\n\nThis project uses the Arduino framework and the LovyanGFX library for display drivers.\n\n#### For Existing Display Configurations\n1. Ensure the selected display configuration matches your hardware.\n2. Open the `hal/esp32/app_hal.cpp` file.  \n   - Include the appropriate `.hpp` file for your display.  \n   - Ensure only **one** display configuration is uncommented at a time.\n3. Verify that the `platformio.ini` file matches the board settings.  \n   - Recommended settings can be found in the corresponding `.hpp` file.\n\n\n#### Adding New Display Configurations\n1. Create a new file under `hal/esp32/displays/`.  \n   - Name it `lgfx_{board_name}.hpp`, replacing `{board_name}` with your board's name.\n2. Add the new `.hpp` file to the `hal/esp32/app_hal.cpp` file and ensure it's included correctly.\n3. In the newly created `.hpp` file, include the recommended board configuration for reference.\n\nMake sure to test your setup to confirm compatibility.\n\n### Install flasher drivers (optional)\n\nIf you plan to upload firmware \u0026 debug hardware, read notes in PlatformIO\n[install docs](http://docs.platformio.org/en/latest/installation.html#troubleshooting).\n\n\n### Build/Run\n\n1. Clone this repository or download as zip.\n2. In vscode, open folder via `File` -\u003e `Open Folder...` menu.\n   - If you do it first time - agree, when it suggests to install PlatformIO\n     plugin, and wait when PlatformIO then install build tools and package\n     dependencies.\n\nTo build/execute, on PlafomIO tab expand desired env and click target:\n\n\u003cimg src=\"support/pio_explorer.jpg\" width=\"60%\"\u003e\n\nNote, for emulator env `upload` also executes compiled binary.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvgl%2Flv_platformio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flvgl%2Flv_platformio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvgl%2Flv_platformio/lists"}