CircuitPython is Adafruit's open-source branch of MicroPython, an open-source Python programming language interpreter that runs on embedded development boards (adding hardware support to Python). Compared to MicroPython, CircuitPython is slightly simpler, particularly with file behavior (more differences). Additionally, there are no upfront desktop downloads, and code can be edited in any text editor once the board has been connected to a computer.
Programming Language: CircuitPython to Python -- Arduino C to C
Code Editor: Mu editor -- Arduino IDE
Board: Metro M0 Express -- Arduino Zero
Main Objective: Introduce students to using Python to control hardware and help students get started with hands-on project building experience.
Subgoal 1: Introduce students to Python, a widely used programming language in industry.
Subgoal 2: Teach students how to build and control basic circuits with a variety of sensors and actuators.
Subgoal 3: Introduce students to open source community and new fast-growing technology so that they can learn how to use online resources to expand on their skills.
Subgoal 4: Introduce students to different boards (other than Arduino) so that they can explore microcontrollers and embedded systems in a different way (a higher-level overview of connecting hardware and software, rather than lower-level C).
Subgoal 5: Get students excited about STEM and project building!
Katie Hsieh: Computer Engineering (UCSD)
Farnia Nafarifard: Computer Engineering (UCSD)
Lars Vlahakis: Computer Engineering (UCSD)
Nikhil Dange: Computer Engineering (UCSD)
Prof. Karcher Morris: Electrical and Computer Engineering (UCSD)