I’ve been hard at work adding features to my GameBoy Wave Oscillator module. It still needs a cool name. I originally called it GAVE (GB + Wave) but I think I can do better. At any rate, I’ve now nearly rewritten the codebase almost from scratch while switching over to C++. There were some bumps but it has vastly simplified things. Oddly my approach with C++ feels not too dissimilar to how I organize 6502 assembly programs (for the Commander X16 music tracker I’m writing, but that’s a blog for another day).
This has allowed me to add some nice features rather quickly. The step sequencer now has 4 modes: forward, backward, ping-ping, and random. The position of the step sequencer (as well as the edit position for adjusting the waveform manually) are now part of the main display. The default step sequence setting is stored within each patch as well.
There are still some features I want to add but I think the module is nearly ready as a minimum viable product, at least to folks that might not mind editing text files to mess around with waves. I want to have a means to generate waves using parameters via Python scripts initially and then plan to add that into the module directly, though I’ll want a better in-module patch UI first.
I plan on building at least one more prototype, in part so I can have two of these in my own rack, giving me 2 step sequences but also letting me do weirdo things with detune and/or using one as a dedicated step sequencer while using the other for audio (and a mix of both).
I’ve been working on a big update to my GameBoy Wave module and finally have it in a state where I can tease a short demo:
A brief overview of the module itself, it implements a similar solution to the Nintendo GameBoy’s wave channel. It uses 4-bit/32-slot waveforms which are output through a variable clocked DAC. By varying the speed the waveform is run through the DAC, the pitch can be changed. This produces a gritty sound with all sorts of aliasing and is exactly what I wanted – a gritty chiptune style module which sounds very close to the original GameBoy’s wave channel. As it should since it’s doing quite nearly the same thing.
This version swaps out most through hole components for surface-mount ones. I was averse to doing that but wanted to keep the form factor the same while adding a step sequencer, and SD card, and swapping the left/right buttons for an encoder. I would still like a through hole version so it’s easier for folks to build on their own without needing SMD experience, but I wanted to test the new features first. A through-hole version is likely to be more expensive as well.
The step sequencer uses the same wave being displayed and is updated via a trigger and has its own dedicated output. That means the audio and step sequencer can be used at the same time. Currently it only goes forwards but I plan to add more options (reverse, perhaps ping-pong, random, etc.).
The SD card is hidden along the back. In hindsight that might annoy folks that want to mess with patches off the SD card often, but I really don’t like the front mounted card slots. The SD card is used for both patches and the config. Both are just text files that can be edited in a text editor or generated from something like Python. I did this so I could more easily work on the wave generation functions external to the module first, and can then port the code over to the module itself (where I’d also need to add the GUI elements). The plan is to be able to generate frames just like you can in LSDJ using parameters like amplitude, filter, clipping vs wrapping, etc.
As alluded to above, I plan on selling this though it is also open source, though I need to clean the repository up a bit as it’s gotten pretty messy with working on all the features and the through-hole and SMD designs. I’m not sure if I’ll sell complete modules, kits, bare boards, or what but I want to give as many options as I can so folks aren’t forced into building one on their own if they don’t want.
Still more work to do on the software front too but I’m very happy with the hardware and the software has most of the core functionality I wanted for the module.
Folks may have noticed we haven’t had birch plywood case options available for quite some time. Current events of the world have made that a difficult proposition as a significant majority of birch plywood comes from Russia. Our main mission is to help lower the barrier to entry to get into Eurorack so we can all enjoy making music, peacefully and together. The Eurorack community is, by in large, a wonderful open and inviting group. To that end, while I know the economics of the situation are complicated, I just would not feel right buying products from Russia at this time.
That means there has not been an affordable alternative to MDF and to this point I have only had the premium wood offerings. A few months back I contacted my wood supplier about this issue. Sure enough, finding birch plywood for other places has proven difficult and expensive. They were, however, working on an alternative and I finally got around to testing it. I present, a possible alternative option – basswood plywood cases!
Folks expecting a perfect replacement to birch should set your compass. The wood is lighter and more springy, but it’s also flexible. It takes quite a lot to break. After assembling the above Skiffy 42, I find the case ends up rather rigid. Not as rigid as MDF, many of the hardwoods, or birch; but still respectable. I’m less certain about the larger cases (such as my new Skiffy 642) but for folks wanting an option in between MDF and the hardwood cases, I think this may work well!
I still have a limited amount of test wood available so will be adding the basswood option only to the Skiffy 42 for now and with low inventory. If there’s enough interest, I’ll go ahead and stock more assuming my supplier continues to offer it. If you want to give it a go you will find it available here on my direct store as well as Etsy soon!
All items made to order! Current turn-around time is 1-2 weeks. Dismiss