Estas son algunas de las preguntas comunes sobre CircuitPython y microcontroladoras con CircuitPython

Mientras continuamos desarrollando CircuitPython y crear nuevas versiones de producto, dejaremos de dar mantenimiento a versiones anteriores. Visite https://circuitpython.org/downloads para descargar la última versión de CircuitPython para tu tarjeta. Usted debe descargar el conjunto de librerías para CircuitPython (o "CircuitPython Library Bundle") para la versión apropiada de CircuitPython. Favor actualice CircuitPython y visite https://circuitpython.org/libraries para descargas la última versión del Conjunto de Librerías.

He venido utilizando CircuitPython 3.x o 2.x, ¿donde puedo encontrar librerías compatibles?

Ya no estamos compilando o dando mantenimiento a CircuitPython 2.x y 3.x. Lo alentamos a actualizar CircuitPython a la última versión y a utilizar una versión actualizada de las librerías. Sin embargo, puedes encontrar la última versión disponible para 2.x compilada aquí () y la última para la versión 3.x aquí.

¿Puedo usar los ESP8266 o las ESP32 con CircuitPython? ¿Por qué no?

Estamos quitando capacidades para ESP8266 desde 4.x - ¡Para más información favor lea aquí!

https://learn.adafruit.com/welcome-to-circuitpython/circuitpython-for-esp8266

¿Existen capacidades de asyncio en CircuitPython?

Nosotros no tenemos capacidades de asyncio en CircuitPython en este momento.

Mi LED Neopixel/DotStar de colores RGB parpadea en colores extraños. ¿Esto que significa?

El LED indicador de estado te puede decir que está pasando con tu tarjeta CircuitPython. ¡Lea aquí lo que significan estos colores!

¿Que es MemoryError?

Los errores de solicitud de memoria suceden cuando tratamos de guardar mucho en la tarjeta. Las tarjetas con microcontroladoras para CircuitPython tiene una cantidad limitada de memoria disponible. Usted puede tener como 250 líneas de código en tarjetas M0 Express. Si tratas de hacerle import muchas librerías, una combinación de librerías largas, o correr un código con muchas líneas de código, si programa va a fallar en ejecutar y vas a recibir un mensaje MemoryError en la consola serial (REPL).

¿Que hago cuando recibo un MemoryError?

Trata reiniciando tu tarjeta. Cada vez que reinicias la tarjeta, ella tratará de acomodar la memoria. Mientras es poco probable que resuelta tu error, es un paso sencillo que vale la pena probar.

Asegúrate de usar las versiones .mpy de las librerías. Todas las librerías de CircuitPython están disponibles en el conjunto en formato .mpy el cual consume menos memoria que el formato .py. Asegúrate de estar usando la última versión de la librería para tu versión de CircuitPython.

Si esto no resuelve tu problema, trata recortando tu código. Recortar comentarios, limpiar código innecesario o cualquier otra limpieza que puedas realizar para acortar tu código. Si estás utilizando muchas funciones, trata de moverlas a una librería separada, crear un .mpy de dicha librería e importándola en tu código.

Puedes transformar tu archivo entero a .mpy y hacer import en tu archivo code.py. Esto significa que no vas a poder editar tu código en vivo en la tarjeta,, pero te puede ahorrar espacio.

¿Puede el orden de mis import, afectar la memoria?

Si puede, dado que la memoria se fragmenta de diferente forma, dependiendo de el orden de solicitud y del tamaño de los objetos. Cargar archivos .mpy utiliza menos memoria por lo que se recomienda realizar esta conversión para archivos que no estés editando.

¿Como puedo crear mis propios archivos .mpy?

Puedes realizar tus propias versiones de archivos .mpy con mpy-cross.

Puedes descargar la versión de mpy-cross para CircuitPython 2.x para tu sistema operativo desde la página de Versiones de CircuitPython bajo la última versión para 2.x.

Usted puede compilar mpy-cross para CircuitPython 3.x, clonando el repositorio de GitHub de CircuitPython y ejecutando make dentro del directorio circuitpython/mpy-cross/. Ahora ejecutas ./mpy-cross ruta/a/foo.py para crear foo.mpy en el mismo directorio que el archivo original.

¿Como reviso cuanta memoria tengo disponible?

import gc
gc.mem_free()

Esto te dará el número de bytes disponibles para utilizarse.

¿CircuitPython maneja interrupciones?

No. CircuitPython no trabaja por el momento con interrupciones. No tenemos un estimado para cuando se podrían incluir.

¿Las Feather M0 trabajan con WINC1500?

No, la librería para WINC1500 no cabe en la memoria de flash de los chips M0.

¿Pueden chips AVR como los ATMega328 o ATMega2560 correr CircuitPython?

No.

This guide was first published on Mar 11, 2020. It was last updated on Mar 11, 2020.

This page (Preguntas frecuentes) was last updated on Nov 06, 2020.