Yahoo Groups archive

MOTM

Index last updated: 2026-04-28 23:35 UTC

Thread

MOTM-650 V1.3 RC1 bugs reported

MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Paul Schreiber

There are 2 know issues with this release:

a) Sustain pedal use in Unison voice assignments
b) sending "illegal" MIDI notes (outside the defined 127 note range) to the 
MOTM-650. Apparently, some software programs do this.

These are both being fixed shortly. I'll post the RC2 code when ready.
If there are any more, I need to know!

Paul S.

RE: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Adam Schabtach

> b) sending "illegal" MIDI notes (outside the defined 127 note 
> range) to the MOTM-650. Apparently, some software programs do this.

At the risk of trying to troubleshoot a system I'm completely unfamiliar
with, I'm not sure that that's a correct diagnosis. The only way a MIDI note
number could be outside of the range [0, 127] is if the high bit of its byte
was set. The MIDI spec says that if the high bit of a byte--any byte--is
set, then it's a Status byte, not a data byte. [See pages 4-5 of the MIDI
spec] So in other words, could it be that "some software programs" are
sending Status bytes that the 650 isn't expecting, rather than "'illegal'
MIDI notes"?

--Adam

Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by djbrow54

You are correct and this 'error' should be ignored.  It was my test 
software to try and get MIDI notes in the various ranges.  I had 
written some software to transpose down two octaves and my keyboard
wrapped around to notes -1, -2 -3, etc.

Of course these should have been interpretted as real time single byte 
messages but the problem is that the -650 whould then use the 
following data as the note number and velocity, but of course it was 
just velocity so now the MIDI sequence is all screwed up.  This IS NOT 
an issue with the -650. It was an issue with my test code.

On the good side, I found the -650 performance flawless with MIDI 
notes in the range of 0 - 12 other than the noted unison issue with 
the sustain pedal.

It might be interesting sometime to throw a bunch of real-time 
messages at it and see how it performs.

Sorry for the confusion.

Dave 

--- In motm@yahoogroups.com, "Adam Schabtach" <adam@...> wrote:
Show quoted textHide quoted text
>
> 
> > b) sending "illegal" MIDI notes (outside the defined 127 note 
> > range) to the MOTM-650. Apparently, some software programs do
> > this.
> 
> At the risk of trying to troubleshoot a system I'm completely
> unfamiliar with, I'm not sure that that's a correct diagnosis. The
> only way a MIDI note number could be outside of the range [0, 127]
> is if the high bit of its byte was set. The MIDI spec says that if
> the high bit of a byte--any byte--is set, then it's a Status byte,
> not a data byte. [See pages 4-5 of the MIDI spec] So in other words,
> could it be that "some software programs" are sending Status bytes
> that the 650 isn't expecting, rather than "'illegal' MIDI notes"?
> 
> --Adam
>

RE: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by jfm3

On Sun, 2006-10-08 at 09:35 -0600, Adam Schabtach wrote:
> The MIDI spec says that if the high bit of a byte--any byte--is
> set, then it's a Status byte, not a data byte. [See pages 4-5 of the
> MIDI
> spec] So in other words, could it be that "some software programs" are
> sending Status bytes that the 650 isn't expecting, rather than
> "'illegal'
> MIDI notes"?


I was thinking the same thing. Some status bytes can happen in the
middle of other multi-byte messages, if I recall correctly.

RE: [motm] Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Adam Schabtach

Thanks for the explanation. That makes a whole lot more sense. :-)

--Adam 
Show quoted textHide quoted text
> -----Original Message-----
> From: djbrow54 [mailto:davebr@...] 
> Sent: Sunday, October 08, 2006 10:23 AM
> To: motm@yahoogroups.com
> Subject: [motm] Re: MOTM-650 V1.3 RC1 bugs reported
> 
> You are correct and this 'error' should be ignored.  It was 
> my test software to try and get MIDI notes in the various 
> ranges.  I had written some software to transpose down two 
> octaves and my keyboard wrapped around to notes -1, -2 -3, etc.
> 
> Of course these should have been interpretted as real time 
> single byte messages but the problem is that the -650 whould 
> then use the following data as the note number and velocity, 
> but of course it was just velocity so now the MIDI sequence 
> is all screwed up.  This IS NOT an issue with the -650. It 
> was an issue with my test code.
> 
> On the good side, I found the -650 performance flawless with 
> MIDI notes in the range of 0 - 12 other than the noted unison 
> issue with the sustain pedal.
> 
> It might be interesting sometime to throw a bunch of 
> real-time messages at it and see how it performs.
> 
> Sorry for the confusion.
> 
> Dave 
> 
> --- In motm@yahoogroups.com, "Adam Schabtach" <adam@...> wrote:
> >
> > 
> > > b) sending "illegal" MIDI notes (outside the defined 127 note
> > > range) to the MOTM-650. Apparently, some software 
> programs do this.
> > 
> > At the risk of trying to troubleshoot a system I'm completely 
> > unfamiliar with, I'm not sure that that's a correct diagnosis. The 
> > only way a MIDI note number could be outside of the range 
> [0, 127] is 
> > if the high bit of its byte was set. The MIDI spec says that if the 
> > high bit of a byte--any byte--is set, then it's a Status 
> byte, not a 
> > data byte. [See pages 4-5 of the MIDI spec] So in other 
> words, could 
> > it be that "some software programs" are sending Status 
> bytes that the 
> > 650 isn't expecting, rather than "'illegal' MIDI notes"?
> > 
> > --Adam
> >
> 
> 
> 
> 
> 
> 
>  
> Yahoo! Groups Links
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
>

Re: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Neil Bradley

> b) sending "illegal" MIDI notes (outside the defined 127 note range) to the
> MOTM-650. Apparently, some software programs do this.

How is this possible? MIDI Notes only have a possibility of 128 total 
notes because of 7 bits. If the top bit is set, it's no longer a MIDI 
note.

-->Neil

----------------------------------------------------------------------------
C. Neil Bradley                KE7IXP		           Beaverton, Oregon

Re: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Paul Schreiber

>> b) sending "illegal" MIDI notes (outside the defined 127 note range) to the
>> MOTM-650. Apparently, some software programs do this.
>
> How is this possible? MIDI Notes only have a possibility of 128 total
> notes because of 7 bits. If the top bit is set, it's no longer a MIDI
> note.

Apparently, crappy VST plug-ins written by Russian students. But they were 
'free', right? :)

Paul S.

Re: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by J.D. McEachin

At 10:03 AM 10/8/2006 -0500, Paul Schreiber wrote:

>b) sending "illegal" MIDI notes (outside the defined 127 note range) to the 
>MOTM-650. Apparently, some software programs do this.

Actually, there are 128 legal Midi notes - 0 to 127.  Using note #127 w/ the sustain pedal causes problems.

Jeffrey

Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by djbrow54

Ok - OK -OK - you caught me.  It was my code, writen for an AVR late 
at night.  I wanted to check MIDI notes 0 - 12 so just did a quick 
transposition down 2 octaves with a simple subtraction.  I thought I 
caught wrap arounds but didn't.  I picked up the bad notes on my MIDI 
monitor (also written for an AVR and for sale by John Loffink) and 
they hosed the -650.  Probably should have kept it my dark secret 
instead of mentioning it since it caused so much confusion.

Let me set the record straight ...

No, they were not illegal notes, but realtime messages.
Yes, the follow on bytes were illegal since I dropped the midi note.
Yes, I did violate MIDI specifications, however unintentioned
No, I am not Russian
No, I do not do VST plug-ins, all my code is assembly
Yes, I am sorry.
Yes, I am sorry.
Yes, I am sorry.

Now, back to writing some more test code for the -650.  Anything else 
you guys want me to test!!!

Dave

--- In motm@yahoogroups.com, "Paul Schreiber" <synth1@...> wrote:
>
> >> b) sending "illegal" MIDI notes (outside the defined 127 note 
range) to the
> >> MOTM-650. Apparently, some software programs do this.
> >
> > How is this possible? MIDI Notes only have a possibility of 128 
total
> > notes because of 7 bits. If the top bit is set, it's no longer a 
MIDI
> > note.
> 
> Apparently, crappy VST plug-ins written by Russian students. But 
they were 
Show quoted textHide quoted text
> 'free', right? :)
> 
> Paul S.
>

Re: [motm] MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Neil Bradley

>>> b) sending "illegal" MIDI notes (outside the defined 127 note range) to 
>>> the
>>> MOTM-650. Apparently, some software programs do this.
>> 
>> How is this possible? MIDI Notes only have a possibility of 128 total
>> notes because of 7 bits. If the top bit is set, it's no longer a MIDI
>> note.
>
> Apparently, crappy VST plug-ins written by Russian students. But they were 
> 'free', right? :)

What Adam said. If they're outside the 128 note range, they aren't MIDI 
notes any longer.

-->Neil

----------------------------------------------------------------------------
C. Neil Bradley                KE7IXP		           Beaverton, Oregon

RE: [motm] Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by Adam Schabtach

> Ok - OK -OK - you caught me.  It was my code, writen for an 
> AVR late at night. 

Sorry, I didn't mean to start a Let's Pick On Dave thread. I was actually
trying to help--I know (all too well) how it's possible to overlook the
obvious when I've been staring at my own code for too long, and I thought
maybe an outside perspective might help.
 
> Now, back to writing some more test code for the -650.  
> Anything else you guys want me to test!!!

Has anyone looked at the timing precision of the 650's outputs? E.g. send it
a steady stream of 16th notes @ 120BPM from the sequencer of your choice,
record the activity of the 650's gate output, look at the variation in time
(if any) from one rising edge of the gate to the next.

--Adam

Re: [motm] Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-08 by mcb, inc.

On Sun, 8 Oct 2006, djbrow54 wrote:

> Now, back to writing some more test code for the -650.  Anything else
> you guys want me to test!!!

Actually, there's an interesting test mechanism here.  Goes by
various names but the latest buzzword is 'fuzzing':  sending
random protocol/arguments into black boxes to see what happens.
Building a MIDI fuzzer and letting it loose on the various
commercial MIDI implementations ought to be entertaining (and
will probably start a few house fires).

m

--
Monty Brandenberg

Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-09 by djbrow54

Yea, fuzzing, that's what I was doing.  I just didn't want to appear 
to be too sophisticated by citing my use of advanced digital testing 
methodologies.  I thought it might go over everyone's head.  And, of 
course, instead of using the more traditional structured queues of 
fuzzy data, I wrote a real-time midi random event fuzzing generator. 
Now, of course, the use of fuzzing is controversial because of invalid 
input data. However, I wanted to ensure that the MOTM-650 would 
withstand a midi data stream security attack. You can rest assured 
that your MOTM-650 is being subjected to the most advanced and 
rigorous testing methodologies and the result will be advanced 
security in hostile midi environments.  Yea, that's what I was doing.

Dave


 --- In motm@yahoogroups.com, "mcb, inc." <mcbinc@...> wrote:
>
> On Sun, 8 Oct 2006, djbrow54 wrote:
> 
> > Now, back to writing some more test code for the -650.  Anything 
else
Show quoted textHide quoted text
> > you guys want me to test!!!
> 
> Actually, there's an interesting test mechanism here.  Goes by
> various names but the latest buzzword is 'fuzzing':  sending
> random protocol/arguments into black boxes to see what happens.
> Building a MIDI fuzzer and letting it loose on the various
> commercial MIDI implementations ought to be entertaining (and
> will probably start a few house fires).
> 
> m
> 
> --
> Monty Brandenberg
>

Re: [motm] Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-10 by J.D. McEachin

At 12:43 AM 10/9/2006 -0000, djbrow54 wrote:

>Yea, fuzzing, that's what I was doing.  I just didn't want to appear 
>to be too sophisticated by citing my use of advanced digital testing 
>methodologies.  I thought it might go over everyone's head.  And, of 
>course, instead of using the more traditional structured queues of 
>fuzzy data, I wrote a real-time midi random event fuzzing generator. 
>Now, of course, the use of fuzzing is controversial because of invalid 
>input data. However, I wanted to ensure that the MOTM-650 would 
>withstand a midi data stream security attack. You can rest assured 
>that your MOTM-650 is being subjected to the most advanced and 
>rigorous testing methodologies and the result will be advanced 
>security in hostile midi environments.  Yea, that's what I was doing.

As one of the 650's firmware developers, I think that's great.  I welcome the torture test.  The 650 should be able to respond predictably to any midi data, whether valid or invalid.  Do your worst.  ;)

As for the observed problem - it turns out the 650 WILL choke on a valid note #, 127 (7fh), but ONLY when the sustain pedal is used.  This is due to a bad decision I made 10 years ago when designing the firmware for a synth that could only respond to 64 notes.  I chose to use the msbit to hold the sustain status, because I was trying to save as many bytes of RAM as possible.  Using the msbit works fine for notes 0-126.  For #127, when a note is sustained, it looks like just like an unused note (to the note release section of the code, that is).  Hence the hung notes.  :(

So, I am faced with either rewriting a lot of code, or just ignoring note #127.  I've chosen the latter, and that'll be in RC2 (hopefully tomorrow).  To those who own 128 key keyboards, and to those who transpose their music up so their dogs can enjoy it, I apologize.  ;)  If enough people complain, I'll consider a rewrite.  I seriously doubt anyone else will notice note #127 is gone, though.  

Jeffrey

Re: [motm] Re: MOTM-650 V1.3 RC1 bugs reported

2006-10-10 by Paul Schreiber

> So, I am faced with either rewriting a lot of code, or just ignoring note 
> #127.  I've chosen the latter, and that'll be in RC2 (hopefully tomorrow).  To 
> those who own 128 key keyboards, and to those who transpose their music up so 
> their dogs can enjoy it, I apologize.  ;)  If enough people complain, I'll 
> consider a rewrite.  I seriously doubt anyone else will notice note #127 is 
> gone, though.

Ignore that last note. Let's get this code solid, add the discrepancy to the 
docs, and move forward.

Paul S.
all about moving forward

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.