Idea for Yamaha to have automatically more sustain on piano sounds

Started by bpsafran, March 02, 2022, 05:39:43 AM

Previous topic - Next topic

Joe H

The most realistic solution is for Yamaha to implement and support a half-damper for Piano and Electric Piano on future models of the arranger.  Half damper will allow the player to use the half damper pedal with provides variable sustain like on a real piano. 

All the above ideas are based on a lack of knowledge of MIDI.

::)

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

mikf

It's one thing to suggest an additional feature on the keyboard, but something else again to try to tell Yamaha how it can be done. If Yamaha thought this was worth doing, and feasible, they are much better placed than any of us to decide how.
Mike

SciNote

Concerning the PSS-A50, that's a good point about the sustain being controlled electronically using a momentary push-button, and I had not thought of that.  So, yeah, simply shorting the contacts with a relay or transistor would not be enough to reliably activate sustain.  However, if we ignore the enhanced sustain feature and just consider how to add a sustain pedal to the A50, assuming that there is no clear-cut internal contact pin or control circuit inside the keyboard that could be activated to more easily accomplish this, I can imagine the following...

Use a circuit that takes a constant input and outputs a momentary pulse.  This is very possible -- I have bought and used such devices when adding certain accessories to my car.  Now, imagine a sustain pedal with two sets of contacts -- One set gets activated whenever the pedal is pressed down, like normal.  But then, another would get activated when the pedal is released.  Each of these contacts would then go to the circuit that I just described, so that when you push down the pedal and hold it down, the circuit outputs a momentary pulse.  And when you release the pedal, no matter how long the pedal remains released, another single momentary pulse is generated by the control circuit I described.  Then, of course, these momentary pulses would trip a relay or transistor hooked to the sustain button contacts, so that pushing the pedal would be like momentarily tapping the sustain button to engage it, and releasing the pedal would be like momentarily tapping the sustain button again to disengage it.

Of course, the concern here is the possibility that something could happen while you're playing so that the functions get backwards, where pushing down the pedal ends up turning off the sustain instead of turning it on.  So, having some kind of way to check the current status of whether sustain is actually engaged or not would be necessary, and if there is no panel LED indicating that this feature is on, then that may not be possible -- unless there is some pin/signal inside the keyboard that could be probed for this information.

Going back to the enhanced sustain function proposed for future keyboards, again, this has nothing to do with MIDI...

FACT: All arrangers already have programming in  them to recognize what chord is being played with the notes being played on the keyboard.  This is the very foundation of how auto-accompaniment works.

FACT: The sustain pedal jack already installed on the keyboard is just a simple two-contact jack or plug, and the pedal is just a single pole, single throw (SPST) switch.  That has been the case with every keyboard I've seen unless it is a more advanced system like half-pedal sustain.  Now, if it is the case on some advanced keyboards that the sustain pedal is more complex than this, then okay, there would be more to this, and how I describe adding this feature here would not apply.

Regardless of what kind of data is internally used inside the keyboard to process the notes being played, MIDI or otherwise, there are chips and algorithms already present that sense what chord is being played.  On some keyboards, the chord name is actually displayed on the screen.  There is no reason that Yamaha (or any arranger manufacturer) could not have another chip to access this data, log what chord is being played with each note played (or at least with each note played on the left side of the keyboard), and then when it sees that the current chord being played is now different than the last chord being played, activate a simple circuit to trip a relay or transistor hooked up to the simple two-pin sustain jack to turn the sustain off momentarily and then back on.

Focusing on MIDI for figuring out how Yamaha or any other arranger manufacturer could implement this idea is based on overthinking what needs to be done.

Yamaha, Korg, and every other arranger manufacturer have very talented engineers who have come up with all manner of ways of sensing what is being played and generating a variety of reactions to what is being played -- even in some cases being able to modify the style background on the fly based on how hard the player is playing the keys with his/her left hand.  There is absolutely no way that I believe that they could not come up with a way to simply use their existing programming to sense chord changes and then essentially flip a switch off and on.

Now, whether Yamaha or any other manufacturer would feel that this would be a useful feature that they would want to implement on their keyboards would be up to them.  And no one here is telling Yamaha how they must wire and implement such a feature if they did want to implement it.  I'm just giving an example of how it COULD be done to show that it is not impossible.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

Ed B

Hi
Learning to use the sustain pedal is well worth considering. First its a little more complex than just off and on. It can be deployed prior to pressing the keys, at the same time and after pressing. When you press the keys and them the pedal it is called syncopated pedaling. The use of these techniques is determined by the context of the music. You will want to listen to the effect created. It allows you create beautiful "legato" phrases. 
It is not appropriate to use the sustain pedal on some complex rhythms or some fast tempo pieces. To do so can create a muddy mess usually, but, it may work in some pieces.
The sustain pedal is also useful on strings to add a lush sound normally in the higher range. In the lower range it can create a muddy sound and is not appropriate. Demonstrators use this.
All this to just suggest its not just a simple as an on off switch and its not just used for piano voices.
Regards
Ed B
Keep on learning

SciNote

Mechanically and electrically speaking, the sustain pedal for most keyboards -- unless it has variable or half pedaling features -- is, indeed, a simple on/off switch.  It's got two contacts on its jack, and a simple SPST switch mounted to the pedal mechanism.

Now, the techniques you describe, and learning when and how to use the pedal -- yes, that comes with learning how to play piano and keyboard in general, and is certainly superior than allowing a chord-sensing program to manage the sustain pedal function.  But what we're talking about here is a feature that can be used for less experienced players -- another easy-play feature, if you will.  Like I said above -- if there should not be any easy-play features at all, then why are easy-play/single-finger chords available on a Genos, when it is, of course, better to learn the notes of the actual chords and play them with your left hand?  It's so that a wider audience can take advantage of playing keyboards like the Genos -- or any other keyboard with these features.  Sure, using easy-play chords won't make a novice player sound like an expert keyboardist, and he or she would still have to learn timing and technique to hit the melody notes and easy-play chord notes accurately and at the right times, but it can allow him or her to at least make music that is enjoyable to listen to and play.

The same would be true of the enhanced sustain function we're talking about here.  It would be no substitute for learning how and when to use a real pedal.  And the simple system that I describe would have no way to account for what sound and what notes are being played, so it could not automatically reduce its use in situations you describe, such as the lower octaves of a string sound.  But, it would give a novice player a way to have sustain without using the pedal and without having multiple dissonant notes from previous chords clashing with what is being played currently.  And of course, it would be a switchable feature, so that whenever the player did not want any sustain (or would want to use a real pedal), it could simply be switched off.

But even beyond novice players, it could even be beneficial to experienced players who happen to be playing in an environment where setting up and using a pedal would be cumbersome -- some place where it's crowded and in close quarters (and where you might still want to avoid at this point due to Covid, anyway).  It would provide a sustain option that does not mash all the notes together without needing to set up the pedal.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

Joe H

I think the OP simply needs to learn how to use the sustain pedal.  It's a matter of technique and practice.  I believe there will never be a "smart sustain" on any keyboard.  When and how to use sustain is up to the individual player.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

SciNote

IMPORTANT DISCLAIMER: I am describing a possible experiment where someone with the proper knowledge and equipment might be able to test out this "enhanced sustain" function on an existing keyboard that has a simple on/off-type sustain pedal jack.  If you try this, YOU DO SO SOLELY AND ENTIRELY AT YOUR OWN RISK AND RESPONSIBILITY!  There is always the risk of equipment damage, electric shock, or other undesirable/dangerous outcomes when experimenting with electrical equipment.  It is also possible that this experiment could void any warranty on any of the equipment that you're using.

If someone really wanted to try this "enhanced sustain" function, and they had good knowledge of hooking a keyboard up to a computer and designing a program that could analyze, by way of the MIDI connection to the computer, what notes are being played... I bet someone with this equipment and knowledge could rig an experimental system to try this out.

You would also need to know a way to have your computer program send an electrical signal to an external device like a relay or transistor.

This also assumes that the sustain pedal on your keyboard is a simple two contact, single-pole-single-throw on/off type switch.  If it isn't, then this experiment WILL NOT WORK and might even damage the keyboard!  If you do not know if your keyboard's sustain jack is designed for a simple 2-contact on/off-switch type sustain pedal, then do not attempt this experiment!

Basically, the computer program could analyze the notes being played on the keyboard in a loop, say, 10 times a second.  Just look at the notes below the split-point of the keyboard -- or, if the split-point cannot easily be retrieved through the MIDI connection, then just set the split point in the computer program and only analyze the notes below that point.  With each loop, calculate what chord is being played.  And, have a variable, perhaps called PrevChord, that would store the name of whatever chord was played in the previous iteration of the loop.  Initially, PrevChord could be set to "null" or zero.  When the current chord is calculated, compare it to the previous chord (in variable PrevChord).  If it is the same, then do nothing and go to the next iteration of the loop to analyze what is being played.  But if the current chord is different than the previous chord (PrevChord), then activate a routine to send the electrical signal to the relay or transistor I mentioned above.  In either case, store the name of the current chord being played in variable PrevChord so the program will know what the previous chord played was when it calculates the current chord in the next iteration of the loop.

The relay or transistor would be hooked across the terminals of the sustain jack, and the computer program would normally set it as "closed" or ON, which would be connecting the contacts of the sustain pedal and activating sustain.  But when a chord change is detected, the program and computer would send an electrical signal to briefly "open" these contacts and then "close" them again, thereby making the keyboard think that the sustain pedal is lifted briefly and then re-applied.

It is important to note that the relay, transistor, or whatever circuit you design to hook to the sustain pedal jack connections would only short/connect the contacts of the jack and NOT send any voltage directly to the wires or contacts of the sustain jack.

After that, the computer program would just resume it's repeating loop of analyzing what notes are being played, and therefore what chord is being played, on the left side of the keyboard.

Having a routine to calculate what chord is being played would not be too difficult, and for a simple test like this, you could just look for the basic major, minor, 7th, and minor 7th chords and just play those chords when testing it.  That would at least help determine if such a system would work and sound good.  I also wouldn't worry about inversions of chords, because you only want to simulate briefly releasing the pedal when the chord changes, not the actual inversion of the chord.

As for hooking the relay or transistor to the sustain pedal jack -- you would not need to open the keyboard at all.  Usually, from what I've seen, the sustain jack is just a 2-contact 1/4-inch phone jack.  So, just get a 2-contact 1/4-inch phone plug, hook wires to it that hook to the relay or transistor circuit (or whatever circuit you'd design to be able to control -- by the computer program -- whether those 2 contacts are closed or open).  And then plug that into the sustain jack of your keyboard.  Again, it's important to note that this relay or transistor (or whatever) circuit would NOT send any voltage directly to the connectors of the sustain jack -- it would only need to short those contacts together under computer control, which, as far as the keyboard is concerned, would be the same as pressing down a sustain pedal hooked to it...

AGAIN: You do this at your own risk!  And if your sustain jack connection and pedal is ANYTHING EXCEPT a simple 2-contact SPST on/off switch, then THIS WILL NOT WORK and could even damage the keyboard!

This is a little bit beyond what I am directly able to do, but it should be possible.  Certainly, it is possible for a computer to read, by way of MIDI, what notes are being played on a keyboard.  And it should be possible for a computer to output a signal under the control of a program running on the computer (after all, computers are hooked to various peripherals that are controlled by the computer all the time).  So, for someone with the knowledge, equipment, and maybe too much time on their hands, this could be a good way to test this sustain function.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

mikf


EileenL

Would be no problem at all if the time was taken to learn how to use the sustain effect instead of taking hours writing about it. What is the point of having a keyboard if you are not prepared to learn how to use it.
Eileen

SciNote

Quote from: EileenL on August 30, 2022, 05:44:00 AM
Would be no problem at all if the time was taken to learn how to use the sustain effect instead of taking hours writing about it. What is the point of having a keyboard if you are not prepared to learn how to use it.

For the most part, I agree.  But then why have easy-play/single-finger chords -- even on a Genos?  After all, it's better to take time to learn how to play chords and left hand accompaniment, right?  It's because these are convenience features that help people who are either still learning how to play, or who just want to play their own music without fully learning how to play.  Plus, as has been mentioned above, a feature like this could even be useful for experienced players in situations where hooking up and using a pedal would be inconvenient, or where the keyboardist might be using the pedal to control something other than sustain.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

DerekA

I don't have any problem with this concept. After all as you say nobody berates people who use single-finger chords.

But is the sustain not controlled by MIDI controller 64? In which case your program could just detect chord changes as you've said, but then just send CC64 off/on to the RH MIDI channel, rather than trying to 'play' the actual physical pedal?

In fact, detecting the chord change might be the trickiest bit. You can't easily monitor it in the way you've suggested - you would be looking for a MIDI message to be emitted that said the chord had changed, and I'm not sure if there is one unless it's one of the Yamaha SY*** ones.
Genos

SciNote

Maybe so, and if so, that would be even better!  I'll be the first one to tell anybody that I know very little about the details of MIDI, other than it sends and receives note data.  I was just thinking of one possible way that a hobbiest could actually try this out.  If the sustain pedal on/off can be controlled by a MIDI message sent from the computer to the keyboard, then that would be even better than rigging up a relay, transistor, or other component to the sustain pedal jack.

As for the chord change, I am suggesting that the computer program would just monitor the notes being played on the left side of the keyboard multiple times -- maybe 10 times -- per second.  Then, the program running in the computer would analyze those notes with each iteration of the loop, calculate what chord is being played with those notes, then activate the pedal release/reapply when it detects that the chord now being played is different than the chord that was being played the last time the program analyzed the notes during the previous iteration of the loop.  Therefore, a direct "chord change" message from the keyboard would not be necessary.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

DerekA

My point was, you *cant* "monitor" the keyboard to see what's been pressed. That's not how it works. It works by sending event messages, which are telling the tone generator to do something (stop something, start something, or change something). There is no way to ask the tone generator "what are you playing right now".
Genos

mikf

Learning to play full chords is a 9 or 10 in difficulty for a beginner. And without chord driven accompaniment the arranger is nothing. That's why arranger manufacturers go to great lengths to provide easy play chord systems.
Learning to use a sustain pedal is only about 1 in difficulty and not very essential for beginners.
Mike

Joe H

MIDI is not a compiled programming language. It is a simple 7-bit hexadecimal numbering system.  There is a reason that the sustain message is not allowed in style Parts.  It would corrupt the style file.  It can be used in Right hand Voices ONLY and implemented with a sustain pedal.  Just learn how to use the sustain pedal.  Wanting an automatic sustain function is unrealistic.  Just practice using the sustain pedal. It's just part of the tecnique of playing the piano.  Practice, practice, practice... you will eventually get the hang of it.

;)

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

SciNote

1. If I can hook one keyboard up to another by MIDI, and the 2nd keyboard will get the notes played from the 1st keyboard and play exactly what I am playing on the first keyboard, then obviously the 2nd keyboard is getting information on what notes are being played.  Why can't the 2nd "keyboard" be a computer that would be monitoring those notes?  Or, does MIDI only send note-on, note-off type messages, meaning that once the note-on message is sent, there is no way to scan the keyboard and see what notes the player is still holding down?  If that's the case, then yeah, that makes it more complicated, because the computer program that I propose would then have to look for the note-off messages, as well as note-on messages, to see what is currently being played.  That would be more complicated.

2.  Are you telling me, that even on a high-end keyboard like a PSR-SX700, SX900, or Genos, that you cannot have the sustain pedal apply sustain to the left hand side of a split keyboard?  I know that I've been suggesting on this forum for years that Yamaha add that to the PSR-E400 series, and no one has ever told me that it would be impossible for that reason.  I'll have to check the manuals.  But, yes, if the sustain pedal cannot affect the left side of a split keyboard -- even on a high-end keyboard -- then that would make this project only useful for playing a single voice throughout the entire keyboard with no keyboard split.  The program could still just be designed to look at notes being played below a certain point on the keyboard.  If, however, the sustain pedal simply cannot be used on an auto-accompaniment style, then that is no big deal -- you really wouldn't want it there, as the keyboard is taking care of all of that.  But if the sustain pedal can work on both sides of a SPLIT keyboard, with auto-accompaniment switched OFF, then this would be a useful feature

3.  I realize that MIDI itself is not a computer language.  I am saying that someone with programming knowledge of a computer language that can read the midi data coming into the computer could write a program in whatever language (C++? Visual Basic? Something else?) to access and use this MIDI data.  I know that is possible -- obviously -- plenty of music-related computer programs can access MIDI data from a keyboard.  VST/Virtual synthesizer, anyone?

4.  I will state one more time some of the benefits such a system could provide...
> For people learning how to play or who just want to make good sounding music without going through the trouble of fully learning
> For situations where hooking up and using an actual pedal would be cumbersome or inconvenient
> For situations where the player is using the pedal for something else but still wants a "cleaner sounding" sustaining sound
--- for this purpose, it would have to be something included by Yamaha -- anything that this proposed experimental project would do
--- could only access the pedal function directly, so it would only affect whatever function the pedal is currently set up to control

5.  I have been playing keyboard for decades and know how to use a sustain pedal.  Anything that I am suggesting here is not primarily for my benefit, and in fact, I was not the one who started the thread.  I just thought this was a good idea, which is why I have been contributing to this thread.  And, it was set as a sticky, so other people must think this is a potentially good idea, as well.

"Hello,

I tried to read all your explanations and the question I ask myself is whether instead of dissecting all these functions that you describe, you happen to play from time to time and in what form.
musical friendships

Christian"

--- I try to practice and play my keyboards at home almost every day, but I am not currently playing at any public venues at this time.  I do hope to do so in the near future.  I play an eclectic variety of music that includes some New Age (Enya, Vangelis), oldies from the 1960's-1970's, rock from the 1980's, a little jazz, and well-known TV and movie themes.  I also play some original music that I wrote myself, as well.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

Joe H

There is a saying... "you can lead a horse to water, but you can't make him drink"

;D

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

SciNote

I have checked the manuals and reference guides for the SX600 and SX700/900.  There is nothing in there that forbids the sustain pedal being used for the left side of the split keyboard.  It simply states, for each model, that the pedal sustain will affect "all notes played on the keyboard" (and last I checked, the left side of the split is still part of "the keyboard"), and that you can select which part that the function applies to.  I guess it is still possible that Yamaha may have just omitted that the sustain cannot affect the left side of a split, but I seriously doubt it.  On the E400 series, the manual clearly states that the sustain function only applies to the right side of a split, so I don't know why they would leave that out if sustain was not available on the left side of a split on the higher end models.

Maybe someone here with an SX600 or higher can verify this.

And again, I'm not talking about when auto-accompaniment is on.  The keyboard handles sustain and those type of functions with auto accompaniment.  This would just be an enhancement when the player is playing the keyboard manually, like a piano, whether the same sound is being applied to the entire keyboard, or whether the keyboard is split but auto-accompaniment is off.

Some people have a one-track mind   ::) ;D
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

SciNote

To continue from above...

I just realized that such an enhanced sustain feature would, indeed, be useful with auto-accompaniment switched on.  But not to try to sustain the notes of the auto-accompaniment.  Instead, the function would still look for chord changes being played by the player -- even when the player is using auto-accompaniment -- but then control the sustain on the RIGHT side of the auto-accompaniment split.  This would be for the same reason -- to still keep notes (in this case, melody notes) from running together and blurring too much when the chord changes.

Of course, Yamaha could do this.  As is abundantly clear, the keyboard already knows what chord the player is playing and uses this information -- all it would have to do is look for chord changes and then electronically manipulate the sustain pedal as I've described above at length.  And again, this would be for affecting the sustain on the right side of the keyboard, or the melody.

Now, to try to do this with the experimental program I proposed above -- yes, that would be a challenge.  I believe that when auto-accompaniment is on, the various parts of what the keyboard is playing are sent out through MIDI channels 8-16 (or is it 7-15, with the total numbering being 0-15?).  And I believe bass is on one channel, phrases on another, pads on another, drums on another, and so on.  And of course, the various styles out there do not just play chords -- they have all manner of background, counter-point melodies going on, so you cannot just look at all of the notes played on the accompaniment channels, because it would look like the chords are going nuts with each counter-point note change.  You just want the notes of the basic chord being played.  It could be possible to just look at the notes of the "pad" channels, but that might not be perfect because maybe not all styles use pads.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

Joe H

Bob,

FYI... Press the Direct Access then press the pedal with your foot.  It will take you to a screen where you can select Pedal options for sustain. The choices are: Left, R1 or R2 in any combination or all 3 together to use the pedal for sustain.  I tried it by assigning an Electric Piano to the Left Voice.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

SciNote

Quote from: Joe H on August 30, 2022, 10:58:41 PM
Bob,

FYI... Press the Direct Access then press the pedal with your foot.  It will take you to a screen where you can select Pedal options for sustain. The choices are: Left, R1 or R2 in any combination or all 3 together to use the pedal for sustain.  I tried it by assigning an Electric Piano to the Left Voice.

Joe H

Okay, that is useful information.  Thank you for that.

I am unable to test this myself, as the keyboard that I have -- the PSR-E433 -- does not have this option.  On my keyboard, the sustain pedal can be set for a few different options, such as control of the arpeggio function, but when set for damper/sustain, it can only affect the right side of a split keyboard.  But that is clearly stated in the manual, whereas with the higher-end keyboards (SX600, 700, 900), the manual doesn't make this absolutely clear, though it certainly implies what you just said -- that the sustain can be set for any combination of keyboard parts, including all parts together.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

DerekA

Quote from: SciNote on August 30, 2022, 06:24:26 PM
1. If I can hook one keyboard up to another by MIDI, and the 2nd keyboard will get the notes played from the 1st keyboard and play exactly what I am playing on the first keyboard, then obviously the 2nd keyboard is getting information on what notes are being played.  Why can't the 2nd "keyboard" be a computer that would be monitoring those notes?  Or, does MIDI only send note-on, note-off type messages, meaning that once the note-on message is sent, there is no way to scan the keyboard and see what notes the player is still holding down?  If that's the case, then yeah, that makes it more complicated, because the computer program that I propose would then have to look for the note-off messages, as well as note-on messages, to see what is currently being played.  That would be more complicated.

That is correct - MIDI only sends on/off type messages for notes. You can't 'see' what is currently sounding at any point.
Genos

mikf

Let me get this right, you propose linking a computer to the keyboard, presumably having some kind of app loaded on the computer to monitor the chord release, and modifying the keyboard firmware hardware to react to that computer by applying/releasing sustain appropriately ...... all to avoid learning how to use a sustain pedal, one of the simplest to use functions on the keyboard.

Mike

SciNote

Quote from: mikf on August 31, 2022, 05:24:16 AM
Let me get this right, you propose linking a computer to the keyboard, presumably having some kind of app loaded on the computer to monitor the chord release, and modifying the keyboard firmware hardware to react to that computer by applying/releasing sustain appropriately ...... all to avoid learning how to use a sustain pedal, one of the simplest to use functions on the keyboard.

Mike

You seem to have not read my posts.  I'm not going to state, for at least the third or fourth time, why having this "enhanced sustain" function on a keyboard could be useful, even to experienced players.  Go back and look at my 4th paragraph in Reply #46 of the thread.

Now, once again, I did not propose the original idea -- the original poster did that.  I just thought of a way that this could potentially be tested on an existing keyboard, just to see if it would sound good, without having to wait for Yamaha to come out with this function -- if they would even consider it in the first place.

When I came up with this possible test or experiment, nothing that I wrote said ANYTHING about modifying the keyboard firmware hardware.  In fact, I said that if the keyboard has a simple 2-pin jack for a simple SPST on/off switch type sustain pedal, then you would NOT have to open up the keyboard and could just hook any of the components I suggested using (to simulate the operation of a sustain pedal) to an external plug that would simply plug into the sustain jack.  But I did also include the warning that anyone trying this does so at their own risk, as they would still be working with electrical equipment and there could always be a risk of damage to equipment, voided warranties, electric shock, and other undesirable outcomes.

But DerekA went one step further -- he said that the operation of the pedal may actually be able to be simulated by a MIDI command from the computer to the keyboard.  If so, then the special app that would have to be written would only have to send the pedal-off/pedal-on messages through MIDI to the keyboard to simulate the pedal being released and re-applied, and then none of the external electronic components that I mentioned would be required at all -- except the computer, of course.

I previously thought that the app could use MIDI to scan the keyboard to see what notes are being held down, but DerekA said that cannot be done -- that the keyboard just sends note-on and note-off commands as keys are played and released.  However, such an app would still be possible...

If the app first sees note-on for C, note-on for E, and note-on for G, it could calculate that is a C chord.

If the app then sees note-off for the C, but then note-on for the C an octave higher, it would determine notes E, G, and C are being played -- still a C chord -- so don't do anything.

If the app then saw note-off for the E and note-off for the C, but then saw note-on for a D and note-on for a B, with no change to the G that was already being played -- guess what -- now, a G chord is being played (D, G, B) -- so since it's now a new chord, activate the procedure to release the sustain pedal briefly then re-apply it.

And so on...  That's a very simplified example, but you get the idea of what the app would be doing.


Of course, I wouldn't expect anyone to necessarily use such a cumbersome set-up, with the keyboard, computer, custom-app, possible other components, etc., on a permanent or professional basis.  In fact, all of this equipment hooked up in this fashion would defeat some of the possible purposes of Yamaha including such a function on a future keyboard.  This would just be an experiment for a hobbiest who has the knowledge and equipment to set something like this up -- just a way to test, with an actual keyboard instead of just in theory, whether the original idea proposed by the original poster would work and sound good.
Bob
Current: Yamaha PSR-E433 (x2), Roland GAIA SH-01, Casio CDP-200R, Casio MT-68 (wired to bass pedals)
Past: Yamaha PSR-520, PSR-510, PSR-500, DX-7, D-80 home organ, and a few Casios

Joe H

Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Joe H

Bob,

FYI...

The Note Off command is rarely used in MIDI.  Instead Yamaha sends a Note On command with a Velocity value of zero.

The Note On message looks like this for channel 1:  90H (note on)  30H (specific note#) 23H (note velocity) 90H 30H 23H
The message sent by arranger keyboards for Note Off looks like this:   90H (note on)  30H (specific note#) 00H (note velocity) 90H 30H 00H

The actual Note Off message would look like this: 80H (note off)  30H (specific note#) 00H (note velocity) 80H 30H 00H

NOTE: H stands for Hexadecimal

Hope this helps.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Oymmot


Button here button there.
Why not program a Memory button with a longer release on the sound where you want more reverberation. Another then with a smaller release, the problem is solved. Although I think the whole discussion seems nonsense.
Tommy
Tommy Ölin
E-post: tommy.sune.olin@gmail.com

Rick D.

I have yet to see a half pedal for sustain on any keyboard except my Avant Grand N2 Hybrid Piano, and it works great on that. They should be able to bring that feature to Genos.

The only reason I have the N2 and a Genos is that I like weighted keys and the N2 has the same keybed as their acoustic grand pianos.

Rick D.