CircuitPython

assortment of electronics boards against a blue and pink snowy backdrop

CircuitPython is Adafruit's branch of MicroPython designed to simplify experimentation and education on low-cost microcontrollers. It makes it easier than ever to get prototyping by requiring no upfront desktop software downloads. With CircuitPython you can write clean and simple Python code to control hardware instead of having to use complex low-level languages like C or C++ (what Arduino uses for programming). 

It is great for beginners! With CircuitPython you can write clean and simple Python code to control hardware instead of having to use complex low-level languages like Arduino, C or C++. The simplicity of the Python programming language makes CircuitPython an excellent choice for beginners who are new to programming and hardware. 

Experts love it too! Skip the annoyances of long-compile cycles, pointers and memory management - get right to the programming you want to do. CircuitPython is also quite full-featured and supports all of Python's syntax (Python version 3.4) and implements some useful parts of the Python standard library so even seasoned Python veterans will find CircuitPython familiar and fun to use. 

Visit the CircuitPython section of the Adafruit Learning System to learn more about using this awesome coding language and visit our #circuitpython channel on Discord to start chatting with the CircuitPython community.

Kits

Boards

FeatherWings

Sensors

Compatibles

Projects in the Adafruit Learning System

Make faster and easier than ever with MakeCode, code.org CSD, CircuitPython or Arduino!
The best part of CircuitPython is the community that comes with it.
New to CircuitPython? This is the place to start.
The next step in learning CircuitPython.
How to install the UF2 bootloader and CircuitPython on a variety of SAMD21 microcontroller boards.
Make and learn with this course on MakeCode and Circuit Playground Express