The Swiss Army Knife of Audio Synthesis

Thirty years ago, we would be lucky if a computer could play audio. Take a computer from twenty years ago, and you’ll be lucky if it can play an MP3 in real-time. Now, computers can handle hundreds of tracks of CD-quality audio, and microcontrollers are several times more powerful than a desktop computer of the mid-90s. This means, of course, that microcontrollers can do audio very, very well. For his entry to the Hackaday Prize, [Fabien] is capitalizing on this power to create a Swiss Army knife of audio synthesis. It’s called the Noise Nugget, and it’s just what you need when you want to put audio in anything.

The microcontroller in question is an ARM Cortex-M4 running at 180MHz, with a quality DAC. There’s connectivity in the form of USB, two audio outs, one audio in, I2C, UART, and GPIOs. With this, you’ve got a digital synthesizer with a MIDI interface, audio effects for guitar pedal tomfoolery, an audio effect trigger board for playing pre-recorded sounds, a digital recorder, and a USB sound interface.

So, with all that processing power, what can the Noise Nugget actually do? Well, first of all, it’s a sampler. [Fabien] has a video demo of the Noise Nugget set up in sampler mode, where it can play a lute-ish sample and a cat sound. All of this is controlled over MIDI and played through a cheap speaker. The results — except for the cat sample — sound great. You can check that video out below.

Continue reading “The Swiss Army Knife of Audio Synthesis”

Shell Script Synthesizer Knocks Your SoX Off

Sound eXchange, or SoX, the “Swiss Army knife of audio manipulation” has been around for as long as the Linux kernel, and in case you’re not familiar with it, is a command line tool to play, record, edit, generate, and process audio files. [porkostomus] was especially interested about the generating part, and wrote a little shell script that utilizes SoX’s built-in synthesizer to compose 8-bit style music.

The script comes with a simple yet straightforward user interface to record the lead and bass parts into a text file, and play them back later on. Notes from C2 to C5 are currently supported, and are mapped to the keyboard in a two-row piano layout. The output file format itself is just a plain text listing of the played note, wave form, and note length. This lets you easily edit the song or even generate it from an alternative source, for example MIDI. Also note that there are no initial audio files required here, SoX will generate them as needed.

Admittedly, the command line interface may not be the most convenient way to create music, but nevertheless, it is a way — and that is [porkostomus]’s main mission here. Also, SoX is fun — and versatile, you can apply its audio effects even on images, or decode strange signals sent from a helicopter with it.

Tiny-TS: Just How Small Can A Playable Synethesiser Get?

The early electronic synthesizers were huge machines, racks of electronic modules that filled entire rooms. Integration of electronics over time successively reduced them, first to the size of a large piece of furniture, then to  tabletop consoles, to standalone keyboards, and to small MIDI black boxes taking their instructions from another instrument or a computer. The original mass of discrete electronics had been reduced to a pile of ICs, then chipsets, then finally single ICs and software implementations on microcomputers.

It’s thus possible to make a synthesizer these days that is pretty small. If you can fit a microcontroller in it, you can fit a synth into it. But how about a playable synthesizer? One with a keyboard, on which you can give a recital? How small can you make one of those? [Jan Ostman] has a contender for the smallest playable synthesizer prize with his Tiny-TS, a credit-card synthesiser with a one-octave capacitive keyboard and analog controls for synthesis parameters.

The heart of the synth is an ATMega328, for which he provides the software. The parameters adjustable by a series of pots are listed as DCO: Coarse pitch and Double, DCF: Filter peak and ENVmod, and ENV: Attack and Release affecting amplitude. You can build your own, or he tells us that he has the project up as a Kickstarter campaign if you fancy the chance of buying one ready-made.

In case you are wondering, it doesn’t sound too bad. Some minimalist synths sacrifice the breadth of sounds they can create, but not this one. He takes it through its paces in a YouTube video which we’ve put below the break.

Continue reading “Tiny-TS: Just How Small Can A Playable Synethesiser Get?”

Synth Secrets Exposed!

If you’re at all interested in synthesizers, but haven’t gotten as deep into programming them as you’d like, you absolutely need to check out the old “Synth Secrets” column from Sound on Sound magazine. Across 63(!) articles, the author [Gordon Reid] takes a practical approach to learning synthesizers: trying to copy the sound of one real instrument at a time, with concrete examples built up on one particular synthesizer.

synth_secrets_example[Gordon]’s approach to synthesis is straightforward, but that’s exactly what makes it useful. After the first couple articles, which introduce you to the common functions of many synthesizers, most articles follow a simple pattern: listen to the instrument’s characteristic sounds, look to the physics behind how it produces them, and then figure out how to replicate as much of the sound as is necessary (or possible) to capture the essence of the instrument. Sometimes when the instrument’s sounds are particularly complex, as in this series of articles on the violin, he’ll break this simple formula up across multiple articles.

Now you might complain that you don’t have a Korg MS-20 or an ARP Odyssey or whatever particular old synth is being used in any particular article. But the “Secrets” are actually so fundamental, and by-and-large worked out on such simple analog synths, that even if you can’t make exactly the same sounds as [Gordon] does, you’ll understand how he got where he got, you’ll probably get pretty close, and you’ll have tuned up your ears along the way.

Plus, you’ll learn a tremendous amount about the character and capabilities of your synthesizer by trying. Working through the “Synth Secrets” examples would be a great way to get to know a new synth in your rack, even if you’re only into space noise and not interested in reproducing real instruments.

But if you are into space noise, also check out our own Logic Noise series. You won’t learn anything about real instruments, but you’ll learn a heck of a lot about the 4000-series logic chips and the abuse thereof.

Thanks [Greg Kennedy] for reminding us of this gem, and for re-installing the “Synth Secrets” bee in our bonnet!

Retrotechtacular: Hand-Synthesized Sound

When you think of early sound synthesis, what technologies come to mind? The Hammond Organ?  Or perhaps its predecessor, Thaddeus Cahill’s Telharmonium? In the early 1920s and 30s, many Bauhaus artists were using paper and film to synthesize musical instruments.

A few of them experimented with the optical film soundtrack itself, drawing waveforms directly upon it. [Evgeny Sholpo] created an optical synthesizer he called the Variophone. It used cardboard disks with intricate cutout patterns that resembled spinning, sonic snowflakes.

During the early 1930s, an artist named [Nikolai Voinov] created short animated films that incorporated the cut paper sound technique. [Voinov]’s soundtrack looked like combs of varying fineness. For his animated figures, [Voinov] cut and pieced together characters from paper and made them move in time to his handmade paper soundtrack.

In [Voinov]’s “Dance of the Crow”, an animated crow struts his stuff from right to left and back again while working his beak in sync with the music. The overall effect is like a chiptunes concertina issuing forth from a crow-shaped pair of bellows. It’s really not to be missed.

Thanks for the tip, [Leo]!

Retrotechtacular is a weekly column featuring hacks, technology, and kitsch from ages of yore. Help keep it fresh by sending in your ideas for future installments.

Function Generator with Zero CPU Cycles

No one is sitting around their workbench trying to come up with the next great oscilloscope or multimeter, but function generators still remain one of the pieces of test equipment anyone – even someone with an Arduino starter pack – can build at home. Most of these function generators aren’t very good; you’re lucky if you can get a sine wave above the audio spectrum. [Bruce Land] had the idea to play around with DMA channels on a PIC32 and ended up with a function generator that uses zero CPU cycles. It’s perfect for a homebrew function generator build, or even a very cool audio synthesizer.

The main obstacles to generating a good sine wave at high frequencies are a high sample rate and an accurate DAC. For homebrew function generators, it’s usually the sample rate that’s terrible; it’s hard pushing bits out a port that fast. By using the DMA channel on a PIC32, [Bruce] can shove arbitrary waveforms out of the chip without using any CPU cycles. By writing a sine wave, or any other wave for that matter, to memory, the PIC32 will just spit them out and leave the CPU to do more important work.

[Bruce] was able to generate a great-looking sine wave up to 200 kHz, and the highest amplitude of the harmonics was about 40db below the fundamental up to 100 kHz. That’s a spectacular sine wave, and the perfect basis for a DIY function generator build.