{"id":15170126,"url":"https://github.com/potier97/micropython-config","last_synced_at":"2026-01-23T07:07:08.772Z","repository":{"id":248195068,"uuid":"828009283","full_name":"potier97/micropython-config","owner":"potier97","description":"First config esp32 repo with micropython  ","archived":false,"fork":false,"pushed_at":"2024-08-11T21:20:18.000Z","size":6286,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-13T17:39:53.562Z","etag":null,"topics":["blink","devices","esp","esp32","espressif","iot","micropython"],"latest_commit_sha":null,"homepage":"","language":"Python","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/potier97.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-07-12T21:56:29.000Z","updated_at":"2024-08-11T21:20:20.000Z","dependencies_parsed_at":"2024-07-13T01:31:57.884Z","dependency_job_id":"3c936ab6-51cd-4f79-b8a0-e7158ddb7b25","html_url":"https://github.com/potier97/micropython-config","commit_stats":null,"previous_names":["potier97/micropython-config"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/potier97/micropython-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potier97%2Fmicropython-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potier97%2Fmicropython-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potier97%2Fmicropython-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potier97%2Fmicropython-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/potier97","download_url":"https://codeload.github.com/potier97/micropython-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potier97%2Fmicropython-config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28682307,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-23T05:48:07.525Z","status":"ssl_error","status_checked_at":"2026-01-23T05:48:07.129Z","response_time":59,"last_error":"SSL_read: 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":["blink","devices","esp","esp32","espressif","iot","micropython"],"created_at":"2024-09-27T08:00:41.228Z","updated_at":"2026-01-23T07:07:08.759Z","avatar_url":"https://github.com/potier97.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-6.png\" width=\"300\" alt=\"NPA Logo\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n# Micropython config with Esp32 y Esp8266 Project\n\nEste proyecto está diseñado para configurar de manera rápida y sencilla un ESP32 o ESP8266 con MicroPython.\n\n## Requisitos\n\n- Python 3\n- `esptool` para flashear el firmware de MicroPython\n- Firmware de MicroPython para ESP32\n\n## Instalar\n\n1. Clonar el repositorio:\n    ```sh\n    git clone https://github.com/usuario/mi_proyecto.git\n    cd mi_proyecto\n    ```\n\n2. Crear y activar el entorno virtual:\n    ```sh\n    python -m venv env\n    # En Windows\n    .\\env\\Scripts\\activate\n    # En macOS y Linux\n    source env/bin/activate\n    ```\n\n3. Instalar dependencias:\n    ```sh\n    pip install -r requirements.txt\n    ```\n\n\n## Detectar Puertos\n\nPara detectar los puertos disponibles en el sistema, se puede ejecutar el siguiente comando:\n\n```sh\npy ./tools/ports.py\n```\n\nAl ejecutar el comando, se mostrará una lista con los puertos disponibles en el sistema. Esto se hace utilizando la libreria `pyserial` de Python.\n\nEjemplo de salida:\n\n```\nPuertos disponibles:\nCOM3: Silicon Labs CP210x USB to UART Bridge (COM3)\n```\n\n## Descargar Firmware\n\nPara descargar el firmware de MicroPython visitar el siguiente enlace oficial de [Micropython](https://micropython.org/download/?port=esp32), para este proyecto nos enfocaremos en el ESP32 con la versión WROOM.\n\n\u003cbr\u003e\n\u003cp align=\"center\" \u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\n  \u003cimg src=\"./assets/image.png\" width=\"300\" alt=\"image\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\nY para para el ESP8266 visitar el siguiente enlace oficial de [Micropython](https://micropython.org/download/?port=esp8266), para este proyecto nos enfocaremos en el ESP8266 con la versión `esp8266-20240602-v1.23.0.bin`.\n\n\u003cbr\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-7.png\" width=\"300\" alt=\"image\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n\n\n\u003e En este proyecto descargamos el  Firmware más reciente hasta la fecha de este tutorial `12/08/2024`, por lo cual se descargó el archivo `esp32-idf4-20200812-v1.12.bin`,  y este se encuentra ubicado en la carpeta `firmware` del proyecto. \n\n\n## Borrar Memoria Flash\n\nPara borrar la memoria flash del ESP32 o ESP8266, se puede ejecutar el siguiente comando:\n\n```sh\npy ./tools/erase_flash.py\n```\n\n\u003e No hay necesidad de indicar el puerto dado que el script detecta automáticamente los puertos disponibles en el sistema, ni el tipo de board Esp32 o Esp8266, pero solo se puede conectar estos dos tipos de board y que esté conectado al puerto USB de la computadora.\n\nPuede que al ejecutar el comando, no se limpie la memoria flash de la Board automaticamente, por lo que puede aparecer un mensaje de conección como:\n\n```sh\nConnecting...................\n```\n\nPor lo que deberá presionar el botón de `BOOT` del Esp32 o de la Esp8266 para que se limpie la memoria flash.\t\n \n\u003cbr\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-1.png\" width=\"300\" alt=\"image-1\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n \u003e El mensaje anterior indica que su EPS32 esta no está en modo `Flash`\n\n\n## Flashear Firmware\n\nPara flashear el firmware de MicroPython de la board, se puede ejecutar el siguiente comando:\n\n```sh\npy ./tools/flash.py  [--erase]\n```\n\nEjemplo:\n\n```sh\npy ./tools/flash.py --erase\n```\n\n\u003e `--erase` es un argumento opcional que se puede utilizar para borrar la memoria flash antes de flashear el firmware.\n\n**Nota:** Recuerde que el firmware de MicroPython debe estar en la carpeta `firmware` del proyecto y para este proyecto se descargó el archivo `ESP32_GENERIC-20240602-v1.23.0.bin`. Y si necesita otra versión del firmware, puede descargarlo del siguiente enlace [Micropython](https://micropython.org/download/ESP32_GENERIC/).\n\n\n\u003e No hay necesidad de indicar el puerto dado que el script detecta automáticamente los puertos disponibles en el sistema. Pero si es necesario que el Esp32/Esp8266 esté conectado al puerto USB de la computadora. Además puede que la Esp32/Esp8266 no este en modo `Flash`, por lo que deberá presionar el botón de `BOOT` del Esp32/Esp8266 para que se limpie la memoria flash.\n\n## RELP\n\nPara conectarse al REPL del Esp32/Esp8266, se connecta por medio de `PUTTY`debido a que este proyecto se ejecuta en un sistema operativo Windows. Debe validar el puerto en el que se encuentra conectado el Esp32/Esp8266, y luego si hacer una conexión serial con el puerto y una velocidad de 115200 baudios.\n\n**Detectar Puertos**\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-2.png\"  alt=\"image-2\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n**Conexión Serial con Putty**\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-3.png\" width=\"300\" alt=\"image-3\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n**Ejemplo de Conexión**\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-4.png\" width=\"300\" alt=\"image-4\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n**Dispositivo**\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"http://nipoanz.com/\" target=\"blank\"\u003e\u003cimg src=\"./assets/image-5.png\" width=\"300\" alt=\"image-5\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n\u003e Vea este video para más información [Video](https://www.youtube.com/watch?v=ws08aYb6EPI\u0026t=241s\u0026ab_channel=RealPython) del Canal de Youtube de RealPython.\n\n## Ampy\n\nPara transferir archivos al Esp32/Esp8266, se puede utilizar `ampy`. Para instalar `ampy`, [documentación](https://learn.adafruit.com/micropython-basics-load-files-and-run-code/install-ampy), para este proyecto se instala con el siguiente comando:\n\n```sh\npip install adafruit-ampy\n```\n\n### Transferir Archivos\nPara transferir un archivo al Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e   put  \u003carchivo-origen\u003e \u003carchivo-destino\u003e\n```\n\nEjemplo \n```sh\nampy --port COM3 --baud 115200 --delay 0.5 put .\\scripts\\main.py  /main.py\n```\n### Ejectuar Archivos en el Esp32/Esp8266\n\nPara ejecutar un archivo en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e run  --no-output \u003carchivo\u003e\n```\n\n\u003e El argumento `--no-output` se utiliza para ejecutar el archivo en la Esp32/Esp8266\n\n### Listar Archivos en el Esp32/Esp8266\n\nPara listar los archivos en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e ls\n```\n\n### Eliminar Archivos en el Esp32/Esp8266\n\nPara eliminar un archivo en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e rm \u003carchivo\u003e\n```\n\n\n### Obtener contenido de un archivo en el Esp32/Esp8266\n\nPara obtener el contenido de un archivo en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e get \u003carchivo\u003e\n```\n\n### Crear Directorio en el Esp32/Esp8266\n\nPara crear un directorio en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e mkdir \u003cdirectorio\u003e\n```\n\n\n### Copiar Directorio en el Esp32/Esp8266\n\nPara copiar un directorio en el Esp32/Esp8266, se puede ejecutar el siguiente comando:\n\n```sh\n ampy --port \u003cpuerto\u003e --baud \u003cvelocidad\u003e --delay \u003ctiempo-en-segundos\u003e put adafruit_driver \u003cdirectorio\u003e\n```\n\n\n\u003e Para obtener más información sobre `ampy` puede visitar la documentación oficial en el siguiente enlace [Documentación](https://cdn-learn.adafruit.com/downloads/pdf/micropython-basics-load-files-and-run-code.pdf).\n\n\n## Simulación Circuitos\n\nPuede hacer simulaciones de circuitos con el Esp32/Esp8266 en la plataforma de [WORKI](https://wokwi.com/projects/359801682833812481).\n\n\n## Tutorial\n\nPuede guiarse con el siguiente tutorial para configurar su Esp32/Esp8266 con MicroPython [Tutorial](https://www.youtube.com/watch?v=ck5PTWplKIc\u0026ab_channel=Sam) del Canal de Youtube de Sam.\n\n## Documentación Micropython\n\nPuede ver la documentación oficial de MicroPython en el siguiente enlace [Documentación](https://github.com/micropython/micropython).\n\n## Contribuir\n\n1. Hacer un fork del repositorio.\n2. Crear una nueva rama (`git checkout -b feature-nueva-funcionalidad`).\n3. Hacer commit de los cambios (`git commit -am 'Agregar nueva funcionalidad'`).\n4. Hacer push a la rama (`git push origin feature-nueva-funcionalidad`).\n5. Crear un Pull Request.\n\n## Licencia\n\nEste proyecto está bajo la Licencia MIT.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotier97%2Fmicropython-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpotier97%2Fmicropython-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotier97%2Fmicropython-config/lists"}