Skip to content

Blog

The Return of The CircuitPython Show

When I blogged earlier this year that The CircuitPython Show was over, I really thought it was over. But with the talk of #CircuitPython2025 kicking off, I started to give the podcast some thought again. And while I thought I had talked to most of the community members I wanted to talk to, there were still a few I hadn't reached out to yet.

But where it really intrigued me, was what if it wasn't just an interview show and I sprinkled topic based episodes in as well? I quickly brainstormed half a dozen ideas and realized there was more to do yet. I reached out to a number of potential guests and the reponse was overwhelmingly positive.

I'm excited to share that The CircuitPython Show will return in mid-January. It will still feature interviews with community members as well as topics including: how to design a PCB, building CircuitPython from source, creating games for CircuitPython, a panel interview about CircuitPython's new audio effects and filters, and more, with guests both new and returning.

Follow the show on Mastodon or Bluesky and find the show wherever you get your podcasts or visit The CircuitPython Show.

One Door Closes, Another One Opens

I realized this week that I never blogged the end of The CircuitPython Show. The show came to end at the end of January earlier this year after 36 episodes. It had a good run and I still had the itch to podcast, so Tod Kurt and I resurrected The Bootloader this past March. We're on a monthly schedule and have done four episodes so far this year with topics ranging from makers and their cool projects or products to 3D printing and more. It also includes a healthy dose of CircuitPython news if you're missing the podcast. You can find it wherever you get your podcasts or visit The Bootloader.net.

Stay connected with The Bootloader and me - sign up for our newsletter launching next week here.

But don't take it from me. Here's LadyAda and pt from the July 3, 2024 episode of Ask an Engineer (fast forward to the 1:07 mark):

{{}}

Fifteen Years of Record Collecting

My record collection

Fifteen years ago today on April 18th, 2009 I started my record collecting journey. It's an easy day for me to remember as it was the second annual Record Store Day. I still remember it like it was yesterday. That Saturday afternoon I'd pick up the turntable, so I headed out to the local record store, Down in the Valley, first. There I picked up Neko Case's Middle Cyclone on clear vinyl and a handful of used records, though I don't remember which ones I bought. I never imagined my collection would grow like it has.

I remember that people thought I was a bit crazy to get back into records. I wouldn't have imagined vinyl outselling CDs, but vinyl has for the last two years.

My records bring me great joy - I've built apps around them, cataloged them on Discogs, and I listen every day. There's nothing better than putting on a pair of quality headphones, closing your eyes, and spinning a record.

Favorite Albums of 2023

My favorite album of 2023 isn’t in the picture as I’m waiting for the deluxe box set that comes out in early March, 2024. Peter Gabriel’s i/o, his first album of new music in over 20 years, came out in early December and I have literally listened to nothing but this. So much so that Apple updated its 2023 Replay and the record became my most played streaming album of the year in under a month.

Like last year, here’s the rest of the list in no particular order:

  • Jenny Lewis - Joy Y’all: Jenny Lewis was back with a strong effort. At just over 30 minutes the record was short and sweet but full of catchy songs.
  • Jason Isbell and the 400 Unit - Weathervanes: Jason Isbell self-produced this album and cranked the electric guitars a bit more than in past albums.
  • The Hold Steady - The Price of Progress: You either love or hate Craig Finn’s voice. But there is no denying he is a master storyteller.
  • Alex Lahey - The Answer is Always Yes: Alex Lahey’s third album is just a rockin’ good time.
  • boygenius - The Record: I don’t know what I can say that hasn’t already been said on every Best of 2023 list already. The supergroup of Julien Baker, Lucy Dacus, and Phoebe Bridgers followed up their debut EP with a wonderful album.
  • Angie McMahon - Light, Dark, Light Again: If it hadn’t been for Peter Gabriel, this would have been my album of the year. There was no sophomore slump for this singer / songwriter out of Australia. I really hope more people get to know her and her music.
  • Dessa - Bury the Lede: Minneapolis poet / author / singer / rapper Dessa was back with Bury the Lede and did not disappoint.

  • Favorite repress / reissue: Prince and the New Power Generation - Diamond and Pearls: I almost regret not buying the deluxe box set of this album. The quality and the mix of this album, originally released in 1991, is hands down the best mixed album I heard all year. I listened to the original a few times before picking this up and was blown away the first time I put it on the turntable.

White Whales

White whale (noun): The record you have spent a long time, sometimes years, searching for.

In the record community, each collector has a white whale, one or two records they’ve been searching for yet cannot find. Unlike Captain Ahab, our white whales didn’t take half our leg, though. (I have no idea if other collectible communities use this term, but wouldn’t be surprised.)

Thanks to Discogs, it’s not hard to find your white whale, so I would add “…at a reasonable cost” to the definition.

I started my record collection almost fifteen years ago, on Record Store Day #2. That was the day I bought a used turntable from Craigslist and the first records I bought as an adult at Down in the Valley. As my collection has grown, I’ve become much more pickier about the albums I buy. And in 2023, I got lucky and found both my white whales, from bands you probably haven’t heard of.

First up is Free Energy’s Stuck on Nothing. The debut album from this alternative power pop band from Philadelphia by way of Minneapolis that featured a few members from the defunct band, Hockey Night. Free Energy was signed to LCD Soundsystem’s record label, DFA, and Stuck On Nothing was produced by LCD Soundsystem’s James Murphy.

Two or three copies were for sale, all around $65 - $75, which was way more than I wanted to pay for the record. But then one popped up for $30, but it had a two inch tear in the jacket. Right after that, another showed up for $40 from a new seller and I jumped on it. Being a new seller, they didn’t have any customer ratings, so I would be taking a chance on not getting scammed, which has been happening more frequently on Discogs.

I took the chance and the record showed up quickly and the jacket was in great shape. The record was filthy - I’ve never seen a record so dusty. A trip through the spin clean and it was good as new.

Whatever happened to Free Energy? They released a second album in 2013 and then broke up. I saw them play on their final tour and it was the last show I saw at the Triple Rock (RIP). One of the members went on to have a Kickstarter campaign to make vegan jerky from eggplant.

My second white whale is the record Under the Blacklight by Rilo Kiley, featuring Jenny Lewis, one of my favorite singers..

The band was active from 1998 to 2011, famously getting their start thanks to Dave Foley of Kids in the Hall. Under the Blacklight would be their major label debut after 3 records as an indie. Released in 2007, it would be their final album.

This time I got lucky. Each Black Friday, Record Store Day does a smaller version of itself with special editions, new releases, and represses released for Black Friday. This year, Rilo Kiley’s Under the Blacklight was repressed with 6000 copies made going to all the local record stores around the country.

But would my record store have it? I’ve skipped the last four or five Record Store Days and Black Fridays. But after missing out on the Dee Gees (the Foo Fighters EP of Bee Gees cover songs) a couple years ago, I wasn’t going to miss a shot at my white whale.

Down in the Valley opens at 9:00 a.m. for Black Friday and tt took most of my will power not to leave after I woke up shortly after 5 a.m. I got there about 7:45 a.m. and I estimate I was 30th in line, which would grow to over a 100 by the time the store opened. About a half hour before the doors would open, an employee was going down the line randomly asking people what they want, and usually give them the bad news that it wouldn’t be available by the time they got in the store.

But not me - when I asked his response was “Oh, we have plenty of those!”, which helped make the wait go by a little faster. Once in the store at about ten minutes after opening, I picked up my copy of Under the Blacklight (in translucent purple) and also picked up the recent re-issue of Prince’s Diamonds and Pearls.

Now that I’ve acquired two of my most sought after records, it’s time to think about what I might search for next... and that would be 1989’s March by Michael Penn.

In front of my record player lay two albums, on the left Free Energy's Stuck on Nothing and on the right, Rilo Kiley's Under the Blacklight

Introducing SongMatrix

I listen to music. A lot of music. If I’m in my home office I’m usually listening to a record, and if not, the radio. But I’ve always been an album person, not into playlist (or mixtapes to date myself). I’ve found by listening to albums front to back, I don’t always learn the song names.

Just a few weeks ago, I came across the shazamio Python library. I have a Raspberry Pi already sitting on my desk. I also have a couple extra 64x32 RGB Matrices and I recently picked up one of the new Adafruit S3 MatrixPortals, so I have the hardware and software to start a new project.

Enter SongMatrix (GitHub).

SongMatrix records a short audio sample on the Raspberry Pi and then sends it to shazamio to be identified. It then sends a MQTT message to Adafruit IO’s MQTT broker with the song title and artist. The MQTT message is received by the S3 MatrixPortal, which then scrolls the song and artist on separate lines, like so:

A 32x64 Matrix displaying the song Breathing Underwater on the top row and the artist, Metric, on the bottom row

I whipped up a proof of concept for the Python part of recording audio and sending it to shazamioin one Friday evening. The CircuitPython part took me a couple weeks and I’ll share some of the challenges in upcoming blog posts (no promises).

A special thank you to todbot for bootstrapping some asyncio code to get me started. And to anecdata for spending a good chunk of yesterday helping me get around the last issue and getting to done. (Well, it’s never done).

MatrixPortal Album Art Display

A year and a half ago I made some progress on displaying album art on a MatrixPortal and 2 32x64 RGB matrices using CircuitPython. I was never really happy with the results and using two 32x64 matrices instead of one 64x64 matrix was difficult. I moved on and re-created the project using a PyPortal Titano. It worked well: when I chose an album I wanted to listen to SilverSaucer.com, my FastAPI web app would convert the image and send a MQTT message. The PyPortal would listen for the message, and when a new message arrived, download and display the album art along with a Winamp skin that also showed the artist and album name. I should have blogged it and taken a picture!

When Adafruit announced the new S3 MatrixPortal with so much memory - 8MB flash and 2 MB of SRAM, I decided to try again. My hope was that with that much memory, I could download and load the image into memory without having to save it.

I haven't figured out how to do it without saving the image to the MatrixPortal yet, but I was able to repurpose my original code and had it up and running in just a few minutes.

Now came the hard part: adding gamma correction to the image so it looks closer to normal on the MatrixPortal and not washed out. Adafruit has a great Learn Guide for Image Correction for RGB LED Matrices. The guide includes a CPython program that uses Python's PIL / Pillow library to manipulate the image and some logic to apply gamma correction.

I needed to re-create that program, which used command line arguments where you would pass the image name to the program, as one function within my FastAPI app. It took a few days of banging on it (and a few hours lost to a wrong indent(!)), but I got it. The get_discogs_image function downloads the given image and converts it from a 600px image to 320 x 320px (for the PyPortal) and a 64x64 image for the MatrixPortal. The process_image function then takes the 64x64 image and applies gamma correction and saves a new copy (which the MatrixPortal will download and display).

Some albums look a lot better than others. Considering it's a 64x64 image, it's practically pixel art at this point. It's too bad that it's difficult to photograph RGB matrices, but here is a picture showing Divine Fits' album, it being chosen on SilverSaucer.com, and the converted image being displayed on the MatrixPortal.

Divine Fits

The CircuitPython Show Returns

After being on hiatus since December, I'm happy to share that The CircuitPython Show returns this coming Monday, April 10th.

I've got some great guests lined up, including authors, board designers, developers, and more.

Make sure you're subscribed in your favorite podcast app and the new episode will hit your earbuds this Monday!

Thanks for listening.

Favorite Albums of 2022

I shared this on Mastodon, but in an effort to (maybe) blog more, here are some of my favorite albums of 2022. I'm sure I'm forgetting some. In no particular order:

  • Spoon - Lucifer on the Sofa
  • Metric - Formentera
  • Muna - Muna
  • Yeah Yeah Yeahs - Cool it Down
  • Frank Turner - FTHC
  • Taylor Swift - Midnights
  • Chastity Brown - Sing to the Walls
  • Hatchie - Giving the World Away

Spoon gets a special mention - the remix album, Lucifer on the Moon, is just as good as the original.