{"id":15893699,"url":"https://github.com/pguyot/atomvm_esp_adf","last_synced_at":"2026-02-18T16:31:28.165Z","repository":{"id":238657537,"uuid":"797132125","full_name":"pguyot/atomvm_esp_adf","owner":"pguyot","description":"AtomVM driver for Espressif Audio Development Framework (ESP-ADF)","archived":false,"fork":false,"pushed_at":"2024-09-15T16:15:27.000Z","size":292,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-17T17:04:01.730Z","etag":null,"topics":["atomvm","audio","esp32"],"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/pguyot.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}},"created_at":"2024-05-07T08:56:20.000Z","updated_at":"2024-09-15T16:16:16.000Z","dependencies_parsed_at":"2024-05-10T11:22:57.487Z","dependency_job_id":"47a22f1e-b5a3-4e6e-8ae0-19851cc55ada","html_url":"https://github.com/pguyot/atomvm_esp_adf","commit_stats":null,"previous_names":["pguyot/atomvm_esp_adf"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pguyot/atomvm_esp_adf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pguyot%2Fatomvm_esp_adf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pguyot%2Fatomvm_esp_adf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pguyot%2Fatomvm_esp_adf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pguyot%2Fatomvm_esp_adf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pguyot","download_url":"https://codeload.github.com/pguyot/atomvm_esp_adf/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pguyot%2Fatomvm_esp_adf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279096800,"owners_count":26102656,"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","status":"online","status_checked_at":"2025-10-15T02:00:07.814Z","response_time":56,"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":["atomvm","audio","esp32"],"created_at":"2024-10-06T08:12:48.704Z","updated_at":"2025-10-15T17:41:56.377Z","avatar_url":"https://github.com/pguyot.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AtomVM driver for Espressif Audio Development Framework\n\nThis component ports [Espressif Audio Development Framework](https://github.com/espressif/esp-adf)\nto AtomVM, thus enabling audio processing to esp32-based systems powered by\nAtomVM.\n\n[![Build](https://github.com/pguyot/atomvm_esp_adf/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/pguyot/atomvm_esp_adf/actions/workflows/build.yml)\n\n## Installation\n\n1. Clone this repository into atomvm/src/platforms/esp32/components with\nthe required submodules. You can clone with recursive submodules but most\nsubmodules are not used and the following commands will save disk space.\n\n```bash\ncd AtomVM/src/platforms/esp32/components/\ngit clone https://github.com/pguyot/atomvm_esp_adf.git\ncd atomvm_esp_adf/\ngit submodule update --init components/esp-adf\ncd components/esp-adf/\ngit submodule update --init components/esp-adf-libs/\n```\n\n2. Build and flash AtomVM\n\nEspressif Audio Development Framework requires `CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY`\nwhich you can set using the configuration menu or editing sdkconfig file.\n\nYou can use a command sequence such as: (port name depends on OS)\n\n```bash\ncd AtomVM/src/platforms/esp32/\nidf.py set-target esp32\necho CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY=y \u003e\u003e sdkconfig\nidf.py build\nidf.py -p /dev/cu.usbmodem14401 flash\n```\n\nYou will also need to flash AtomVM core libraries.\n\nAlternatively, you can flash an image generated by the [CI of this project](https://github.com/pguyot/atomvm_esp_adf/actions/workflows/build.yml).\n\n3. Custom builds\n\nYou can finely select the ESP ADF elements you need using the configuration menu, under `Component config` -\u003e `ATOMVM ESP-ADF Configuration`).\n\nDefault builds include:\n- audio element driver\n- audio pipeline\n- i2s output stream\n- MP3 and AAC decoders\n- resample filter\n\nEnabling all available decoders currently yields an image that is too large for AtomVM's default partition map.\n\n```bash\ncd AtomVM/src/platforms/esp32/\nidf.py menuconfig\nidf.py build\n```\n\nDo not forget FreeRTOS `configENABLE_BACKWARD_COMPATIBILITY` (under `Component config` -\u003e `FreeRTOS` -\u003e `Kernel`).\n\n## Usage\n\nThis project defines `esp_adf_*` modules.\n\nYou can refer to [examples](examples/) or [API documentation](https://pguyot.github.io/atomvm_esp_adf/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpguyot%2Fatomvm_esp_adf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpguyot%2Fatomvm_esp_adf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpguyot%2Fatomvm_esp_adf/lists"}