YouTube: Music demo 1 Music demo 2 Music demo 3 Tutorial: Making music on FATCAT
By comparing FATCAT to mod trackers I'm not trying to imply that it's compatible with any existing mod tracker file format or that it's an equally capable tool performance-wise. I simply mean that it has a similar number-based user interface and song data organization. It's also suitable for composing similar sounding types of music, using low resolution samples/waveforms and arpeggiated chords.
These are FATCATs main features:
- Three tracks, with preset instruments:
- Drum track. Uses a combination of drum samples and white noise for a four piece drumkit. Kick, snare, closed hihat and open hihat / cymbal. Each drum sound has a variation (for example soft/hard kick). The hihat has a "flam" option used for performing a quick syncopated double hit.
- Base track. Uses a simple square waveform. Portamento effect optional, for base "slide" between notes.
- Arp track. Uses a more complex sawtooth wavetable, which allows for some variations in timbre. Can be used either as a lead instrument or for arpeggiated chords, or a combination.
- One song can be saved to eeprom memory. The song can contain 8 patterns. Each pattern has a resolution of 16 rows.
- The song can use up to eight different arpeggiated chords, with repeating patterns of up to 16 notes. Chords can be edited by the user. Arpeggios can be performed using time signatures independent of the song itself.
- The patchbay can be used during playback for performing improvised variations on the original song. Bridging different patchbay sockets with resistors alters either the instrument sounds, the song rythm, or the order by which the song data is being played back. Certain sockets of the patchbay also connects directly to the audio output signal. These can be used for creating feedback loops with the playback engine logic, which can lead to some very interesting and unpredictable musical variations.
- The patchbay pinheader serves a secondary function as a ISP interface for the MCU. This makes it possible to update the firmware at any point after building the device. The ISP interface can also be used for transferring songs between the MCU EEPROM and a PC.
- There is currently some limited support for connecting two FATCAT devices to each other, allowing for cross-device excange of variables during playback. It might be possible for future firmware versions to support master-slave device syncing of playback tempo.
Project motivation and practical usefulness
At it's core this project is an exercise in designing a usable musical instrument that requires an absolute minimum of components, effort, and money to build. The project also explores how an effective user interface can be designed, using a very limited set of physical components.
Often with modern instruments or software, music editing turns into a largely visual enterprise, which can sometimes stifle musical creativity. In my view, the main usefulness of FATCAT is as an antidote for that. The point with FATCAT is to give your eyeballs and mouse arm a break, and by doing so giving your ears and mind a chance to roam free. Using the device is also a way of purposefully subjecting oneself to creative limitation, which is often cited as a means for creating art that wouldn't have materialized if given infinite options and resources.
The main challenge lies in the balancing of limited system resources, in order to maximize musical versatility and performance. You can run out...Read more »
Cool project. Gives me some great ideas for 3D printing an insert for my own Altoids tin project (eMBee ONE pocket computer). Thanks for the advice!