Synth Forum

Notifications
Clear all

M8X - How do you test pitch bend to distinguish 'internal' versus 'external' resolution?

1 Posts
1 Users
0 Reactions
4 Views
 Toby
Posts: 291
Reputable Member
Topic starter
 

How do you test pitch bend resolution? Posting new thread since replies still seem to be broken (although Daryl's showed up for some reason).

I am quite curious as well with regard to whether or not the pitch bend issue was fixed on the M or not!?

I'd be happy to test on my M8X if I knew how to construct a meaningful test. Can someone suggest a way to distinguish (other than 'use your ears' please) between what is being done internally and what is being sent externally?

Using MIDI-OX to capture the pitchbend output seems to show the same on the M as what others have already posted. This is from tiny downward, and release, movement of the pitchbend wheel for two different settings

----------------------

PitchBend -2 +2

TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT
001213AD 1 2 E0 50 3F 1 --- Pitch Bend
001213DF 1 2 E0 30 3F 1 --- Pitch Bend
001213EA 1 2 E0 00 3F 1 --- Pitch Bend
00121402 1 2 E0 30 3E 1 --- Pitch Bend
0012141C 1 2 E0 60 3D 1 --- Pitch Bend
00121426 1 2 E0 50 3D 1 --- Pitch Bend
00121462 1 2 E0 20 3D 1 --- Pitch Bend
0012147B 1 2 E0 00 3D 1 --- Pitch Bend
001214CC 1 2 E0 30 3D 1 --- Pitch Bend
001214DB 1 2 E0 70 3E 1 --- Pitch Bend
001214E5 1 2 E0 00 40 1 --- Pitch Bend
0020C85F 1 2 90 3C 4A 1 C 3 Note On
0020C8EC 1 2 90 3C 00 1 C 3 Note Off

PitchBend -48 + 24

TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT
00236D74 1 2 E0 50 3F 1 --- Pitch Bend
00236D7D 1 2 E0 30 3F 1 --- Pitch Bend
00236F70 1 2 E0 00 3F 1 --- Pitch Bend
00236F7A 1 2 E0 40 3E 1 --- Pitch Bend
00236F89 1 2 E0 60 3D 1 --- Pitch Bend
00236F93 1 2 E0 00 3D 1 --- Pitch Bend
00236F9D 1 2 E0 10 3C 1 --- Pitch Bend
00236FAD 1 2 E0 50 3B 1 --- Pitch Bend
00236FB7 1 2 E0 10 3B 1 --- Pitch Bend
00236FC1 1 2 E0 60 3A 1 --- Pitch Bend
0023706C 1 2 E0 30 3A 1 --- Pitch Bend
00237099 1 2 E0 40 3A 1 --- Pitch Bend
002370A9 1 2 E0 10 3B 1 --- Pitch Bend
002370B2 1 2 E0 00 3D 1 --- Pitch Bend
002370C2 1 2 E0 30 3F 1 --- Pitch Bend
002370CC 1 2 E0 00 40 1 --- Pitch Bend
0023AAA1 1 2 90 3C 50 1 C 3 Note On
0023AB6A 1 2 90 3C 00 1 C 3 Note Off
----------------------

Data1 is LSB and Data2 is MSB. You can clearly the MSB value moving only one value at a time. In the first set of data you can also see the LSB values continually decrease for the same MSB value. For MSB=3D they are 60,50,20,00,30. The last 30 went up but is most likely an anomoly due to an accidental finger wiggle.  

My ear doesn't detect any 'stepping' but that is highly subjective.

External - it appears that the M8X is sending 2 byte resolution values.

Internal - that doesn't mean they are actually being used internally.

The M8X is stated to support at least some MIDI 2.0 functionality for many of the controllers. There is also a new MIDI 2.0 port that supports the UMP format that MIDI 2.0 uses. That new port allows drivers to support both MIDI 1 and 2.

See p.97 of the operations doc.

On the 'Utility -> Settings -> Advanced' screen you need to select 'Generic' for the USB driver mode and your computer needs to support MIDI 2.0 spec. Microsoft hasn't yet released an OS update that supports that spec.

Pages 256-258 of the data list show the UMP format for the midi messages. 

https://usa.yamaha.com/products/contents/music_production/midi-2-0/index.html

------------------

MIDI 2.0 content supported by MONTAGE M V2.0

MONTAGE M can communicate the following controller data with MIDI 2.0 compatible devices in high resolution.

The data resolution of the following physical controllers is 10 bits (1,024 steps).

・ Note Velocity

・ After Touch (Poly, Channel)

・ Super Knob

・ Pitch Bend

・ Modulation Wheel

・ 8 Knobs

・ 8 Sliders

・ Foot Controller

・ Sustain

-----------------

The 'external' wrinkle there is you need a MIDI 2.0 compatible device to do that.

The 'internal' wrinkle is the same as before - how do you know, for certain, just what resolution is being used internally at various stages?

Is there some combination of control assignment curve and destination parameter that could be used to determine a clear delineation of resolution and/or values actually being used?

I was able to find such a combination for the testing I did to determine how Level/Vel & Offset are related. See my 'M8X - Level/Vel & Offset are computed BEFORE applying amp/level curve selection.

 
Posted : 08/10/2024 5:54 pm
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us