Synth Forum

Notifications
Clear all

how a so high end synthesizer cannot provide a proper pitchbend?

89 Posts
19 Users
0 Reactions
16.6 K Views
Jason
Posts: 8229
Illustrious Member
 

I'm not sure which "letters" you're having issue with, but I'll just walk you through what the first reading means and this may help.

E0 00 40

Each of these are hex values. To differentiate hex from other numbers (since 40 hex doesn't "look" any different from 40 decimal) - I like to prefix hex values with "0x" which is the prefix used in the "C" programming language (and others).

MIDI commands can have a different count of hex values depending on the command. These you've captured have 3. The 1st value (0xE0) is the command type. There are a number of command types that combine the type AND MIDI channel. This happens to be one of those. The first alpha-numeric ("E" ) is the command half. We call this a nibble (half of a hex value with two alpha-numerics). The "E" is the upper nibble. The "0" is the lower-nibble and represents the channel number. "0" corresponds to MIDI channel 1. The hex values can be 0=Ch1, 1=Ch2, 2=Ch3, 3=Ch4, 4=Ch5, 5=Ch6, 6=Ch7, 7=Ch8, 8=Ch9, 9=Ch10, A=Ch11, B=Ch12, C=Ch13, D=Ch14, E=Ch15, F=Ch16. The upper nibble as "E" represents the pitch bend command.

The pitch bend command is always followed by two parameter bytes. The first byte is the LSB and second byte is the MSB.

So in the quoted 0xE0 message above, "0x00" is the LSB and "0x40" is the MSB. Both the LSB and MSB are a maximum of 7-bits (0x00-0x7F in hex) which is 0-127 in decimal.

The MSB of 0x40 is 64 in decimal. This is commonly the "half-way" point between 0 and 127. The LSB as "0x00" in the above is 0 in decimal. In total - if you put together the MSB and LSB 0x40 MSB and 0x00 LSB is the half-way mark of all of the values in the 14-bit range. The resultant value in decimal is 8192. We calculate this by 0x40 * (2^7) + 0x00. Where 0x40 is the MSB and 0x00 is the LSB. Multiplying the MSB by 2^7 (2 to the 7th power) is the same as shifting 0x40 to the left by 7 bits. Since 0x40 is a 7-bit value and 0x00 (LSB) is a 7 bit value - and the resulting full value is 14 bits - shifting over to the left by 7 bits then adding with the LSB is how we come up with a 14-bit value (8192 when converted to decimal).

The Linnstrument does not appear to be doing any magic here. If that sequence was smooth - meaning the Montage's tone generator producing sound (not a VST) - where other controllers are not - then I'm not sure what to attribute this to at all. Yes, the Linnstrument is stepping through some LSB values - not all - but a handful. Using a PC to step through even more than this still causes non-smooth behavior for me.

...

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 26/07/2019 5:03 am
 Jens
Posts: 0
New Member
 

The stated documentation says on output - Montage/MODX will only output 7-bits. So this matches spec. Not a bug. On input, there is no documentation stating what the capabilities are. BM's comments in earlier threads are the closest thing to a spec. However, these statements appear to over-state the capabilities.

Guess what I'm saying is that it's not a bug if BM's previous clarification is mistaken/misleading. The official documentation is ambiguous so the instrument does appear to be operating within the letter of what's printed.

Industry standard is to throw away precision - so Montage/MODX appears in-line with what most other keyboards do. Not exactly a leadership position - but at least not a weak one.

There's still merit to requesting this is improved - just important to put this in perspective.

Ok, agreed (except that there is LSB information for half the range, so not exactly after the spec πŸ™‚ ). Strange that the resolution available isn't used in most cases, then. Internally there should be no issue with too many messages.

 
Posted : 26/07/2019 3:40 pm
Jason
Posts: 8229
Illustrious Member
 

We have official word that this is being looked into. This one requires no 3rd party (like previous content discussions - such as WXC/LPC waveforms in legacy libraries) so the result should be more conclusive and, with a liberal dose of speculation, shouldn't take as long to sort out.

Set your clocks' alarms to a couple months from now for a follow-up "ping" (reminder) if there are no official updates before that.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 26/07/2019 7:07 pm
Posts: 0
Eminent Member
 

Beeing myself an old customer I usually criticzie many of the arbitrary or ilogical decissions of Yamaha that contradict the publicity of the products, decissions that many times are very close to lies.

In this case I must say that at the present moment there is not any phisycal potentiometer that can REALLY produce 16384 different voltages values for to be later converted to digital values.

It should not be forget never, that under the exact and transparent digital layer, lives the REALITY a savage and unstable territory called analog world, that is affected for all type of interferences, physical deterioration and quantical fluctuations.

I have worked with the most expensive analog mixing consoles that exist SSL, Neve, etc.. neither in any of them I have found ever a fader or rotary potentiometer that can handle more than 2000 different voltage values (beeing optimistic), so I ask myself how could an instrument, expensive of course but far of the cost of that millonary consoles, produce REAL 14bit values.

I know that digital interpolation exists, but this is not the reality, it is an artifact for to mask the phisical limits of the device cheating the users with aresolution that today really does not exist.

 
Posted : 26/07/2019 9:23 pm
Jason
Posts: 8229
Illustrious Member
 

I'm not sure that 14-bit A/D has been demanded for pitch bend. The complaint is that 7-bit is not enough to provide the performance requested by some users. There was some discussion, in this thread, about where the breaking point is in terms of pitch range and one can apply formula to determine how many more bits would give equal performance to the extremes (+/-24 semi-tone for the largest balanced one - wider for unbalanced) such that these wider ranges have the same steps as the documented "acceptable" ranges using 7-bits. Given every bit doubles - there's only a few bits needed to get parity (not 7 more). So the discussion about physical limitations of the last electrical component in the chain related to A/D and even related to time is interesting - but breaks down when matched up with the request - which is to do better (not best).

I think previous discussion from Yamaha about supporting 14-bit is unfortunately a "stretch" as testing seems to contradict one interpretation of what was claimed. However, I do not think the point was to mislead. For something like pitch bend, it's somewhat surprising that Montage and MODX do not seem to match the internal resolution afforded by the DX7 as pitch bend is such a mainstream feature - not "niche" like glissando which is not supported by FM-X but is in the DX7. Although I think it would have been "better" for the discussion to have tested, true, accurate, clear statements from Yamaha - I'm not too bent out of shape over this. It's easy to verify - and now Yamaha does own it.

I'm fairly critical myself when I see something that looks misaligned -- but this one just appears more like a goof or lack of clarity than anything else. Hopefully something positive will come out of this work at Yamaha to help restore your confidence.

Keep in mind I'm not saying your opinion is "wrong". Your opinion really can't be wrong. We just don't draw the same conclusions regarding the arc of this issue. That's healthy.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 26/07/2019 10:34 pm
Posts: 0
Eminent Member
 

I really think than in relation of pitch changes (thru envelopes or physical controllers like the pitch bend wheel), it is much more important to have a very good formant filter than to increase the effective resolution of the controller, that as I said above only could be done interpolating "fake" values between the real ones, with probably an unnatural effect.

The formant filter instead makes that the pitch steps, although sounding quantized, remain harmonically aligned.

This harmonic alignment is what creates the perception of aural sonical unity and not the ultrafine pitch bend steps, in facts it "hide" the steps.

 
Posted : 27/07/2019 5:17 am
Daniel
Posts: 448
Honorable Member
Topic starter
 

what i can say is that some montage presets have a more smooth natural pitchbend curve than other, and it is not depending if they are from fmx or awm. i will post some exemple later but i still don't know why.

Montage 7 classic

 
Posted : 31/07/2019 9:29 am
Michael Trigoboff
Posts: 0
Honorable Member
 

I am surprised that the pitchbend value bytes are in small-endian order (LSB followed by MSB). Does anyone know why that order was chosen?

 
Posted : 31/07/2019 5:01 pm
Jason
Posts: 8229
Illustrious Member
 

I'm not sure it matters - but you have more luck fishing for the historical trivia by joining the MIDI association (if not already) and ask on the forum there.

https://midi.org

Under the hardware section of the 1.0 spec is the following:

The hardware MIDI interface operates at 31.25 (+/- 1%) Kbaud, asynchronous, with a start bit, 8 data
bits (D0 to D7), and a stop bit. This makes a total of 10 bits for a period of 320 microseconds per serial
byte. The start bit is a logical 0 (current on) and the stop bit is a logical 1 (current off). Bytes are sent
LSB first.

So perhaps this is an extension of the overall ordering. Bits come out with LSB (bit) first. But I can only speculate about the "why" as the MIDI spec doesn't spell this out and it really has no affect on me as the ordering is arbitrary and just important to define for lower levels of the system implementation.

Montage adheres to the spec which was defined in the spec which is not directly controlled by Yamaha.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 01/08/2019 2:27 am
Darryl
Posts: 829
Prominent Member
 

I noted this in another thread, but thought it was worth noting here as well.
The Ribbon has that same stepping sound to the bends as the Pitch Bend wheel does.
Hopefully they fix it and smooth it out for both in the next OS update, and not just fix the Pitch Bend wheel...

 
Posted : 08/08/2019 3:30 pm
Jason
Posts: 8229
Illustrious Member
 

Ribbon has only ever had 128 output values so ribbon is going to have limits that pitch bend may not. Pitch bend (MIDI command 0xEn) is only tied to the pitch "wheel" controller and cannot be assigned to other controllers like ribbon. If you want ribbon to not step, you have to limit the range since you'll "only" get 128 different values of pitch offset using the ribbon controller.

To make controllers support 14 bits of output would be, in my opinion, too aggressive of an architectural change to current platforms to make. The ripple effect would be the control matrix would need twice the "X" values for all curves. All internal curves would need to be updated to double the resolution. Many MIDI addresses (data list stuff) would need to double the width. The save files would need to all change (X[7,8]A, X[7,8]L, X[7,8]U, X[7,8]B). And on and on. So realize asking for this ribbon controller change is distinctly different than getting the tone generator to respond to more bits of 0xEn than it currently does as well as having the pitch bend controller also map to more bits when sending 0xEn (at least internally). Maybe externally too if you ever want pitch bend to work seamlessly between two Montage keyboards, two MODX, or Montage+MODX.

Summary statement: ribbon controller as affecting pitch offsets is a different animal than pitch wheel controlling pitch bend.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 08/08/2019 7:35 pm
Darryl
Posts: 829
Prominent Member
 

Ribbon has only ever had 128 output values so ribbon is going to have limits that pitch bend may not. Pitch bend (MIDI command 0xEn) is only tied to the pitch "wheel" controller and cannot be assigned to other controllers like ribbon. If you want ribbon to not step, you have to limit the range since you'll "only" get 128 different values of pitch offset using the ribbon controller.

Summary statement: ribbon controller as affecting pitch offsets is a different animal than pitch wheel controlling pitch bend.

Interesting note, thanks!
Come to think of it, there is quite a range on the ribbon by default, so I will try limiting the range and test to see what the range limit is for it to be smooth.

 
Posted : 09/08/2019 2:57 pm
Posts: 0
New Member
 

One of the good things is we have regular updates to the Montage OS versions that constantly add new features based on customer feedback. I see that you have found the ideascale forum: That is a good place to register your requests. We do listen.

Nagging is usually not my thing, but...
Requests won’t keep coming if updates don’t get out there in the field and only stay inside.
A year has past without a single move forward, just saying... πŸ™

 
Posted : 13/08/2019 2:50 pm
Posts: 74
Trusted Member
 

+1
Sad but true
Not much going on here.
Or only bug fixing and new Performance???

Nagging is usually not my thing, but...
Requests won’t keep coming if updates don’t get out there in the field and only stay inside.
A year has past without a single move forward, just saying... πŸ™

 
Posted : 15/08/2019 12:33 pm
 Sean
Posts: 0
Eminent Member
 

I have been struggling with a Roli Seaboard and trying to get the glide working with Montage. The Roli sends pitch bend messages for glide, i.e. when you move your finger between notes.

Despite matching the pitch bend range with the Roli and Montage performance, I just could not seem to get the glide to be quite right - and it looks like I came across this same issue i.e. the Montage is ignoring the LSB. With a pitch bend range set to 24 on both Roli and Montage, this does not give enough precision to land on a note that we glide to.

I used Logic Pro to send pitch bend messages that I would have expected to move the frequency up one semitone and used a chromatic
guitar tuner to measure the frequency output by the Montage. The Montage frequency is too low - because the LSB has been ignored.

In conclusion I decided to shelve my attempts at Roli Montage integration pending a Montage update to solve this issue.

 
Posted : 16/09/2019 8:50 am
Page 3 / 7
Share:

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