{"id":29091680,"url":"https://github.com/taherfattahi/esp32-maze-game","last_synced_at":"2026-04-29T06:38:05.978Z","repository":{"id":300566999,"uuid":"1006492508","full_name":"taherfattahi/esp32-maze-game","owner":"taherfattahi","description":"A classic tilt-controlled maze game powered by an ESP32 microcontroller and an MPU6050 motion sensor.","archived":false,"fork":false,"pushed_at":"2025-06-22T12:01:39.000Z","size":108,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-29T06:37:47.018Z","etag":null,"topics":["esp32","i2c","mpu6050","oled-display-ssd1306"],"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/taherfattahi.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":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-22T11:53:53.000Z","updated_at":"2025-08-05T10:43:38.000Z","dependencies_parsed_at":"2025-06-22T13:18:31.271Z","dependency_job_id":"7a85157b-09ef-4bed-937e-2b5e425396f0","html_url":"https://github.com/taherfattahi/esp32-maze-game","commit_stats":null,"previous_names":["taherfattahi/esp32-maze-game"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/taherfattahi/esp32-maze-game","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taherfattahi%2Fesp32-maze-game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taherfattahi%2Fesp32-maze-game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taherfattahi%2Fesp32-maze-game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taherfattahi%2Fesp32-maze-game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taherfattahi","download_url":"https://codeload.github.com/taherfattahi/esp32-maze-game/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taherfattahi%2Fesp32-maze-game/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32414422,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T06:29:02.080Z","status":"ssl_error","status_checked_at":"2026-04-29T06:29:00.631Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["esp32","i2c","mpu6050","oled-display-ssd1306"],"created_at":"2025-06-28T06:41:31.366Z","updated_at":"2026-04-29T06:38:05.963Z","avatar_url":"https://github.com/taherfattahi.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ESP32 Tilt Maze Game\n\nA classic tilt-controlled maze game powered by an ESP32 microcontroller and an MPU6050 motion sensor. Tilt the physical device to guide a ball through a digital maze on an OLED display.\n\n## Gameplay Video\n\u003ca href=\"https://youtu.be/GZt-jX4DvVc\"\u003e\n  \u003cimg src=\"images/img.jpg\" alt=\"Dino Game Screenshot\" height=\"300\"/\u003e\n\u003c/a\u003e\n\n---\n\n## Hardware Required\n\nTo build this project, you will need the following components:\n\n| Component                       | Quantity | Notes                                      |\n| ------------------------------- | :------: | ------------------------------------------ |\n| ESP32 Development Board         |    1     | Any common ESP32 board will work.          |\n| MPU6050 Gyro/Accelerometer      |    1     | The core motion sensor.                    |\n| 128x64 I2C OLED Display         |    1     | SSD1306 driver is most common.             |\n| Passive or Active Buzzer        |    1     | For sound effects.                         |\n| Breadboard                      |    1     | For prototyping.                           |\n| Jumper Wires                    | Several  | To connect the components.                 |\n\n---\n\n## Software \u0026 Libraries\n\nThis project is built using the Arduino IDE.\n\n1.  **Install Libraries:** Install the following libraries through the Arduino IDE's Library Manager (**Tools -\u003e Manage Libraries...**):\n    - `Adafruit GFX Library` by Adafruit\n    - `Adafruit SSD1306` by Adafruit\n    - `Adafruit MPU6050` by Adafruit\n      - *(When installing, the IDE will ask to install dependencies like `Adafruit Unified Sensor`. Click \"Install all\".)*\n\n---\n\n## Wiring Diagram\n\nConnect the components according to the diagram below. All components should be powered by the **3.3V** output from the ESP32.\n\n| Component Pin     | Connect to ESP32 Pin |\n| ----------------- | -------------------- |\n| **MPU6050 VCC** | `3V3`                |\n| **MPU6050 GND** | `GND`                |\n| **MPU6050 SCL** | `GPIO 22`            |\n| **MPU6050 SDA** | `GPIO 21`            |\n| **OLED VCC** | `3V3`                |\n| **OLED GND** | `GND`                |\n| **OLED SCL** | `GPIO 22` (Shared)   |\n| **OLED SDA** | `GPIO 21` (Shared)   |\n| **Buzzer (+) leg**| `GPIO 23`            |\n| **Buzzer (-) leg**| `GND`                |\n\n*Note: The OLED and MPU6050 share the same I2C bus (`SDA`/`SCL` pins), which is perfectly fine as they have different I2C addresses.*\n\n---\n\n## How to Play\n\n1.  **Upload the Code:** Open the `maze-game.ino` file in the Arduino IDE, select your ESP32 board and COM port, and click Upload.\n2.  **Start the Game:** Hold the device flat to begin. A start-up sound will play.\n\n---\n\n## Contributing\n\nContributions are welcome! If you have ideas for new features, bug fixes, or improvements, feel free to:\n\n1.  **Fork the repository.**\n2.  **Create a new branch** (`git checkout -b feature/your-new-feature`).\n3.  **Make your changes.**\n4.  **Commit your changes** (`git commit -am 'Add some feature'`).\n5.  **Push to the branch** (`git push origin feature/your-new-feature`).\n6.  **Create a new Pull Request.**\n\n---\n\n## License\n\nThis project is licensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaherfattahi%2Fesp32-maze-game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftaherfattahi%2Fesp32-maze-game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaherfattahi%2Fesp32-maze-game/lists"}