It's been a simultaneously long and fast year. Because of the pandemic, it feels as if nothing has happened in months, yet here I am a fourth of the way through the semester (my last fall semester) already. Since I'll be applying for jobs in the near future, I thought I'd take the time to revisit my website, resume, and the like.
A pretty big handful of my personal projects have been for a music/programming eco-system entitled norns. I won't go into detail about the platform, or the community as that has already been done quite well at the link below. In short, it's a specialized music computer that ties together an audio programming language, with a scripting language for controls via hardware.
https://cdm.link/2020/05/monome-norns-and-grid-musical-review/
Creating my own instruments this way instilled in me a love of programming, and opened new doors for me to be creative. Some of these things haven't be shared with many people, but most are open-source and used by others.
Ekombi
This is the instrument that I've poured the most time into. It's undergone numerous rewrites and improvements (still ongoing) as more tools have become available to norns, and my programming skills have gotten better.
It's a polyrhythmic sequencer/sampler. This might not mean anything to you if you don't know musical jargon, but chances are you've heard polyrhythms in music somewhere. Ekombi is the realization of a dream of mine for a sequencer with more rhythmic freedom, which are usually locked to 16th-notes and triplets (mainly because of the MIDI standard). Originally written to decode and divide timing events, the current iteration makes use of norn's recent clock syncing system, allowing it to sync with a computer, MIDI-enabled instruments, and even modular synthesizers via a control voltage.
Here's a short demonstration (Click to watch video on Vimeo).
Roda
Building off of Ekombi, Roda is a micro-rhythmic sequencer/sampler. Essentially meaning fractional or uneven divisions of a beat, instead of integer divisions. “Swing” in jazz could be considered a micro-rhythm because of it's weight to one side of a beat, and in fact many styles of music have their own distinct timing offset like this.
This instrument doesn't use a grid like Ekombi though, and is fairly limited in application.
Shapes
A visually driven idea of mine. The user places polygons on a 2D grid, and has controls of their rotation in time. The sum of each i-th point is used to modulate external music values in some way. It's pretty openly abstract, but I think it's nice to look at and play with if nothing else.
Screen/Grid Capturing
The apng (kind of like a fancy gif) above was actually made using another script I wrote. Though the hardware had the ability to capture a single screenshot, I wrote a small library to record norns screen for a given duration, at a certain fps.
I also used some lua trickery to record the state of a grid during use, which is used on monome's official website!
Mello
This instrument was programmed using a sampling engine called Timber that allows very fine control over the pitch of each sample. Originally inspired by iconic sound of the Mellotron, this script turned into something a little more unique. With the grid layed out (and retunable) like a violin (each key on the grid is a half-step by default, and tuned in fifths going up), the user loads to samples which can be individually repitched and attenuated to mix the sounds.
Here's a clip of another norns user playing it.