SimSam 1.0

Unveiled at the beginner’s class at Handmade Music Austin #4, the SimSam (Simple Sampler) is a single-chip “sample-rate cruncher” that’s glitchy as all-get-out but only costs about $8-$12 in parts. It’s an effect with an input and output jack; and it’s a noise-maker since a jumper shorts the output back into the input when nothing is plugged into the input jack. We built 28 SimSams in a couple hours at the workshop.

Update: SimSam 2.0

SimSam 2.0 is an improved version that runs the same code as v1.0 (thus has the same functionality), but adds a Reset button. This button is on the left. The other two buttons are the same as SimSam v1.0. Also, on the PCB v2.0 there is a spot for a fourth button underneath the middle button. This is not used and only for testing/hacking your own firmware. Really, it will do nothing (except possibly damage the chip) if you install a button here, so don’t think about it. The code uses it as an output, low when the code is initializing and high when it’s running.

What the heck is this thing?

The heart of it is a programmable AVR chip, the ATTINY85. This 8-pin chip has 512 bytes of SRAM memory, which is used to simultaneously record and play a constantly changing “sample.” Think of the SRAM as a very very short tape loop (a few milliseconds long). The signal comes in the Audio Input jack and gets stored into SRAM (via a virtual “record head”) at a variable rate called the “sample rate”. Sample rate can be thought of as the speed of the motor on a tape-deck that’s recording. While that’s happening, the SRAM is also being played back (via a virtual “playback head”) and sent out the Audio Output jack. Two buttons affect the sample rate to get different effects. The button on the right cycles through one of 8 different rates, which effectively changes the pitch of the output– but don’t think of it like a pitch shifter, it’s way glitchier than that. If you hold this button down, recording to SRAM is disabled, and the playback just plays whatever happens to be stored in SRAM. Since the SRAM is so tiny, this “sample” sounds like a tone with a weird waveshape. Finally, when you hold down the button in the middle (or the left button for v1.0), it cycles through all the sample rates at a fast pace to create a warble effect. In v2.0, there is a button on the left that resets the whole circuit (because it crashes like crazy, read below…)

That’s it, that’s all it does.

Ok, whatever, show me the tech

What’s wrong with you?

Ok, there are some things wrong with the SimSam. For one, it has to have the watchdog timer enabled, and that thing goes off every few seconds. For those of you who aren’t cringing, the watchdog timer is a little counter that runs in the background and automatically resets the SimSam whenever it freezes up… so the translation is that the SimSam is trying its darndest to freeze up constantly, but the watchdog keeps bailing it out.

Since it’s resetting all the time, your current sample rate would also get reset, so to keep the sound somewhat consistent (heh heh) it stores the sample rate into EEPROM every time you press the sample button. EEPROM is a non-volatile memory which means it doesn’t get erased when the chip is reset. Then when the chip starts back up again, it reads the settings from EEPROM and all you hear is a tiny click amidst a gazillion other clicks pops robots whines zooms and crashes. Of course, EEPROM can only be written reliably 100,000 times, and any decent game player can top that in a day. So forget reliability. Tomorrow it won’t work the same as it did today. If you don’t like it, fix my code and send me something better. Now leave me alone so I can make more circuits…

13 thoughts on “SimSam”

  1. I would like to build a SimSam, i have been thinking about an effect like this one for a while and it’s a pretty nice coincidence that you’ve built it. Do you sell a kit for it?

  2. I’ll put them back for sale… we have some left over from the workshops, and a small batch sold to Maker Shed. Give me a week or so to get the parts together again! The kit should be about $25

  3. Hi! I just put the soldering stuff down. I´ve got three buttons on my SimSam. What did i do to deserve that? And ther´s no info availible anywhere, not even in the kit.
    Well, it sounds good so i cant complain…

  4. Yep, the new version has an extra button: Reset– which simply resets the program because the old version had a habit of locking up… Anyways it’s not just an Escape Pod button, it actually is a functional playable button since the settings on the other control (playback rate) is saved in EEPROM prior to the reset. I apologize for the lack of docs… it’s a sort of side-project, not as fully supported as the other kits.

  5. My friend gifted me a Simsam 2.0 kit (no instructions), I built it but have no idea what those 3 pretty buttons do… As mentioned in a previous comment the “extra” button is a reset, so from left to right (with the 1/4″ Jacks facing noon) what button is which? (Please and thank you)

    Ps. You put out such awesome units that I’m going to have to populate my future modular with a s*** ton of your modules!!! Cheers.

Leave a Reply