kferg.dev

[ c++ ]

I designed this MIDI controller for my friend, who uses the Looper device in Ableton Live extensively. It’s a grid of 12 light-up buttons designed to control four tracks: The yellow buttons mute and unmute The red buttons arm the tracks The blue buttons start and stop record/overdub on the Looper device The V1 LoopBox I designed the first version several years ago. It relied on a Teensy dev board.

C++ for Embedded Programming: constexpr

Posted by Kevin on
Is C++ good for embedded programming? Don’t ask me! What does “good” even mean? However, as I start to dip my toes into embedded I had two thoughts: It appears to me that C is still the dominant language in embedded systems In theory the C++ principles of “zero-cost abstraction” and “don’t pay for what you don’t use” should be especially useful in embedded systems I’m just a hobbyist at embedded and I don’t intend to tell the pros what to do.

Audio Reactive Programming: Envelope Followers

Posted by Kevin on

My weirdly specific hobby is coding visuals that react to music. (See here or here.) I thought I would share some of my audio processing and animation tricks. Most of my techniques for synchronizing animations to music start with envelope followers. In this article, I’ll explain what an envelope follower is and how it works. In a future article, I’ll give some examples of how to use one.

Sound-reactive animation is my useless superpower. I’ve always loved graphics programing, and I’ve always loved music. I’ve been making these animations over the years to add some visual appeal to my shows. (Not that I play many shows these days…) All these animations respond to incoming audio, and can run in real time on a Raspberry Pi. Then I can throw the Pi in my bag and set it up at a gig if the venue has a projector.