{"id":22982817,"url":"https://github.com/cxmrykk/corolla-clock","last_synced_at":"2026-05-07T08:39:48.073Z","repository":{"id":206123527,"uuid":"703328303","full_name":"Cxmrykk/Corolla-Clock","owner":"Cxmrykk","description":"Toyota Corolla E120 AMOLED Clock Firmware \u0026 Hardware","archived":false,"fork":false,"pushed_at":"2024-01-10T03:01:01.000Z","size":217,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T01:27:48.836Z","etag":null,"topics":["arduino","corolla","embedded-systems","esp-idf","esp32","lilygo-tdisplay-s3"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cxmrykk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-10-11T03:31:19.000Z","updated_at":"2024-01-30T13:30:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"69422553-9e0a-4857-ab6a-ea57a9ab85fa","html_url":"https://github.com/Cxmrykk/Corolla-Clock","commit_stats":null,"previous_names":["cxmrykk/corolla-clock"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cxmrykk%2FCorolla-Clock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cxmrykk%2FCorolla-Clock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cxmrykk%2FCorolla-Clock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cxmrykk%2FCorolla-Clock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cxmrykk","download_url":"https://codeload.github.com/Cxmrykk/Corolla-Clock/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246794206,"owners_count":20834938,"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":["arduino","corolla","embedded-systems","esp-idf","esp32","lilygo-tdisplay-s3"],"created_at":"2024-12-15T02:33:08.331Z","updated_at":"2026-05-07T08:39:43.047Z","avatar_url":"https://github.com/Cxmrykk.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=center\u003eToyota Corolla AMOLED Clock\u003c/h1\u003e\n\u003cp align=center\u003eCustom clock project using the LilyGo T-Display-S3 AMOLED\u003c/p\u003e\n\n\u003cdiv align=center\u003e\n    \u003cimg src=\"assets/pcb_model.png\"\u003e\n\u003c/div\u003e\n\n### Features\n- Display the time on a high resolution AMOLED display\n- Different colour/brightness based on interior lighting state (on/off)\n- Colour Settings (digit colour, background opacity, whiteness level)\n- Size Settings (width, thickness, padding)\n- Automatic display timeout when accessory is off\n\n### Dependencies\n- **ESP-IDF** \u003c= v4.4.6\n- **Arduino-ESP32** \u003c= v2.0.14 *(Place inside components folder)*\n- **TFT-eSPI** \u003c= v2.5.31 *(Place inside components folder)*\n- **Required Libraries** (See [Official ESP-IDF Installation Steps](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html))\n    - Additionally: `python3-virtualenv`\n\n### Configuration\n- **menuconfig** *(Type \"menuconfig\" in Command Palette)*\n    - Set all `TFT_eSPI` driver configuration pins to 0 (we are using `rm67162.h` and `rm67162.cpp` for driving the display)\n    - `\"Autostart Arduino setup and loop on boot\"` should be enabled\n- **CMakeLists.txt**\n    - Make sure `main.cpp` and `rm67162.cpp` are both in `SRCS` entry for `idf_component_register`\n    - `INCLUDE_DIRS` should be set to `\".\"` (Relative path of `main` directory, includes the header files)\n- **VSCode (ESP-IDF)**\n    - Set device to `esp32s3`\n    - Set flash method to `UART`\n\n### Step-by-Step DIY Tutorial\n\u003e This project requires a clock with 3 buttons (Asia/Pacific Model). If your clock does not meet this specification, you will need to purchase a separate clock housing.\u003cbr\u003e\n\u003e A Linux-based OS is necessary to flash the software. **Debian Desktop or Ubuntu** are recommended.\n\n1. **Procure T-Display-S3 AMOLED and Necessary Materials**\n    - **T-Display-S3 Amoled** (https://www.lilygo.cc/products/t-display-s3-amoled)\n    - Wire cutters\n    - Soldering iron\n    - Solder\n    - Heat-resistant cables (compatible with 2.54mm spaced pins)\n\n2. **Order PCB via JLCPCB Service**\n    - Register an account at https://jlcpcb.com/\n    - Navigate to https://cart.jlcpcb.com/quote/Upload and upload the gerber file located in `/docs/schematics`\n    - Select \"PCB Assembly\"\n    - Proceed with the checkout process, providing the files located in `docs/schematics`.\n\n3. **Order 3D Print via JLC3DP Service**\n    - Log in using the same account\n    - Repeat the following process for both models:\n        - Navigate to https://jlc3dp.com/3d-printing-quote and upload the STL file located in `/docs/models`\n        - Choose a material that can withstand high temperatures\n        - Add to cart and proceed with the checkout process\n\n4. **Software Flashing**\n    - Download Visual Studio Code from https://code.visualstudio.com\n    - Install the dependencies as specified in the README\n    - Follow the configuration steps as specified in the README\n        - Clone the project: `git clone https://github.com/Cxmrykk/Corolla-Clock.git`\n        - Navigate to the project directory: `cd Corolla-Clock`\n        - Open with VSCode: `code .`\n    - Connect the T-Display-S3 AMOLED board via USB-C and click the \"Flash\" button at the bottom\n\n5. **Soldering Process**\n    - Trim the wires on both sides (approximately 0.5cm) and tin them using the soldering iron\n    - Solder wires to the T-Display-S3 AMOLED pins as follows:\n        - GPIO 42: LAMP\n        - GPIO 43: ACCESSORY\n        - GPIO 44: RESET\n        - GPIO 45: HOUR\n        - GPIO 46: MINUTE\n        - VBUS: VCC\n        - 3.3V: 3.3V\n        - GND: GND\n    - After soldering, trim the ends to prevent contact (trim the top of the board, not the cables)\n    - Solder the other ends of the cables to the PCB (refer to the pin map above)\n    - Verify that all pins are soldered and none are touching\n\n6. **Clock Removal and Assembly**\n    - Remove the clock by following a tutorial on YouTube\n    - Disassemble the clock by following a tutorial on YouTube (Exercise caution as the clock housing clips are brittle)\n    - Remove the existing buttons and circuit board\n    - Secure the new PCB to the clock housing using the existing screw\n    - Insert the 3D printed mount and buttons (some force may be required for proper insertion)\n    - Insert the Screen and PCB:\n        - The USB-C port should be on the right side. The LILYGO logo should be upright (same orientation as clock housing)\n        - Insert the screen first, then clip in the rest of the housing (with the PCB attached)\n    - Finally, reinstall the clock and reassemble your car.\n\n7. **Adjusting Alignment and Time**\n    - Press the reset button (`:00`) to toggle the mode overlay\n    - Press the hour button twice (`H`) to cycle to the vertical positioning menu\n    - Press the reset button once more and hold the `H` and `M` buttons to adjust the screen position\n    - Adjust the screen position as needed for clear text readability\n    - Configure your clock as required (Set time, align screen, colours, sizing, brightness, etc)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcxmrykk%2Fcorolla-clock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcxmrykk%2Fcorolla-clock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcxmrykk%2Fcorolla-clock/lists"}