Yamaha TX81Z

A template for the Yamaha TX81Z.


This is only set to transmit on MIDI channel 3.

The buffer is small, so until the Electra One can adjust the latency it is prone to a ‘MIDI Buffer Full’ error if one moves the controls too quickly.

I’ve changed the names of the some of the parameters for clarity, including giving the frequency ratios more meaningful names.

I have decided not to include controls for some of the rarely used parameters, like the foot and breath control settings and fixed frequencies.

The envelope animations are currently confusing representations because Attack, Decay and Release are in reverse to most synths, as Yamaha has used the lowest values for the longest rates.

To save an edited voice into the synth memory using the row of buttons at the bottom of page 3 you have to press ‘Play’, toggle on ‘Store’, advance to a memory slot, turn off ‘Store’, then finally press ‘Save’.


Thanks for that!

Please consider sharing a link to the public preset next time. I think it will make it easier for users to use it.

Just mentioned that in another thread. The MIDI Channel placeholder will be supported in the upcoming firmware. It will make it easier to change the channel for synths like TX81Z where the MIDI channel is part of the sysex messaging.

yes, I have it on the todo. @duster reported that. The only thing is that the change is not trivial. The idea is that it will be possible to define the “rate” of sending MIDI messages for each device.

Yes, Yamaha has the rate values inverted. The max value means the shortest time. That is the reason why I explicitly called that one envelope a “DX7 envelope”. I am thinking about a concept of generalization of the envelopes you and @nuipb shared their thoughts - so I have some user input on that.

Thanks Martin, I’ve replaced the EPR file with a web link.

1 Like

Are the Attack, Decay and Release values reversed on the DX7 envelope?

I really like the layout and that preset! And the bitmaps are great.

Just a note of warning: I think the bitmap data might disappear when the somebody tries to update the lust in the Editor. @tomas is working on the bitmap editor that will part of the Preset Editor.

Thanks. I worked hard to make Yamaha’s crazy and illogical layout more logical and comprehensible!

So far my bitmap lists haven’t been erased. I would paste a list in the code with the graphics, and then alter the list in the web app, and the graphics have stayed so far.

1 Like

Yes, really well laid out and the bitmaps are ace

Thank you for sharing

@martin I’ve been able to add patch request rules to the preset file. Am I able to update the file at the current URL without deleting the current one (overwrite it, version it)?

I’ve updated this preset to include the fixed frequencies, adding graphics to other settings like the frequency ratios, and I tried using the DX7 envelopes (they work slightly better).


Some updates to the Electra One that would make this preset almost perfect:

Envelopes: The envelope controls don’t match the synth exactly. I think if there was a single 8 parameter envelope (like the DX7 with 4 rates and 4 levels) where you could turn parameters off individually and invert any of the ranges, that should represent the envelopes of most synths.

Conditions: It would be great if one control could react to another, such as becoming disabled or changing it’s setting based on the value of another. It’s common on many synths that some settings are only available in certain modes.

Combos: It would be useful if a single control could send out a wholly different SysEx messages based on the current value (similar to the envelopes, they save on screen space by combining related settings).

Display: A ‘display node’ would be very useful, either to show the patch name or to show the value of certain setting. For example, the TX81Z combines 3 different parameters to set a fixed frequency (range, coarse and fine), but the value can’t be shown on the Electra One screen because the TX81Z uses shared parameter values to calculate the final frequency which displays on the synth screen. The ‘display node’ would need to accept formulas to make that work (not just display a the value from a single parameter).

1 Like