{"id":25209103,"url":"https://github.com/chinmay-esp/esp32-i2c-master","last_synced_at":"2026-05-02T06:44:12.031Z","repository":{"id":276604519,"uuid":"929758370","full_name":"Chinmay-ESP/ESP32-I2C-Master","owner":"Chinmay-ESP","description":"This repository contains an ESP32-based I2C scanner that detects and prints the addresses of connected I2C devices. The project initializes the I2C bus, scans available addresses, and outputs detected device addresses to the terminal. Ideal for debugging and verifying I2C connections. ","archived":false,"fork":false,"pushed_at":"2025-02-09T10:37:05.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T11:27:06.607Z","etag":null,"topics":["cpp","esp-idf","esp32"],"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/Chinmay-ESP.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":"2025-02-09T10:30:08.000Z","updated_at":"2025-02-09T10:38:49.000Z","dependencies_parsed_at":"2025-02-09T11:37:11.463Z","dependency_job_id":null,"html_url":"https://github.com/Chinmay-ESP/ESP32-I2C-Master","commit_stats":null,"previous_names":["chinmay-esp/esp32-i2c-master"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chinmay-ESP%2FESP32-I2C-Master","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chinmay-ESP%2FESP32-I2C-Master/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chinmay-ESP%2FESP32-I2C-Master/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chinmay-ESP%2FESP32-I2C-Master/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Chinmay-ESP","download_url":"https://codeload.github.com/Chinmay-ESP/ESP32-I2C-Master/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247289805,"owners_count":20914541,"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":["cpp","esp-idf","esp32"],"created_at":"2025-02-10T13:15:19.138Z","updated_at":"2026-05-02T06:44:11.960Z","avatar_url":"https://github.com/Chinmay-ESP.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# I2C Address Read for I2C Devices (ESP32-IDF)\n\n## Overview\nThis project is designed to scan and detect I2C devices connected to an ESP32 microcontroller. It initializes the I2C bus, scans for available I2C addresses, and displays the detected device addresses in the terminal. This is useful for debugging and verifying connections in I2C-based embedded systems.\n\n## Features\n- **ESP32 I2C Bus Initialization**: Configures GPIO21 (SDA) and GPIO22 (SCL) for I2C communication.\n- **Device Detection**: Scans for I2C devices on the bus and prints their addresses.\n- **FreeRTOS Task Implementation**: Uses FreeRTOS to continuously scan and detect devices asynchronously.\n- **ESP-IDF Integration**: Fully compatible with ESP-IDF framework.\n\n## Hardware Requirements\n- ESP32 Development Board\n- I2C-based Sensors or Modules (e.g., OLED Display, I2C Device etc.)\n- Jumper Wires for Connections\n\n## Software Requirements\n- ESP-IDF (\u003e= v5.2)\n- VS Code or Terminal for Development\n- Python 3.x (for ESP-IDF setup)\n\n## Setup \u0026 Installation\n### 1. Clone the Repository\n```sh\ngit clone https://github.com/Chinmay-ESP/ESP32-I2C-Master.git\ncd ESP32-I2C-Master\n```\n\n### 2. Set Up ESP-IDF\nFollow the [ESP-IDF Getting Started Guide](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/) to set up your ESP32 development environment.\n\n### 3. Build \u0026 Flash the Project\n```sh\nidf.py set-target esp32\nidf.py build\nidf.py flash -p /dev/ttyUSB0 -b 115200\n```\n\n### 4. Monitor Serial Output\n```sh\nidf.py monitor\n```\n\n## Usage\n1. Connect your I2C devices to the ESP32:\n   - **SDA**: GPIO 21\n   - **SCL**: GPIO 22\n2. Flash the firmware to your ESP32.\n3. Open the serial monitor to view detected I2C addresses.\n4. The output should display detected device addresses like:\n   ```sh\n   I2C Scanner found I2C device at: 0x3C\n   I2C Scanner found I2C device at: 0x68\n   I2C_Scanner complete\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchinmay-esp%2Fesp32-i2c-master","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchinmay-esp%2Fesp32-i2c-master","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchinmay-esp%2Fesp32-i2c-master/lists"}