One big wish for CircuitPython in 2022

I thought I could add my voice to the folks sharing their wishes for CircuitPython in 2022.

Boards I like
I was really pleased with how many boards came out last year that run CicruitPython, particularly those built on ESP32-S2 and RP2040.

For this year, the tease at the start of 2021 for a ESP32-TFT combo has finally turned into reality. Want. No, I have no idea what I am going to do with it. But it’s bonkers. That’s gotta be good, no?

And the recent Adafruit brain wave of different QtPys, especially those built on ESP32 (catching a theme?) have my head abuzz. Especially with the LiPo BFF-Sprinkle-Topping. I like smol, wireless, and battery-powered for lots of the things I mess with. But I’ve been usually going to a Feather S2 or TinyPICO, devices WAY overpowered and expensive for the things I usually do. Usually if I go for those, I want to GO BIG.

In any case, a QTPy ESP32 with LiPo feels like it changes these calculations. Let’s see.

Coding I love
As for CircuitPython itself, I’m impressed with how many new features have showed up in the past year, such as deep sleeping and asyncio (so new!). For sure I will be exploring asyncio, as most of my projects have various things going on in parallel and I have to manually manage all that.

Looking forward
There are a few areas that I struggled with CircuitPython, wanting it to do something and then having to turn to Arduino to do it.

UDP – alas, I had a project that used UDP that I just couldn’t get to work on CircuitPython. UDP is common in connected devices to send data to an endpoint without the chattiness of TCP. Alas, this isn’t a biggie for me in 2022, as I don’t think I’ll have a project with that.

So sleepy – this wish might have already been answered, but I want to see deep sleep spread to all the CircuitPython chips. In the small boards I use, they don’t have deep sleep (last I checked), only the hefty chips do. Tho, with the ESP32 line spreading to other formats, perhaps I won’t care the M0s are left out.

AudioIn – this one is the biggest for me at the moment. I have had many rounds using sound with various CircuitPython boards. Oh, CircuitPython might be great for MIDI, or for generating or mixing waveforms (yay, Winterbloom), or for playing snippets stored in memory or an SD card. But (and maybe it’s me) CircuitPython really isn’t designed for AudioIn, say, for recording someone and then doing something with it. Well, at least I’ve not had any luck trying to do that.

CircuitPython Audio Mixer – with that in mind, I would really be happy if we could design audio systems for CircuitPython like Teensy folks can do with the Audio System Design Tool. I’m trying really hard not to spring for a Teensy. But something like this could be really powerful, even if it were for the RasPi and a voice bonnet.

This AudioIn issue has been plaguing me in general, so it’s not a fault of CircuitPython. But, since we are making wishes, my biggest wish for 2022 is more AudioIN tools for CircuitPython.

Ok, so maybe part of the list above is just indicative of my skillz (or lack thereof). So, do let me know if you agree the list above needs to be added to CircuitPython, or if I just need to up my skills. 😁

Image shamelessly snagged from MasterTheHandpan (don’t judge, it’s the image I was looking for)