{"id":23385509,"url":"https://github.com/tratteo/esp32_pin_driver","last_synced_at":"2026-04-30T09:38:13.608Z","repository":{"id":261332096,"uuid":"881498465","full_name":"tratteo/esp32_pin_driver","owner":"tratteo","description":"A simple universal pin driver for ESP32 Dev boards","archived":false,"fork":false,"pushed_at":"2025-11-05T12:11:37.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-05T14:17:32.197Z","etag":null,"topics":["driver","esp32","iot"],"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/tratteo.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":"2024-10-31T17:35:20.000Z","updated_at":"2025-11-05T12:11:40.000Z","dependencies_parsed_at":"2024-11-06T01:20:56.017Z","dependency_job_id":"c6024d8b-dc76-4bc7-93b2-5dda62a28524","html_url":"https://github.com/tratteo/esp32_pin_driver","commit_stats":null,"previous_names":["tratteo/esp32_pin_driver"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tratteo/esp32_pin_driver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tratteo%2Fesp32_pin_driver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tratteo%2Fesp32_pin_driver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tratteo%2Fesp32_pin_driver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tratteo%2Fesp32_pin_driver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tratteo","download_url":"https://codeload.github.com/tratteo/esp32_pin_driver/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tratteo%2Fesp32_pin_driver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32460781,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["driver","esp32","iot"],"created_at":"2024-12-22T00:18:44.893Z","updated_at":"2026-04-30T09:38:13.589Z","avatar_url":"https://github.com/tratteo.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## ESP32 Universal pin driver 🌍\n\n\u003e [!IMPORTANT]\n\u003e Currently supporting only Serial (USB) communication.\n\n### ⚡ Commands\n\n```c\noperation:mode:pin:value?\n```\n\n**Operation** `[write, read]`\n\n**Mode** `[digital, analog]`\n\n**Pin** `uint8_t`  \nSafe GPIOs `[4, 13, 14, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33, 34, 35, 36, 39]`.  \nPin mapping [here](include/esp32_gpio_mapping.cpp).\n\n**Value** `int`  \nValue is automatically clamped to 8 bit:`[0, 255]`.\n\n\u003e [!NOTE]\n\u003e In digital write, pin is set to high if the value is greater than 0.\n\nExamples:\n\n```c\nwrite:digital:13:0\nwrite:analog:25:128\n\nread:digital:19\nread:analog:33\n```\n\nThe ESP32 board available pins depend on the operation and mode used. Check out [esp32_gpio_mapping.cpp](include/esp32_gpio_mapping.cpp) for pin availability. For detailed information, check out the [ESP32 Pinout](https://lastminuteengineers.com/esp32-pinout-reference/).\n\n### 🧪 Testing\n\nTo test program using the [Python utility](serial_test.py), install `pyserial`:\n\n```sh\npip install pyserial\n```\n\nThe run the script:\n\n```sh\npython serial_test.py\n```\n\nTo edit the Serial port, edit the following line in the script:\n\n```py\nser = serial.Serial(\"\u003cyour_port\", 115200)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftratteo%2Fesp32_pin_driver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftratteo%2Fesp32_pin_driver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftratteo%2Fesp32_pin_driver/lists"}