Close

Plan for improvements and new features

A project log for FATCAT: Altoids Tin Mod Tracker

A drum machine, base synth and arpeggiator that fits in your pocket. User interface inspired by classic mod tracker software.

dejan-risticDejan Ristic 10/05/2018 at 07:280 Comments

In this post I'm taking stock of my original 2016 project  from a technical standpoint. I discuss which parts of the design that needs to be improved, and also try to figure out which new features I want to implement. 

The greatest need for improvement are in these areas:

Musical versatility

The original design was a bit to limited in its musical capability for the device to have any lasting appeal. There's only so much you can do with a few drum samples and a squarewave baseline. I want to add a third track for a lead/arpeggio instrument. I also want there to be some way of manipulating the music during playback, in order to create an improvised performance.

The prototypes drum track featured only three drum samples: Kick, snare and closed hihat. That's ok for a very minimalistic drum loop but it won't do in the long run. For one thing, an open hihat type sound is sorely needed. The reason for not including an OHH in the 2016 prototype was that my method for "faking" dual channel audio wouldn't allow for sustained drum sounds.

It would also be very useful to have a variation of each original drum sound, for example one kick drum that's high and punchy and another that's boomy. The 8k flash size of the ATtiny84 won't allow for a huge sound bank, but a few extra drum variations might be achievable. Thirdly, it could be useful to have a "flam" option for the snare and closed hihat, i.e. having an extra drum hit inbetween two rows in a pattern. That should be relatively easy to implement and would allow for drum loops with a bit more flair and personality.

It's clear  that the old playback engine I used (i.e. switching between PWM and CTC timer mode) won't suffice if I want to have a third track, and add open hihat to the drum track.

Audio output

Using speaker amplification and dual power supply rails is a hopeless concept if I want to claim that the hardware design is simple to build by hand. The obvious solution to the sound volume problem (discussed in the initial project log) is to have the MCU drive the speaker directly using push-pull operation with dual OCR outputs. (I hadn't realized this was an option earlier.) This should double the output volume, compared to using only one OCR output and tying the other speaker terminal to ground. The sound still won't be ground shaking, but at least you won't have to hold the device up against your ear to hear anything. This way I can design the device for use with a single AAA cell, instead of a li-ion battery.

Size

In Sweden you won't find Altoids in any grocery stores, so for my original 2016 prototype enclosure I used another, locally sourced breathmint brand. It seems the domestic maker community have since demanded Altoids tins for their projects because I recently noticed that my go-to online electronic component dealer have started carrying empty Altoids tins. After I had ordered a few I realized that their dimensions are quite a bit smaller than the ones I've used.

So for the new project I will need to use a smaller chunk of stripboard as a device PCB, meaning that I need to put some thought into how to layout the components in a more space efficient way.

Discussions