Big thanks to James “baldengineer” Lewis who gives a quick breakdown of CircuitPython and its various attributes in a recent blog post, then shows off an LED matrix heart project he designed using CP. His schematic is above and code is available on his website so you can take a look at it yourself – this is a bit more sophisticated than a simple blink project, so if you’re looking for something a bit more next-level check out this project.
The first bit of code I wrote, didn’t work. Multiple LEDs were turning on at the same time. I stared at the code for what seemed like hours. (It was probably 30 seconds.) Then I started changing bits of code to see how the matrix’s behavior would change. With each change, I just hit save and immediately saw the result.
At one point, the REPL interface enabled me to drive individual pins manually. That is when I realized, the behavior only made sense if the transistors on the bank select were PNP. Guess what. They were.
Could I have done the same thing in C? Of course. However, it would take several minutes longer. The re-compile and upload time adds up. I am not ashamed to admit maybe even 10 minutes longer with how many changes I made to the Python code.