MSB vs LSB - please explain

Tips and techniques for Minimoog Analog Synthesizers
Post Reply
cwalcott
Posts: 16
Joined: Tue Jul 22, 2003 5:04 pm
Location: Oakland, CA
Contact:

MSB vs LSB - please explain

Post by cwalcott » Mon Feb 28, 2005 1:06 pm

What is the deal with this "feature"?


Every single control on the voyager sends 2 CC numbers. It was mentioned in another thread and I'm at a total loss as to why it works this way. When I record the mod wheel moving I get mod data AND CC 33. If I record the filter cutoff, I get CC 19 AND CC 51.

What purpose does this serve?

Thanks!

- chris walcott

User avatar
MC
Posts: 2925
Joined: Tue Aug 12, 2003 2:20 pm
Location: Secluded Tranquil Tropical Country

Post by MC » Mon Feb 28, 2005 2:10 pm

The MIDI standard defined CC messages to contain a seven bit data byte. That was passible back in the 80s but increasing complaints about "zipper noise" demanded a solution. Zipper noise is the audible "jumping" between small CC changes. Seven bit deep CC messages is not enough resolution to overcome zipper noise.

So the MIDI standard implemented dual CC messages to double the resolution to fourteen bits which near eliminated zipper noise and permitted very smooth transitions between small CC changes. The dual CC messages are Most Significant Byte (MSB) and Least Significant Byte (LSB), which are seven bit halves of the fourteen bit CC.

This solution was used because changing the MIDI message format to transmit a 14 bit CC meant that every old MIDI device would instantly become obsolete. Legacy compatibility was very important in this solution. The MSB for the mod wheel and the MIDI mod wheel message are one and the same, finer resolution LSB data are sent in a separate MIDI message.

These changes were implemented well before the days of the Voyager. The internal bit resolution of the Voyager is 14 bits, which means filter sweeps and oscillator tunings are very fine and smooth, there is no audible zippering or "stepping". Thus the Voyager transmits dual MSB/LSB MIDI messages when you tweak the panel.

If you ever tweaked a vintage Prophet-5 you can easily hear the "stepping" of the low resolution. Back then ADCs and DACs were expensive.

cwalcott
Posts: 16
Joined: Tue Jul 22, 2003 5:04 pm
Location: Oakland, CA
Contact:

Post by cwalcott » Mon Feb 28, 2005 3:03 pm

Thanks for the detailed reply. That explains it for me.

So, does it follow that the voyager doesn't need this feature? Would it make sense to have a Master setting that would disable this?

- chris

monads
Posts: 478
Joined: Sun Feb 01, 2004 6:34 pm
Location: voyagerland
Contact:

Post by monads » Mon Feb 28, 2005 5:11 pm

MC,

Is there an easy way to draw/redraw curves that have MSB/LSB data? Like for example if I record a filtersweep, and I want to redraw it. I just can't edit the MSB, the LSB has to be edited as well with each value. It seems there is no easy way to do this.

Cwalcott,

The voyager needs it to make fine adjustments/sweeps without the zipper noise. You don't have to record the LSB, but you'll here steps/increments when playing back continuous data without it.

User avatar
MC
Posts: 2925
Joined: Tue Aug 12, 2003 2:20 pm
Location: Secluded Tranquil Tropical Country

Post by MC » Mon Feb 28, 2005 5:21 pm

Can't help you on drawing MSB/LSB data, never had the need to do it.

monads
Posts: 478
Joined: Sun Feb 01, 2004 6:34 pm
Location: voyagerland
Contact:

Post by monads » Mon Feb 28, 2005 6:28 pm

Thanks anyway though. Just thought I'd ask

Qwave
Posts: 296
Joined: Tue Mar 30, 2004 7:56 am

Post by Qwave » Fri Sep 02, 2005 4:36 pm

monads wrote:... Is there an easy way to draw/redraw curves that have MSB/LSB data? ...
Yes. But this will give you 7 bit resolution:
- Set the LSB to zero.
- And then draw the line only in the MSB CC editor window of your software.

Ofcause, you might hear some zipper noises as on most other synths.
keep on turning these Moog knobs

Till "Qwave" Kopper

[url=http://launch.groups.yahoo.com/group/Squarewave/]Squarewave Group[/url] member "waldorfian_qwave"

Post Reply