back to list

Sysex Commands for Microtuning a TX-802

🔗Daniel <danielioniusguitars@...>

10/15/2011 1:41:30 AM

Hi everyone,

I don't post here often, but I'm a little bit addicted (obsessed lol) with microtuning and have all kinds of spreadsheets and scripts for retuning my synths, even a waveform generator that creates waveforms for use in a sampler!

I just bought a TX-802. I'm seriously in love with it.

I'll paste what I posted in the Yamaha DX group. I hope someone here can help me with my deciphering (Manuel??) LOL

Hi guys!

I bought a TX-802 two days ago, I love it! Better than any software out there! I
have owned an SW1000XG for some time and have found that when I save a .syx file
in the XG Editor in XGWorks I can then open this in WinHex and edit it. I do
this so I can create microtonal scales (just intonation) using the XG Scale-Note
parameter.
Anyway, that particular sysex file for the SW1000XG is always the same number
of bytes, and serves as a blank template for any edits you may wish for the
whole SW1000XG.

I was wondering, is there a similar sysex file for the TX-802? So I can go in
there and find where the microtuning chunk is and edit it for the two internal
banks and the 64 cartridge banks? I prefer to edit in Hex because then I can
create a WinHex script in Excel and it will just write over the old hexidecimal
values. Very quick and easy (if you know how to write a WinHex script).

For anyone interested, the TX-802 apparently is not tuned in increments of whole
cents. At least the microtune edit parameter seems to have 1024 values to edit
per octave, which is 1200/1024 = 1.171875 cents per parameter. I read that here:
http://www.lucytune.com/midi_and_keyboard/yamaha_01.html
It seems to prove right, cause when I account for this, my tunings seem better
than using the offsets as if they were tuned perfectly to ET.

In other words, to create a microtonal scale with the TX-802, you need to
calculate your desired values (preferably in cents) and then divide those values
by 1.171875 to get your parameter value.
eg.
C Just

Desired Scale in Cents calc TX-802 Parameter Offset
0.00000000 / 1.171875 (rounded) 0 0
70.67242686 / 1.171875 (rounded) 60 -25
203.91000173 / 1.171875 (rounded) 174 4
315.64128700 / 1.171875 (rounded) 269 13
386.31371386 / 1.171875 (rounded) 330 -11
498.04499913 / 1.171875 (rounded) 425 -1
590.22371560 / 1.171875 (rounded) 504 -8
701.95500087 / 1.171875 (rounded) 599 2
772.62742773 / 1.171875 (rounded) 659 -23
884.35871300 / 1.171875 (rounded) 755 -13
996.08999827 / 1.171875 (rounded) 850 -3
1088.26871473 / 1.171875 (rounded) 929 -9
1200.00000000 / 1.171875 (rounded) 1024 0
1270.67242686 / 1.171875 (rounded) 1084 -25
1403.91000173 / 1.171875 (rounded) 1198 4
1515.64128700 / 1.171875 (rounded) 1293 13
1586.31371386 / 1.171875 (rounded) 1354 -11
1698.04499913 / 1.171875 (rounded) 1449 -1
1790.22371560 / 1.171875 (rounded) 1528 -8
1901.95500087 / 1.171875 (rounded) 1623 2
1972.62742773 / 1.171875 (rounded) 1683 -23
2084.35871300 / 1.171875 (rounded) 1779 -13
2196.08999827 / 1.171875 (rounded) 1874 -3
2288.26871473 / 1.171875 (rounded) 1953 -9
2400.00000000 / 1.171875 (rounded) 2048 0
2470.67242686 / 1.171875 (rounded) 2108 -25
2603.91000173 / 1.171875 (rounded) 2222 4
2715.64128700 / 1.171875 (rounded) 2317 13
2786.31371386 / 1.171875 (rounded) 2378 -11
2898.04499913 / 1.171875 (rounded) 2473 -1
2990.22371560 / 1.171875 (rounded) 2552 -8
3101.95500087 / 1.171875 (rounded) 2647 2
3172.62742773 / 1.171875 (rounded) 2707 -23
3284.35871300 / 1.171875 (rounded) 2803 -13
3396.08999827 / 1.171875 (rounded) 2898 -3
3488.26871473 / 1.171875 (rounded) 2977 -9
3600.00000000 / 1.171875 (rounded) 3072 0
3670.67242686 / 1.171875 (rounded) 3132 -25
3803.91000173 / 1.171875 (rounded) 3246 4
3915.64128700 / 1.171875 (rounded) 3341 13
3986.31371386 / 1.171875 (rounded) 3402 -11
4098.04499913 / 1.171875 (rounded) 3497 -1
4190.22371560 / 1.171875 (rounded) 3576 -8
4301.95500087 / 1.171875 (rounded) 3671 2
4372.62742773 / 1.171875 (rounded) 3731 -23
4484.35871300 / 1.171875 (rounded) 3827 -13
4596.08999827 / 1.171875 (rounded) 3922 -3
4688.26871473 / 1.171875 (rounded) 4001 -9
4800.00000000 / 1.171875 (rounded) 4096 0
4870.67242686 / 1.171875 (rounded) 4156 -25
5003.91000173 / 1.171875 (rounded) 4270 4
5115.64128700 / 1.171875 (rounded) 4365 13
5186.31371386 / 1.171875 (rounded) 4426 -11
5298.04499913 / 1.171875 (rounded) 4521 -1
5390.22371560 / 1.171875 (rounded) 4600 -8
5501.95500087 / 1.171875 (rounded) 4695 2
5572.62742773 / 1.171875 (rounded) 4755 -23
5684.35871300 / 1.171875 (rounded) 4851 -13
5796.08999827 / 1.171875 (rounded) 4946 -3
5888.26871473 / 1.171875 (rounded) 5025 -9
6000.00000000 / 1.171875 (rounded) 5120 0
6070.67242686 / 1.171875 (rounded) 5180 -25
6203.91000173 / 1.171875 (rounded) 5294 4
6315.64128700 / 1.171875 (rounded) 5389 13
6386.31371386 / 1.171875 (rounded) 5450 -11
6498.04499913 / 1.171875 (rounded) 5545 -1
6590.22371560 / 1.171875 (rounded) 5624 -8
6701.95500087 / 1.171875 (rounded) 5719 2
6772.62742773 / 1.171875 (rounded) 5779 -23
6884.35871300 / 1.171875 (rounded) 5875 -13
6996.08999827 / 1.171875 (rounded) 5970 -3
7088.26871473 / 1.171875 (rounded) 6049 -9
7200.00000000 / 1.171875 (rounded) 6144 0
7270.67242686 / 1.171875 (rounded) 6204 -25
7403.91000173 / 1.171875 (rounded) 6318 4
7515.64128700 / 1.171875 (rounded) 6413 13
7586.31371386 / 1.171875 (rounded) 6474 -11
7698.04499913 / 1.171875 (rounded) 6569 -1
7790.22371560 / 1.171875 (rounded) 6648 -8
7901.95500087 / 1.171875 (rounded) 6743 2
7972.62742773 / 1.171875 (rounded) 6803 -23
8084.35871300 / 1.171875 (rounded) 6899 -13
8196.08999827 / 1.171875 (rounded) 6994 -3
8288.26871473 / 1.171875 (rounded) 7073 -9
8400.00000000 / 1.171875 (rounded) 7168 0
8470.67242686 / 1.171875 (rounded) 7228 -25
8603.91000173 / 1.171875 (rounded) 7342 4
8715.64128700 / 1.171875 (rounded) 7437 13
8786.31371386 / 1.171875 (rounded) 7498 -11
8898.04499913 / 1.171875 (rounded) 7593 -1
8990.22371560 / 1.171875 (rounded) 7672 -8
9101.95500087 / 1.171875 (rounded) 7767 2
9172.62742773 / 1.171875 (rounded) 7827 -23
9284.35871300 / 1.171875 (rounded) 7923 -13
9396.08999827 / 1.171875 (rounded) 8018 -3
9488.26871473 / 1.171875 (rounded) 8097 -9
9600.00000000 / 1.171875 (rounded) 8192 0
9670.67242686 / 1.171875 (rounded) 8252 -25
9803.91000173 / 1.171875 (rounded) 8366 4
9915.64128700 / 1.171875 (rounded) 8461 13
9986.31371386 / 1.171875 (rounded) 8522 -11
10098.04499913 / 1.171875 (rounded) 8617 -1
10190.22371560 / 1.171875 (rounded) 8696 -8
10301.95500087 / 1.171875 (rounded) 8791 2
10372.62742773 / 1.171875 (rounded) 8851 -23
10484.35871300 / 1.171875 (rounded) 8947 -13
10596.08999827 / 1.171875 (rounded) 9042 -3
10688.26871473 / 1.171875 (rounded) 9121 -9
10800.00000000 / 1.171875 (rounded) 9216 0
10870.67242686 / 1.171875 (rounded) 9276 -25
11003.91000173 / 1.171875 (rounded) 9390 4
11115.64128700 / 1.171875 (rounded) 9485 13
11186.31371386 / 1.171875 (rounded) 9546 -11
11298.04499913 / 1.171875 (rounded) 9641 -1
11390.22371560 / 1.171875 (rounded) 9720 -8
11501.95500087 / 1.171875 (rounded) 9815 2
11572.62742773 / 1.171875 (rounded) 9875 -23
11684.35871300 / 1.171875 (rounded) 9971 -13
11796.08999827 / 1.171875 (rounded) 10066 -3
11888.26871473 / 1.171875 (rounded) 10145 -9
12000.00000000 / 1.171875 (rounded) 10240 0
12070.67242686 / 1.171875 (rounded) 10300 -25
12203.91000173 / 1.171875 (rounded) 10414 4
12315.64128700 / 1.171875 (rounded) 10509 13
12386.31371386 / 1.171875 (rounded) 10570 -11
12498.04499913 / 1.171875 (rounded) 10665 -1
12590.22371560 / 1.171875 (rounded) 10744 -8
12701.95500087 / 1.171875 (rounded) 10839 2

You may notice the offsets are not your regular just intonation offsets from ET
with the TX-802's resolution. By the way I use a scale I call an ionian
augmented 5th. It has a 24/25 b2 and a 16/25 #5.

So if anyone knows the hex values to program a microtuning bank (the header and
chunks) and/or has the global sysex file for TX-802 please tell me!

Thanks,

Daniel.

And:.....

Hi,

Not sure what you want exactly, but this is how INIT micro-tuning TX802 sysex looks like (see the attachement, 274 bytes)

R

1 of 1 File(s)

TX802MT.SYX
Fri Oct 14, 2011 4:46 pm

Show Message Option
Renata Dokmanovic <renatadokmanovic@...>
renatadokman...
Offline
Send Email

Re: TX-802 Default Sysex Files to edit in WinHex predominantly for scripting Tunings

Thanks so much everyone.

Well I managed to send the tuning dump from my TX802 after I sat there for ages
and created a scale in there!

I the inspected it in MIDI-OX and saved it as .sxy and opened it in my hex
editor.

The file is different from the one you sent me, which means my tuning worked.

Now I'm reading through these 274 bytes trying to decipher them. I convert the
values to decimal but I just can't make sense of it all. I assume the data chunk
begins at offset 21. After this I just can't see how my tuning values are
represented in the following 254 bytes (which assumes there is one tuning note
for every two bytes).

It really is so confusing...

Daniel.

Thanks all.

BTW: The TX-802 seems to have a strange anomaly: When you create a tuning you
cannot flatten the C-2 note or the C#-2 note. The default parameter for C-2 AND
C#-2 is 0, instead of C-2 being the sole parameter 0! Then D-2 is 85, D#-2 is
170, E-2 is 256 etc. In microtuning edit, the whole keyboard is represented by
sequential ascending numbers, in divisions of roughly 85. Remember that an
octave (1200 cents) is divided by 1024, to give a resolution of 1.171875 for
each tuning offset. Dividing the space between two neighbouring notes (100
cents) by 1.171875 = 85.333333333, and Yamaha seem to round down.