Roland TB-3 Extended Features & Parameter Recall

A Nice Surprise: Discovering the TB’s Hidden Features

As it turns out, the TB-3 is much more than meets the eye. When it first came out, it was a simple TB-303 emulator with 4 knobs, a touchpad with x/y/pressure control, and a built-in step sequencer. Then in 2014, Roland released an extended sysex document and firmware update (1.10) that allowed you to access more features, including control over a limited VCO section, distortion, and the two effect slots, as well as a 16-slot user patch storage section. If this weren’t enough, it was recently discovered that using an undocumented sysex control method it was possible to access 11 separate sections plus the sequencer, all controlled with midi. These are not novel uses of the effects, these are completely new sections:

  1. VCO independently control sine, square, saw, ring + pink/white noise
  2. VCF with ADSR envelope, amount, accent & keyfollow
  3. VCA with ADSR
  4. LFO modulates VCO, VCF, VCA with 5 shapes including S&H
  5. Cross Modulation 8 types combining square, saw, and noise sources
  6. Ring Modulation 4 mod shapes, separate from FX 1&2
  7. CV Offset inputs to SAW, SQR, RING, LFO
  8. Distortion 25 types with Drive, Bottom, Tone & wet/dry mix
  9. Effect 1 8  types + Pitch Shifter & EQ
  10. Effect 2 8 types + Reverb
  11. Parameter Assign
    1. allows assigning of any parameter to X or Y pad, press modulation, or effect knob with 0-255 value range
    2. all known parameters can be assigned (±256)
    3. all four controllers can be assigned simultaneously

WOW! It’s like getting a whole new synth! The only envelope control available before was VCF decay, but now all four stages of VCF/VCA are available and with the new additions you have total control over your sound, whether it’s long drones or staccato stabs, maybe even PWM. The crossmod feature is extensive, for example allowing the oscillators to play at different pitches, and ringmod is especially juicy. Parameter assign lets you control any of the 256 parameters with four selectable mod destinations, like the touchpad or effect knob. In addition, there is complete MIDI control over pattern parameters and portamento types/amounts. With pattern control, you could even write your own software to generate random or semi-random values for the pattern sequencer, although I have not tried editing patterns yet. Finally, you can set and receive the machine’s midi channel and modes remotely.

Still In Search of Parameter Recall

What I had set out to do at the beginning still wasn’t possible though, which was to back up sounds/patches, not to be confused with pattern backup, which was already possible. The sysex document provided with the 1.10  firmware update indicated that the patch, distortion, and fx1/2 sections were available for edit, a great improvement over the front panel alone. I had succeeded in getting a response from the synth as to the current values, but of course there were often many more unavailable parameters that were altering the sound that couldn’t be retrieved.

Then I started looking for editors on the internet to see if anyone else had taken snapshots or otherwise used the synth’s data to populate a visual interface. (Most people would have tried this first, but not me!!) I found one and viewed the sysex data in use and I immediately noticed it used a different, undocumented format and this led me to the TB-3 unofficial MIDI spec which maps out all the known parameters. I emailed him to ask about these undocumented sysex calls and when he answered he detailed what each of the commands returned. For those that are interested, here are the RQ1 commands:

  1. VCO F0 41 10 00 00 7B 11 10 00 08 00 00 00 00 0E 5A F7
  2. VCF F0 41 10 00 00 7B 11 10 00 0A 00 00 00 00 0B 5B F7
  3. VCA F0 41 10 00 00 7B 11 10 00 0C 00 00 00 00 05 5F F7
  4. LFO F0 41 10 00 00 7B 11 10 00 00 00 00 00 00 0D 63 F7
  5. Cross Mod F0 41 10 00 00 7B 11 10 00 04 00 00 00 00 0A 62 F7
  6. Ring Mod F0 41 10 00 00 7B 11 10 00 06 00 00 00 00 0E 5C F7
  7. CV Offset F0 41 10 00 00 7B 11 10 00 02 00 00 00 00 06 68 F7
  8. Distortion F0 41 10 00 00 7B 11 10 00 0E 00 00 00 00 09 59 F7
  9. Effect 1 F0 41 10 00 00 7B 11 10 00 10 00 00 00 00 5F 01 F7
  10. Effect 2 F0 41 10 00 00 7B 11 10 00 12 00 00 00 00 54 0A F7
  11. Param Assign F0 41 10 00 00 7B 11 10 00 14 00 00 00 00 12 4A F7

If you send the TB-3 these 11 commands, the machine will spit out all the information it contains in sysex format, and the data the TB3 returns can be recorded. When played back they will load into any location’s edit buffer, user or preset, but will not overwrite any sounds. Program change isn’t even necessary because you are just overwriting the location’s edit buffer. Create a named folder for each new patch and now  you have all the information you need to recall a patch’s full parameters. Even though I didn’t technically find patch storage, I found the next best thing — complete parameter recall!

Paradise Gained

Now you sound designers out there don’t have to settle for a stock preset or worry about overwriting one of your precious 16 user slots. With all these parameters you can seriously mangle a sound, and once you get your main patch designed, use the extensive Equalizer from FX 1 and reverb or delay from FX 2 to add the finishing touches for your mix. Other ideas include using 3 separate ring modulations, dual delays, crossmod into pitch shift/phaser, the possibilities are practically endless, but whatever you come up with, you can save them all to recall for a later session. No longer is the TB-3 just a desktop toy playing preset sounds, it can be a powerful workhorse in your studio. This is now a top-notch machine that I can’t wait to explore and design on.