fbpx


The MIDI Forum

New

Note off

  Saturday, 24 September 2022
  25 Replies
  5.9K Visits
9
Votes
Undo
  Subscribe
I'm sending NOTE ON to a device (acoustic bass). The bass sounds and decays. After a second I send the next NOTE ON command, while the first note is still decaying.
So the second note interferes with the first one. Do I have to send a NOTE OFF with exactly the note to put off. Then I would have to keep in mind the last played note. Or is there a command "ALL NOTES OFF"?
2 weeks ago
·
#17924
0
Votes
Undo
According to the Dream SAM2695 manual, the SAM2695 has a serial port and a parallel port. In its default mode (the "serial mode"), you can send MIDI messages to the serial port which the SAM2695 synthesizer will interpret to generate sounds. It's also possible to send some special device control messages to the parallel port. However, it seems like the board you are using is this GM Mini Module (German manual), which leaves the Dream SAM2695 parallel port unconnected, so the only thing you are able to use is the serial port. (The SAM2695 also has a "parallel mode", but it's not available to you since you can't use the parallel port.)


In the Dream SAM2695 manual:

• Pages 15 to 18 are all describing Non-Registered Parameter Number (NRPN) messages. (The overview table on pages 15 and 16 shows all the commands at a glance. The following tables and descriptions on pages 16 to 18 give more details.)

• Pages 19 to 25 describe device control messages for the SAM2695's parallel port. (The overview table on pages 19 and 20 shows all the commands at a glance. The following tables and descriptions on pages 20 to 25 give more details.)

• Pages 26 to 29 show the various MIDI messages the device understands.


Be aware that in MIDI, NRPN messages are sent using a special pattern of Control Change messages. For the Dream SAM2695, be aware that all of the NRPN functions from pages 15 to 18 correspond to the following row on page 27 of the MIDI message table:

MIDI MESSAGEHEX CODEDESCRIPTIONCOMPATIBILITY
NRPN 37xxhBnh 63h 37h 62h xx 06h vvSpecial Synthesis features controls (see §2-1)DREAM

where n is 0 to F for MIDI Channel 1 to 16.

For the parallel port device control messages, notice that the overview table on pages 19 and 20 has a column called "Compatible NPRN/Sysex". Since you don't have access to the parallel port, if you want to do something shown in this section of the manual, you should send one of the corresponding NRPN or Sysex messages to the serial port.


In your original message today, when you tried to send the following

REST: ff
GS_R: f0 41 00 42 12 40 00 7f 00 41 f7
MONO: b0 7e 01
VOL : 37 20 ff
GMVL: 37 22
MSVL: 07 10
VOIC: c0 21

It looks like you wanted to use the "37 20" and "37 22" messages from the NRPN section of the manual and the "07" message from the parallel port device control section of the manual. You'll need to convert these into MIDI messages. Also note:

For the NRPN message 3720 "Spatial Effect volume", notice that the value range is 00 to 7F. (It looks like you wanted to use FF which isn't valid.)
For the NRPN message 3722 "General MIDI volume", notice that the value range is 00 to 7F. (It looks like you forgot the value.)
For the device control message 07 "Master Volume" (range 00 to FF), you should use compatible NRPN message 3707 "Master volume" (range 00 to 7F). (I think you could convert hex 10 in the bigger range to hex 08 in the smaller range.)

After converting them to MIDI messages, I think you'd get the following:

ff (Reset)
f0 41 00 42 12 40 00 7f 00 41 f7 (GS Reset)
b0 7e 01 (Channel 1 Mono On)
b0 63 37 62 20 06 7f (Channel 1 "Spatial Effect volume" max)
b0 63 37 62 22 06 7f (Channel 1 "General MIDI volume" max)
b0 63 37 62 07 06 08 (Channel 1 "Master Volume" value 8)
c0 21 (Program Change Channel 1, Electric bass (finger))

(Note: Even though you are sending the NRPN messages on MIDI Channel 1, I suspect some of these commands might have a device-wide effect on all MIDI channels and the specific channel you sent it on doesn't matter. If you ever need to use multple MIDI channels, you might want to preform some listening tests to confirm if these commands affect the volume level you hear on all MIDI channels.)

However, I think you might be trying to test too many different volume controls at once. I suggest you just try Control Change 7 (channel volume) and see if that works for you.

ff (Reset)
f0 41 00 42 12 40 00 7f 00 41 f7 (GS Reset)
b0 7e 01 (Channel 1 Mono On)
b0 07 7f (Channel 1 Volume max)
c0 21 (Program Change Channel 1, Electric bass (finger))
2 weeks ago
·
#17925
0
Votes
Undo
More issues

In this message you said you were trying to send the "GS_VOLUME" message:

f0 42 00 42 12 40 00 7f 00

But the Master Volume message for GS looks like this (from page 27 of the manual):

F0 41 00 42 12 40 00 04 vv xx F7


In this message, you mentioned sending

Push button: 90 25 40 Release button: 80 25 ff

Be aware in MIDI messages bytes, hex 80 to FF are Status bytes that indicate the type of message, and hex 00 to 7F are for data bytes. The FF on the end of the "Release button" message above is not a valid data byte. It indicates the Status byte FF for Reset.


More information about Running Status

The Dream SAM2695 almost certainly correctly supports Running Status because it is part of required MIDI standards. In fact, on page 27 of the manual, the various RPN and NRPN message examples are shown using Running Status.

For example, the NRPN 37xx message format is shown using the following bytes:

Bn 63 37 62 xx 06 vv

This uses implied Status bytes (Running Status) and has the following meaning:

Bn 63 37 (Control Change Channel n+1, Controller 99 Non-Registered Parameter Number MSB, Value hex 37)
62 xx (" " " " Controller 98 Non-Registered Parameter Number LSB, Value hex xx)
06 vv (" " " " Controller 6 Data Entry, Value hex vv)

You can also send the Status Bytes explicitly and it would mean the same thing and have the same effect:

Bn 63 37 (Control Change Channel n+1, Controller 99 Non-Registered Parameter Number MSB, Value hex 37)
Bn 62 xx (Control Change Channel n+1, Controller 98 Non-Registered Parameter Number LSB, Value hex xx)
Bn 06 vv (Control Change Channel n+1, Controller 6 Data Entry, Value hex vv)

Running Status can only be used for Status bytes that contain a channel number (hex 80 to EF).

System Common and System Exclusive status bytes (hex F0 to F7) cause the remembered Running Status to be forgotten. The next message after these System messages must begin with a Status byte. If it doesn't, then the device has to ignore incoming bytes until it gets a Status byte (hex 80 to FF).

System Real-Time messages (hex F8 to FF) are 1-byte messages that may occur in between the bytes of other messages. A System Real-Time message makes no changes to the remembered Running Status. Except: If the device obeys the Reset message (Status byte FF), it is supposed to forget the remembered Running Status as part of its reset process.

So when you sent the following bytes:

REST: ff
GS_R: f0 41 00 42 12 40 00 7f 00 41 f7
MONO: b0 7e 01
VOL : 37 20 ff
GMVL: 37 22
MSVL: 07 10
VOIC: c0 21

This would get interpreted as:

FF (Reset)

F0 41 00 42 12 40 00 7F 00 41 F7 (GS Reset)

B0 7E 01 (Control Change Channel 1, Controller 126 Mono On, Value 1 for one channel)
37 20 (" " " " Controller 55 unused, Value 32)
FF (Reset)
37 (ignored as invalid, Status byte required)
22 (ignored as invalid, Status byte required)
07 (ignored as invalid, Status byte required)
10 (ignored as invalid, Status byte required)
C0 21 (Program Change Channel 1, Electric bass (finger))


Geoff:

The FF on line 5 (timing byte) should NOT affect the this.

Status byte FF is the Reset message, which would have an effect. The manual says it causes the device to reset to power-up conditions.

Line 4 [b0 7e 01] should be ok, this is normally Polyphonic OFF, and I assume this is what you mean by 'Mono' (Monophonic as opposed to Polyphonic). But I'm not sure about the 01 following, but this may be a dummy data value?

In the Mono On message, the value part of the Control Change message indicates the number of channels you want to use (one channel for each monophonic note you want). A value of 0 is a special value that means to use as many channels as the number of maximum simultaneous notes the device can sound. A value of 1 means you just want to use 1 channel. However, this "number of channels" value is mainly intended for monotimbral devices -- devices that can only play one instrument sound at once. The main example is a MIDI guitar controller would send a Mono Mode message set for 6 channels, then each string would transmit notes monophonically on unique channels and each channel can have unique pitch bend.

Modern devices are multitimbral -- they can play multiple instrument sounds at once. A multitimbral device effectively acts like it contains 16 single-channel monotimbral sub-devices that are each listening to single MIDI channel and control a single instrument sound. If a multitimbral device supports Mono mode, then when you send a Mono On message to a channel, the "number of channels" value is usually always treated as if it were 1, no matter what value is sent.
1 week ago
·
#18025
0
Votes
Undo
Since I'm presently a bit stuck with my microcontroller interface I'm thinking of a quick solution: buy a used Roland Sound Canvas S55 and plug the midi pedal into it.
The midi note on7 note off sequence is coming reliably out of the PEDSCAN module (90 xx 40 80 xx 40).

The only problem: can I achieve a mode that does the following:

I tap a bass pedal note, say "G". The voice 33 (acoustic bass) sounds plucked. I release the pedal key. "G" The "G" just plucked still sounds and keeps on decaying, although the pedal key is released.I tap another note, say "G#". The previously played "G" disappears and the "G#" decaying sequence is started. Is this possible?

Is that, what is understood by "mono mode"?
1 week ago
·
#18027
0
Votes
Undo
Hello,

You might need to try this, and see what the specific device, the S55, actually does.

Yes, Mono Mode says that the instrument will play one note at a time, ONLY. But, in the situation you describe, the pedal may have stopped the note that was playing, it is now OFF, but the envelope may still be sounding something even though the note is OFF. Will the S55 use the mono mode to cancel/silence the envelope even though the note is actually OFF anyway? Or will it respond by doing nothing as the note is OFF already?

Is there a technical difference here between the note 'sounding' even though it's OFF and therefore not 'playing'?

Geoff
1 week ago
·
#18028
0
Votes
Undo
can I achieve a mode that does the following: I tap a bass pedal note, say "G". The voice 33 (acoustic bass) sounds plucked. I release the pedal key. "G" The "G" just plucked still sounds and keeps on decaying, although the pedal key is released.I tap another note, say "G#". The previously played "G" disappears and the "G#" decaying sequence is started. Is this possible? Is that, what is understood by "mono mode"?

Mono mode means only one pitch can sound at a time on that channel you sent the Mono mode message to. If there's a pitch currently making a sound on that channel and you send a new Note On message, then the old pitch will stop making any sound and the new pitch will start making a sound.

Normally, I think the Acoustic Bass sound will quickly mute (decay very fast) once you send a Note Off message. However, if you send a Sustain pedal on message, then I think the Acoustic Bass sound will continue to sound (decay slowly) even after you send a Note Off message.

So if you are still able to send any MIDI message, try sending both a Mono On message and a Sustain pedal on message:

B0 7E 01 (Channel 1 Mono On)
B0 40 7F (Channel 1 Sustain pedal on)

Alternatively, if you are only able to send Note On and Note Off messages, then you can try setting up the Roland SC-55 using the buttons on its front panel. Using the buttons on the Roland SC-55, you can enable Mono mode and you can set the Release time to the maximum value. I think setting the maximum Release time will help keep the Acoustic Bass sound decaying slowly after a Note Off message.

Roland Sound Canvas SC-55 manual
  • Page :
  • 1
  • 2
There are no replies made for this post yet.