{"id":27627085,"url":"https://github.com/ferfoui/embeddeddisplay","last_synced_at":"2026-05-10T19:03:02.369Z","repository":{"id":289126120,"uuid":"964520250","full_name":"Ferfoui/EmbeddedDisplay","owner":"Ferfoui","description":"Program to control a little screen with an ESP32","archived":false,"fork":false,"pushed_at":"2025-04-21T17:30:04.000Z","size":27,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-21T17:43:13.779Z","etag":null,"topics":["bluetooth","bluetooth-le","cpp","esp32","esp32-arduino","platformio"],"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/Ferfoui.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-11T10:45:45.000Z","updated_at":"2025-04-21T17:30:07.000Z","dependencies_parsed_at":"2025-04-21T17:53:17.897Z","dependency_job_id":null,"html_url":"https://github.com/Ferfoui/EmbeddedDisplay","commit_stats":null,"previous_names":["ferfoui/embeddeddisplay"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ferfoui%2FEmbeddedDisplay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ferfoui%2FEmbeddedDisplay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ferfoui%2FEmbeddedDisplay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ferfoui%2FEmbeddedDisplay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ferfoui","download_url":"https://codeload.github.com/Ferfoui/EmbeddedDisplay/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250444004,"owners_count":21431567,"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":["bluetooth","bluetooth-le","cpp","esp32","esp32-arduino","platformio"],"created_at":"2025-04-23T13:52:42.466Z","updated_at":"2026-05-10T19:03:02.365Z","avatar_url":"https://github.com/Ferfoui.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EmbeddedDisplay\n\nThis is a little project to display things through a small OLED display connected to an\n[ESP32-S3-DevKitC-1 v1.1](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/user_guide.html#esp32-s3-devkitc-1-v1-1) board.\nThe display is a 128x32 pixel monochrome OLED screen,\nand the project uses the [ssd1306 library](https://github.com/adafruit/Adafruit_SSD1306) to control it.\n\nThe project is built using [PlatformIO](https://platformio.org/)\nand the [Arduino framework](https://docs.platformio.org/en/latest/frameworks/arduino.html).\nMoreover, it has been built for a Chinese class presentation (about chinese electronics).\n\n## What does this project do?\n\nThis project allows the ESP32-S3 board to display chinese characters on an OLED screen.\nIt supports Bluetooth (Low Energy) communication, enabling users to send commands or messages to the board.\nThe board can display predefined chinese messages or user-provided (ASCII) text,\nand it uses the embedded RGB LED to indicate the system's status (e.g., initialization, connection, or errors).\n\n## How to build the project\n\n1. Install [PlatformIO](https://platformio.org/) in your preferred IDE\n(e.g., [CLion](https://docs.platformio.org/en/latest/integration/ide/clion.html#ide-clion),\n[VS Code](https://docs.platformio.org/en/latest/integration/ide/vscode.html#ide-vscode)).\n2. Clone this repository to your local machine.\n3. Open the project folder in your IDE.\n4. Connect your ESP32-S3 board to your computer via UART USB.\n5. Build and upload the project using the PlatformIO interface.\n\n## Configuration\n\n- **ESP32-S3 Board**: [ESP32-S3-DevKitC-1 v1.1](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32s3/esp32-s3-devkitc-1/user_guide.html#esp32-s3-devkitc-1-v1-1)\n  - **Module Integrated**: ESP32-S3-WROOM-1-N8R2\n  - **Flash Size**: 8 MB\n  - **PSRAM**: 2 MB\n  - **Power Supply**: USB power supply\n- **OLED Display**: [APKLVSR I2C 128x32 OLED Display](https://www.amazon.fr/dp/B0D2L1ZDWP)\n\n## Chinese characters integration\n\nThe project supports displaying Chinese characters on the OLED screen.\nEach character is represented as a 16x16 bitmap stored in program memory (PROGMEM).\nThese bitmaps are mapped to their corresponding UTF-8 encoded characters in a dictionary (`chineseDictionary`). \n\nTo display a character, the program searches the dictionary for the UTF-8 string and retrieves the associated bitmap.\nIf the character is not found, a placeholder bitmap is displayed instead.\nThe `drawChineseChar` and `drawChineseString` functions handle rendering individual characters and strings,\nrespectively, with proper spacing between characters.\n\nFiles [`chinese.h`](include/chinese.hpp) and\n[`chinese.cpp`](src/chinese.cpp) contain the character bitmaps and the functions to display them.\n\n## Libraries\n\n- [Adafruit SSD1306](https://registry.platformio.org/libraries/adafruit/Adafruit%20SSD1306)\n- [BluetoothTerminal](https://registry.platformio.org/libraries/loginov-rocks/BluetoothTerminal)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fferfoui%2Fembeddeddisplay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fferfoui%2Fembeddeddisplay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fferfoui%2Fembeddeddisplay/lists"}