Learning Python with Hardware using CircuitPython
Anwesha Sarkar (~anwesha) |
CircuitPython is a fork of MicroPython, keeping the education in mind. It helps to learn programming on small hardware boards. In this workshop we will use Adafruit Circuit Playground Express. I will be able to accommodate 20 attendees at max as I have only 20 pieces of the required. We are going to cover the following topics/points in the workshop :
Know your Circuit Playground Express
In this introductory space we will be learning what is there in your Circuit Playground Express familiar with what the board contents like LEDs, Input and Output pins etc.
Built-Ins of CircuitPython
CircuitPython comes in with certain built ins which is there in Python as well. We will go through such built ins.
Digital Inputs and Outputs
We will be learning to manage digital inputs and outputs in the board.
Playing with PWM
Pulse-width modulation is a method of reducing the average power delivered by an electrical signal, by effectively chopping it up into discrete parts. Nearly every pin in Circuit Playground Express has PWM support. We will learn to brighten and fade the LEDs.
How to generate audio
Circuit Playground Express has a well equipped built in audio output. In this section we will make some noise/sound with and from our board.
Learning about Capacitive Touch Sensors
In this section we will learn to read the capacitive touch sensors built into on seven of the Circuit Playground Express pads (pad A0 is not a capacitive touch pad).
Working with the on board NeoPixels
Blinking LEDs in a hardware can change your life. In this section we will be adding light our project with NeoPixels.
- Working with light sensor
In this section we will learn to use Playground Light Sensor.
- Temperature Measurement
In this section we will make the Circuit Playground Express to tell the temperature. It has a built in thermistor.
The end goal of the workshop is to have fun and learn Python at the same time.
- Every participant should bring USB to Micro USB cable (Android phone charger cable)
- Basic Python knowledge will be helpful
I am still working on my example code and materials.
Anwesha Das, is a lawyer by education and profession. She provides consultation regarding legal, policy making and community related issues in the FOSS world. She is the Organizer of PyLadies Pune, also leads the PyLadies efforts in India. She maintains her blog at https://anweshadas.in/. As her day job she works in the Editorial team at HasGeek. She also blogs for Python Software Foundation.