The shocking truth about deMIDulator Attacks (and Releases)
Dear Friends of the deMIDulator,
The Attack / Release feature has been fully refined and integrated into the deMIDulator's firmware. Sine wave is now able to achieve a nice woodwind tone - perfect for ethereal deep-forest jams. Square sounds thicker than ever and sample, can you know, do crazy stuff, like echo. Here are a few more audio samples demonstrating the feature. The Sine and Square tracks were recorded using clean waveforms (no modulation / pitch, though adding these creates a whole new set of sounds) and adjusting only Attack and Release times in the following sequence:
- Immediate Attack / Immediate Release (what everything sounded like before this feature)
- Fast Attack / Fast Release
- Medium Attack / Medium Release
- Medium Attack / Slow Release
The sample track was recorded in real-time by talking through the mic and releasing the record button just in time to record the word "echo", which I immediately begin replaying. I'm obviously abusing modulation (which controls sample playback direction) and pitch wheel here.
Aside from this new feature, the current firmware also fixes a variety of minor bugs that were treading on the deMIDulator experience. The sound output is now nice and smooth when switching between waveform / playback modes and enabling / disabling the microphone for recording or just talking; no more popping or clicking.
I've been testing the firmware read / write via MIDI SysEx using two different USB-MIDI adaptors on both Windows XP and Mac OS X and am happy to report that it's working perfectly. One of the MIDI adaptors that I've tested using SysEx Librarian for Mac OS X is $5 from Amazon.
As an example of a simple source code modification, for those who may be interested, I'd like to share a bit of technical information about how the deMIDulator generates its Sine and Square wave sounds.
The deMIDulator produces its Sine and Square wave sounds by sequentially reading values from a long list of numbers and writing each value to its audio output. The list of values is such that it describes the shape of the waveform. When it reaches the end of the shape, it just starts again at the beginning and keeps looping until you release the note.
You can find the source code file that describes these shapes here. Don't worry, it's just plain text, nothing fancy. In it you'll find three sets of numbers: "squareTable", "modulationBlendTable" and "sineTable". Let's just focus on the sineTable.
You'll notice that the values are listed in pairs and separated by a comma. Each set is preceded by the letters "db". This stands for "Declare Data of One Byte", which just tells the Assembler (the software that turns the source code text files into a program that will run on the PIC microcontroller) to write these values to the chip as is, without trying to decode them as anything else. Just rememBer this number Dammit! That's what it means.
To demonstrate that a list of numbers can describe a shape like a Sine wave, I'm going to distill the sets of values in "sineTable" into a single column. For example:
I'll change the first two lines in "sineTable"
- db 128,131
- db 134,137
and so on. No need for the "db" where we're going. You can find the single-column list of sineTable numbers is here. Plotting these numbers as a graph using a spreadsheet program (I used Open Office) will give you something that looks like this:
That looks like a sine wave to me!
And here's an actual oscilloscope capture of the deMIDulator's sine wave output:
So what can you do with this information? Well, if you want to replace the sine or square wave sound with your own custom shape, all you have to do is replace the list of numbers in the "sineTable" or "squareTable" with your own set of shape-describing numbers (256 of them, minValue = 0, maxValue = 255), assemble the source code and reprogram your deMIDulator.
Oh, is that all? Or, if you have a USB-MIDI adaptor and software (MIDI-OX for Windows, SysEx Librarian for Mac OS X) to update your deMIDulator via MIDI SysEx, you can send me your list of numbers, I'll assemble the code, convert it to a MIDI SysEx file and send it your way. It is quite possible to simplify this process if demand for the feature exists.
Now that you understand sineTable, the squareTable should be easy. The other table in that file is called "modulationBlendTable". This table serves the exact same function as the sine and square tables: it describes the shape of an audio waveform. When the MIDI modulation value = 0, this modulationBlendTable just sits there, sad and unused. As you increase the MIDI modulation value however, more and more of this modulationBlendTable waveform gets injected into the current Sine or Square wave shape, causing the modulation-controlled distortion effect. Changing the values in this table will change how MIDI modulation affects Sine and Square wave output sounds.
There are many similar ways in which the deMIDulator's sound and function can be easily modified.
Thanks for reading through this and thanks again for your support! 10 days remaining. Tell your friends! Tell your enemies!
seconds to go
Pledge $1 or moreYou selected
You'll receive my sincere gratitude & recognition of your support on the deMIDulator website.
Pledge $30 or moreYou selected
[ ** Skeletor Kit ** ] You'll get an unpopulated through-hole PCB, programmed PIC microcontroller and BOM (Bill of Materials), which includes information and links to distributors for purchasing the remaining components needed to build your deMIDulator. (Does not include enclosure)
Pledge $85 or moreYou selected
[ ** Barebones Kit ** ] Everything you need to build your own deMIDulator! Includes through-hole PCB, all electronic components and assembly instructions. (Does not include enclosure)
Pledge $125 or moreYou selected
[ ** Full Kit ** ] Includes everything in the "Barebones Kit" plus plastic switch caps, metal volume/cutoff knobs and a sweet laser-cut wood enclosure!
Pledge $165 or moreYou selected
[ ** Custom Kit ** ] The "Full Kit" plus a custom image of your choosing laser-etched onto the top of the enclosure.
Pledge $175 or moreYou selected
[ ** Complete ** ] The "Full Kit" completely assembled and tested - just like the one in the video.
Pledge $215 or moreYou selected
[ ** Custom Complete ** ] The "Complete" plus a custom image of your choosing laser-etched onto the top of the enclosure.
- (42 days)