# Instalar Micropython

<p class="callout info"><span style="color: rgb(22, 145, 121);">**Conceptos previos:**</span>  
- Los **lenguajes de alto nivel**, es decir el **código**, que es entendible por los humanos (C++, Java, Python...) son textos que se tienen que traducir al lenguaje entendible por el procesador **MCU** (Micro Controler Unit). Este **lenguaje de bajo nivel** que está escrito en **binario** es difícil de entender para los humanos  
- El **Compilador** es un programa que **Interpreta** este texto de lenguaje de alto nivel, y lo convierte en lenguaje de bajo nivel  
- El Arduino Alvik se puede programar con Arduino IDE como con Micropytno, los dos son de alto nivel</p>

<p class="callout success">Tanto Micropython como Arduino IDE son lenguajes de tipo CODIGO por lo tanto sólo se aconseja EN SECUNDARIA  
Cuando permita lenguaje tipo BLOQUES como Scratch, ya será adecuado para PRIMARIA</p>

##### <span style="color: rgb(22, 145, 121);">**¿Dónde se compila Micropython?**</span>

Como puedes ver [en este vídeo en 21:20 ](https://youtu.be/R51tf66es9w?t=1286)Python se compila **dentro del microcontrolador** es decir, dentro del ESP32. A diferencia con otros lenguajes, como el C++, el ordenador tiene el compilador, y se lo da ya en binario.  
[![2024-07-04 18_44_27-(1) Exploring the Arduino Nano ESP32 _ MicroPython & IoT Cloud - YouTube.png](https://libros.catedu.es/uploads/images/gallery/2024-07/scaled-1680-/2024-07-04-18-44-27-1-exploring-the-arduino-nano-esp32-micropython-iot-cloud-youtube.png)](https://libros.catedu.es/uploads/images/gallery/2024-07/2024-07-04-18-44-27-1-exploring-the-arduino-nano-esp32-micropython-iot-cloud-youtube.png)  
<span style="color: rgb(0, 0, 0);">[Fuente vídeo Exploring the Arduino Nano ESP32 | MicroPython &amp; IoT](https://youtu.be/R51tf66es9w?t=1512)</span>

##### <span style="color: rgb(22, 145, 121);">**¿Y a mi qué más me da?**</span>

Pues sí que importa....

<p class="callout danger">Si programas ESP32 con Arduino IDE o Arduino Cloud o con Steamakersblock (que está basado en C++) **te has cargado el compilador Python que has puesto en** ["Actualizar firmware"](https://libros.catedu.es/books/arduino-alvik/page/preparar-alvik-para-micropython-actualizar-el-firmware-de-alvik) del ESP32 luego si quieres programar en Python, tienes que volver a  ["Actualizar firmware"](https://libros.catedu.es/books/arduino-alvik/page/preparar-alvik-para-micropython-actualizar-el-firmware-de-alvik)   
O sea, si pasas de \[ArduiIDE\] o \[Arduino Cloud\] o \[Steamakersblok\] a Micropytho **tienes que volver a instalar el compilador Micropython**</p>

##### <span style="color: rgb(22, 145, 121);">**¿Y con esto ya puedo crear mis programas con Micropython?**</span>

<span style="color: rgb(0, 0, 0);">No, con esto tienes el compilador interpretador dentro del chip, pero necesitas un editor en tu PC y que se comunique con el Micropython del chip</span>

##### <span style="color: rgb(22, 145, 121);">**Arduino Lab for Micropython**</span>

Tal y como dice la página [https://docs.arduino.cc/micropython/](https://docs.arduino.cc/micropython/) hay dos editores para cargar MicroPython en el Arduino Alvik

- **Arduino Lab for Micropython** [https://labs.arduino.cc/en/labs/micropython](https://labs.arduino.cc/en/labs/micropython)
- **OpenMW** [https://openmv.io/pages/download](https://openmv.io/pages/download)

Nosotros en este curso elegimos **Arduino Lab for Micropython** por su sencillez y adaptación al Arduino Alvik

Tal y como dice aquí **ES UN PROGRAMA PORTABLE**, es decir, no hay que instalarlo, simplemente descomprimir y ejecutar

[![2024-07-04 09_56_30-Arduino Labs.png](https://libros.catedu.es/uploads/images/gallery/2024-07/scaled-1680-/2024-07-04-09-56-30-arduino-labs.png)](https://libros.catedu.es/uploads/images/gallery/2024-07/2024-07-04-09-56-30-arduino-labs.png)

<p class="callout info">Ejecutamos el programa en el lugar donde lo hemos descomprimido (o donde quieras llevarte la carpeta) :</p>

[![2024-07-04 10_00_12-Arduino.Lab.for.MicroPython-win_x64.png](https://libros.catedu.es/uploads/images/gallery/2024-07/scaled-1680-/2024-07-04-10-00-12-arduino-lab-for-micropython-win-x64.png)](https://libros.catedu.es/uploads/images/gallery/2024-07/2024-07-04-10-00-12-arduino-lab-for-micropython-win-x64.png)

<p class="callout warning">{{@13342#bkmrk-%7B%7B%4012238%23bkmrk-%257b%257}}</p>

Al ejecutar el programa, vemos:

1. Botón para conectar la placa
2. Ejecutar o para el programa
3. Gestor de fichero
4. Donde escribimos el programa
5. Ventana de estado

[![IDEOverview.png](https://libros.catedu.es/uploads/images/gallery/2025-03/scaled-1680-/ideoverview.png)](https://libros.catedu.es/uploads/images/gallery/2025-03/ideoverview.png)  
*Licencia CC-BYSA Fuente [https://docs.arduino.cc/micropython/environment/code-editor/](https://docs.arduino.cc/micropython/environment/code-editor/)*

En el gestor de ficheros encontramos

1. **Los archivos que hay en la placa**: Puedes ver y administrar scripts o datos guardados directamente en la placa.
2. **Los archivos que hay en tu equipo**: lo que le permite seleccionar y administrar archivos para cargar o descargar.
3. D**escargar/Subir archivos**: Utiliza esta opción para transferir archivos entre su equipo y la placa. Puedea cargar nuevos scripts o descargar registros de datos de su placa.
4. **Crear archivo/carpeta:** Esta opción le permite crear nuevos archivos o carpetas directamente en la placa o en el directorio de su proyecto, lo que facilita la organización de su código y recursos.

[![IDEFileManager.png](https://libros.catedu.es/uploads/images/gallery/2025-03/scaled-1680-/idefilemanager.png)](https://libros.catedu.es/uploads/images/gallery/2025-03/idefilemanager.png)*Licencia CC-BYSA Fuente [https://docs.arduino.cc/micropython/environment/code-editor/](https://docs.arduino.cc/micropython/environment/code-editor/)*