Posted on

Angled Stands For the Akai MPC One

Folks that follow my band may recall we are experimenting with going DAWless. Or I guess in the case of the MPC One more like PC-less since it is sort of DAW-like in places. At any rate I recently picked up a used MPC One to see what all the fuss is about. While I don’t use it much for Sampling, oddly (I use the WaveBoy for that, of course) it’s been fantastic as a MIDI and CV hub of sorts. I do quite like it, even with the bugs (of which there are many).

One downside of the One over the other MPC options is that it sits flat on the table by default. That makes the screen a tad harder to see but in my case it was also running into one of my computer monitor stands. When I’m using the one, I’m often not using the computer, but it was making my desk a bit cramped. So, over the weekend I decided to design some simple stands to lift the MPC up a bit and angle it forward.

And this is what I came up with! I’m super happy with how these turned out. So much so that I thought others might like these as well, and have now added these to our store. I rather like the frosted clear shown above, but I will offer the stands in other colors as well.

These are made using PETG plastic with a 0.8mm nozzle. The PETG is for a bit more durability and so the sides can have a nice textured finish on them since PETG works very well with textured print beds. The 0.8mm nozzle is for strength, but also helps add clarity to the transluscent color options. The stands also come with optional threaded rods and nuts to secure the sleds together. This is optional but can be helpful when wanting to move the MPC around as it keeps everything together. Finally they are laser cut adhesive cork along the bottom to prevent scratching and add a bit of grip.

I love my own stands and hopefully other folks find these useful as well! As always, if folks have any questions about these, or any of our other products, don’t hesitate to reach out.

– Tim

Posted on

WaveBoy 0.55 Firmware Released!

It took longer than anticipated between working on the PCB update (news on that hopefully soon!) and a bit of feature creep, but I’m happy to say 0.55 is now out and available!

If you want to hear what it sounds like on the context of a song, you can check out the latest video I released on my Band’s YouTube. The primary purpose of the video was to show how I’ve been testing using an MPC One as an alternative to a computer based DAW for making music (with modular included) but it uses two WaveBoys. One is for the lead using the Trixor patch with the frames being modulated by an envelope; and the other is using the Sampler for playing our personally sampled cowbell. It’s not the best example of the Sampler since I didn’t use CV to change the samples. This was, in part, because of an unfortunate bug in MPC 3 which will require some thought on how to work-around. We actually use WaveBoy’s quite a bit in the band.

Anyways, here are the big changes in some detail:

    Manipulators

    These are a new feature for the Wave Mode which lets you perturb the selected wave using a number of algorithms. For 0.55 there are for algorithms but I hope to add more in future updates. This makes it much much easier to craft different waves and sounds without having to resort to manually placing pixels (which you can still do via the Edit Wave feature) or editing the waves using a text editor on a computer.

    A future feature that builds off these will be called Generators. They will take the same idea but allow you to operate across all 16 wave-frames as well as generating waveforms directly. So, for example, you can start with a standard saw and then use the Jitter manipulator with increasing jitters for each of the frames to go from a saw to buzzy noise. Or you can use Wrap to start with a base waveform and then successively wrap to get ever-increasing harmonics.

    Sampler

    The Sampler got a bit of an overhaul. The patch structure has changed to be a bit more flexible. The format of the metadata textfiles also changed, but is now easier to read and use. All but the sample and patch names can also be edited directly on the module. The edit mode also lets you disable CV to manually select a sample to play meaning you only need to send the WaveBoy a gate. Future revisions will allow for using a trigger instead of a gate for further simplification along with a ping-pong loop mode and, eventually, a sample wave viewer (for making it easier to set loop points).

    The biggest change here though is moving from 8-bit to 16-bit WAV files. This just made things easier, especially for building a new Patch as waves don’t have to first be converted to 8-bit. In 0.55, only 16-bit waves are supported, but I plan on re-introducing 8-bit file handling again so users can have the choice. Either way, the Sampler now offers a bit-crush mode. Even though 16-bit waves are supported, in reality, the max resolution is only 12-bit. This can now be configured on a per-sample based from 12 down to 1-bit for some truly crunched sounds.

    One nagging bug has been fixed where switching samples via CV could cause unwanted jumps. This has been vastly improved by changing how waves are loaded on demand off the SD card and also paves the way for being able to stream longer WAVs direct from the SD card rather than relying on a fairly long chunk of RAM to buffer an entire sample. This also leads the way for a “Slicer” mode which lets you use CV to jump around set points within the same wave (such as one might want to do in order to chop up a drumloop) though I probably won’t start work on a Slicer until I have a good way to visualize the samples on the module and a nice way of handling setting loop points. That will be very important for a slicer.

    Finally setting the loop points now uses a “smart” knob feature (see below).

    Control Surface Rework

    This is a behind the scenes change. The control surface (display and encoders) have been put into their own Class to make it easier to import these as well as provide extra functionality. For instance, as noted above, setting the loop points for the Sampler makes use of a smart knob feature where turning the knob fast increases the update rate which allows you to quickly coarsely set the points and then refine them by turning the knob more slowly. This also allowed for some space savings in the firmware and, in particular, RAM.

    I’m very excited about the new firmware and WaveBoy as a whole and want to also thank everyone who helped test, offered feedback, and ultimately spent your hard earned money on buying one. It means a ton to me and it’s great to know I’m not the only one that enjoy the quirky sound of chiptune, chippy-waves, and variable clocked DACs! So thank you so very much!

    – Tim

    Posted on

    WaveBoy 0.54 Firmware and Pre-Release 2

    At long last, WaveBoy 0.54 is now available! This version focuses on improving tuning and pitch tracking. It took quite a lot of work, hence why I didn’t do much in the way of other feature development (some but mostly UI polish).

    The problem is that certain incoming voltages on V/Oct end up being “noisy” – the value the analog-to-digital converter (ADC) provides for said voltages moves around. This was causing audible artifacts, especially in wave mode. While the raw noise is still there, it has been tamed by doing a few things:

    • The sample rate in Wave mode is only updated after each full wave cycle completes
    • Using a timer to read analog inputs at a fixed rate (currently 400Hz)
    • Using a software 2-pole filter and floating point math for the V/Oct values into the pitch function
    • Moving to per-note tuning

    These things took a lot of reading up on techniques, bug squashing, and trial and error but I am happy to say that pitch tracking is improved across the board. For Wave mode it’s actually pretty great and for noise and sampler modes, it’s pretty good but could be improved and something I’ll be looking at in the future.

    The per-note tuning is a somewhat big change. Folks moving to 0.54 will also want to grab the sdcard.zip and at least grab the updated tuning.txt file. This will be a good starting baseline and should work for most of the WaveBoy’s currently out in the wild but it may require tweaks to get the pitch tracking perfect for yours.

    While looking into all this I did discover a design of the microcontroller I had not considered which may be contributing to the noise. The microcontroller (a SAMD51) uses what is known as a SAR ADC (Successive Approximation Analog-to-Digital Converter). This is both a cost effective and flexible ADC. It works well for multiplexing (being able to use a single ADC to read multiple input pins) but the trade-off is when using an op-amp in front, it can require additional parts to avoid shenanigans. Basically it’s an RC filter after the op-amp to help charge the ADC’s small capacitor used to ultimately read the given voltage. Without this filter, the op-amp needs to have a much higher bandwidth.

    This all gets pretty deep in the weeds but I suspect it is a source of some of the incoming noise on the V/Oct input. This affects CV too but since CV is used for pretty coarse ranges, it’s not really a problem. And while the software solutions fro V/Oct are working well, I have decided that there will need to be another PCB revision. Fortunately, I do not expect that this will not require different firmware. But it does push back the larger production run of WaveBoy’s I was hoping for.

    I went back and forth on whether this was needed due to the software improvements, but it’s a very marginal increase in part count (and cost) and is more “to-spec” which I expect should improve the pitch tracking. While it’s great now, these additions will make it even better and it makes sense to do if I want to start cranking these out in larger numbers.

    That said, I do have a small handful of PCBs of the current revision available. I will be making these available in another pre-release round which will be at the cheaper price as compared to production (just like the last pre-release). Even though the next revision will be improved, this one is still great. It might even have more character than the improved version. For all intents and purpose, it is a production WaveBoy save for the above change. So for folks that have been wanting a WaveBoy, you can grab this version up soon (within a few weeks hopefully) or you can wait for the next PCB revision (which will probably be a few months away).

    In the meantime, I will be finally working on the Manipulators feature I’ve been talking about. I’ve been super excited to start work on it but of course a module isn’t very good if it can’t track pitch well, so that was quite important to remedy first. Expect to see Manipulators hopefully in 0.55!

    Posted on

    ADCs and Noise

    For the past week or so I’ve been spending much of my spare time trying to improve pitch tracking in WaveBoy. I made some pretty giant strides by adopting a per-note tuning approach. This works well, but it uncovered and ugly problem I haven’t noticed before – certain pitches were “noisy” when sampling from the ADC. This noise was heard as audible steps which was both unpleasing to the ear and made it hard to tune.

    To improve things where I want, I suspect I will need to make another WaveBoy PCB revision to add a low-pass filter to at least the V/Oct input (and maybe the Tune input, though I’m not sure on that one). There’s noise coming from somewhere and one way to improve things is to use a low-pass filter at the ADC input. Since the V/Oct is a slow changing value (relative to audio for instance), the low-pass can be pretty low. But I need to do more work there to see.

    Even without a PCB update, I was able to greatly improve things by using both hardware and software averaging. In the software case, I’m using floating-point math so I can have more precise results when averaged. While not perfect it’s pretty good. And some imperfection is kind of part of the purpose of WaveBoy anyway.

    This now unblocks actual feature development again, with the next thing I want to work on being “Manipulators”. These let you manipulate the selected wave frame by a number of algorithms which allows one to build a sequence of frames much more easily and right on the module rather than having to edit a text file externally (something I know many folks found not fun).

    Once I have those out, the next step is full wave generators (which may themselves manipulate the Manipulators). This will allow one to start with a basic calculated or drawn wave and produce a full set of frames with parameters. It will be very similar to the LSDJ way of doing things, something that’s always been on my list. Until recently I just wasn’t sure how to tackle that.

    What does all this mean? It may mean the full production version of WaveBoy may take a little longer to produce. Not because of the Manipulators (those can be added later) but because having good pitch tracking is pretty important and if I can make that better/easier with a few minor hardware additions, I should do that.

    Posted on

    WaveBoy 0.53 Firmware

    I spent a good chunk of the Holiday break working on a new feature for WaveBoy I’m rather excited about – internal volume envelopes! These plus some bugfixes and feature tweaks are available on the newest firmware. Head over to the WaveBoy manual for more information and to take it for a spin!

    Folks may have noticed the WaveBoy is currently out of stock. I am working on the production version and hope to have it at least available for pre-order very soon. I am not yet sure if it will be available only as a kit or if we will also have fully built and tested versions available.

    Posted on

    EuroPower Prototype

    It’s a project that’s been sitting around for 2 years, partly because I haven’t really needed it until more recently, and partly just doing other things. I wanted to design my own active bus board. While this could be used in nearly all my Eurorack cases. because it requires a bipolar 13.5-15V DC supply, I suspect it may be a solution for my own rack. However, I do plan on offering the bare PCBs and perhaps kits as well as releasing the schematics (probably under OSHW).

    Active bus board on the left powering a pre-release WaveBoy on the right. Yes the red LEDs on the active bus board are way too bright.

    It only accepts bipolar DC input (not AC) as it’s meant to be used with an unregulated AC/DC supply (which is what I do) but seems to work with the common Meanwell -/+ 13.5VDC switching supply (which is what I’m testing with). This was for cost, simplicity, and to some degree safety. I didn’t want to sell PCBs or kits that work with mains voltage. Also to keep costs lower, it only supports -/+ 12VDC output (no +5VDC). I personally do not own a single module that runs off 5V bus power. I might design an add-on board that can plug into one of the headers to provide 5VDC for those rare cases. The design also uses non-adjustable 7812/7912 regulators. I found I haven’t really needed to adjust voltages in my current power solution and supporting that adds quite a few parts (and thus cost).

    Point is, the design is meant to be good. Maybe not the best, but good. The design can support up to 1.5A (depending on the regulators used) but more realistically 1A as a practical max. My entire rack pulls around 1.8A off +12V in total. I plan on using six of these so each board would be handling somewhere around 300mA on average.

    Not sure if this will be a product and, if so, whether just a PCB or kit but I’ll probably at least offer the spare PCBs up for sale as I’ll have to order more PCBs than I actually need. If interested in this, let us know! Knowing there is interest will help us decide if/how to offer these up for folks to buy.

    Posted on

    New WaveBoy Front Panel

    While I’m glad I was able to 3D print panels as part of my design process, now that I have a layout that’s good with what should be the final PCB design, I decided to look at using a more common material in the Eurorack space for nice but reasonably cost front panels: FR4. They just came in today and, well, see for yourself!

    I think they look stellar! This was the last major piece before being able to declare at least the WaveBoy hardware fully ready to go! There is still software to work on, but I expect that will be a continual process. I mentioned in my last update the idea of a tracker. While I haven’t written much code for that yet, I think it will be a great addition though I do expect it to take some time. Especially for being able to use it as both a step sequencer to drive other modules and internally where it can be used more like LSDJ to manipulate the waveforms. I think both add a ton of value to a module I’m already proud of.

    Posted on

    WaveBoy Tracker? Maybe!

    As the band looks towards going DAWless, I find myself having to look at Eurorack sequencers quite a bit more. There’s lots of DAW-none ways to do that. Ornament & Crime (particularly the Phazerville firmware) has some nice options for doing that. Also CV keyboards, like the Arturia Keystep have a sequencer.

    But since I’m also writing a tracker for the Commander X16, I got to thinking, why not write a tiny tracker module onto WaveBoy! The main problem I see is that the screen is quite small for being able to read letters. This tied to the display library in use can also make updating the display potentially problematic. I can solve for this to a degree by enlarging the current row of the view.

    The sequencer could be controlled via the following inputs:

    • V/Oct = Base Pitch
    • Trig/Gate = Advance Sequence
    • CV = Select 1 of 16 sequences
    • Step = Gate (or a VCA?)
    • Audio = Pitch

    V/Oct sets the base pitch so the sequence can be tuned/transposed. The trigger advances the sequence, just as it would using the sequencer in wave mode. The CV flips through 16 sequences. The step output could be a gate but I could also do all sorts of things, like volume slides, gate length, etc. That could make it function as a basic gate or more like a VCA.

    The pattern view might look something like this:

    00 C-4 80
    01 ... ..
    02 D#4 40
    03 ... ..
    04 F-4 30
    05 G-4 80
    06 ... ..
    07 ... ..
    08 END ..

    Recording a sequence could be done via the knobs and optionally using CV and Trigger to fill in the note at the current played note (which might require quantization). Similar to the Sampler mode, each “song” would have its own named directory on the SD card with 16 text files that would comprise each pattern. Meaning that I can probably find a suitable file format that allows for making sequences externally by editing a text file where each line in the file corresponds to a row. That also allows for the potential for external tools. Of course the SD card is mounted at the back of the module, so moving these to/from can be a bit annoying. I did this by design. While it might not be a popular move, I really don’t like seeing card slots on my Eurorack modules. And keeping it in the back avoids it from getting popped out during a live performance and such. Perhaps I can solve that by adding a header for folks to panel mount the SD card slot somewhere, but that’s a thought for another day.

    Anyways! I dunno if I’ll end up doing this but I think it could end up being worth it. This wouldn’t be the only tracker in Eurorack, and it certainly won’t be the most complex. But I grew up on trackers and they have been a part of my life ever since, so it perhaps makes some sense to pay homage to them as an additional feature.

    Posted on

    Next WaveBoy PCB Revision

    I’ve spent the weekend off and on working on another PCB revision to WaveBoy. The next revision will use purple PCBs to make the front panel. Not many people will see it (unless folks have transluscent cases, like my acrylic ones) but it’ll help identify the board revision.

    Folks that have already purchased the Pre-Release, worry not! This version doesn’t add any features though I will have to keep multiple versions of the firmware around between the revisions, though that’s no big deal.

    The main change is switching up the right encoder wiring to use pin 0 instead of pin 13 for one of the encoder pins. Pin 13 is used by an on board LED on the ItsyBitsy which has to be removed for the encoder to work properly. This update avoids that extra step which makes assembly easier but doesn’t otherwise change the functionality.

    Otherwise it’s minor updates: The SD card slot has been moved over so the card is easier to remove. The protection diodes are moved to the opposite side for using a keyed connector for Europower and I cleaned up a bit of a layout. After the pre-release (I have one PCB left), I will probably settle on the yellow/blue OLED displays as well as I can get those in bulk.

    I plan on doing a medium run of 50 PCBs which, along with looking at some alternative suppliers, should keep the module cost lower. To say I’m a boutique Eurorack store is perhaps an understatement so while this thing would be much cheaper if I were able to make thousands, as much as I love my quirkly little module, I don’t see it getting anywhere near that adoption. If it does, that’s a great problem to solve for another day. But that does mean the cost of the module probably won’t move too much.

    Posted on

    WaveBoy: Sampler CV

    I don’t yet have a video demo of it. Partly because the UI could stand to provide more info and partly because I haven’t gotten to it yet; but I implemented the sample banks sort of idea for the WaveBoy Sampler I was toying with.

    Each patch is now a collection of 16 samples. Just like with the Wave mode, you select which sample you want via the CV input. The menu then lets you select from different patches (each with their own 16 samples).

    Samples are still 8-bit and up to 64k. The sample rate doesn’t really matter or is to taste based on the fidelity and sample length you want. Reading off the SD card seems fast enough to play samples of arbitrary length but I’m not yet sure if I should actually implement that. The limitation is kinda part of the game (noting for my DreamTracker program on the X16, samples are limited to 8k).

    Still to do is adding meta-data (sample names, desired looping perhaps, sample-rate multiplier, etc.) and better nav of the patches but the foundational parts of the feature are there and I’ve already been able to jam out to some drums with it.