Stuck notes w DX7

I’m trying to use a Yamaha DX7 as a midi keyboard, but I’m having issues with occasional stuck notes (about every 10th keystroke on average)

The keyboard does not have stuck notes when I use it’s own synthesis, so it can’t be a mechanical
issue with the keys.

Looking at the midi log in synthian’s web UI, I see that the event that should be a note-off (a note with velocity zero is MIDIan for note off) the same velocity as the note-on event is repeated. I also hear the note re-triggering when I release, consistent with the event.

I’ve tried to Google to see if this can be a bug in DX7s midi implementation, but it doesn’t appear like others are having the same issue. Seeing that some other people have had stuck notes on their Zynthian with certain controllers, it seems somewhat more likely that the issue lies there.

Any idea what I could try?

How are you accessing MIDI is it with the 5pin MIDI sockets on the zynth or are you using a USB midi device.?

If the latter don’t forget to turn on the 12Mbit /s option in the webconf.

I had the same issue yesterday with my D50.
But only in combination with a Buster, Raspi3 MCP23008 v1 kit. the V2 works great. And it works great with Jessi.
So what’s your setup?

Are you sure that the DX is sending a NoteOn with velocity 0 instead a NoteOff? Some synths are recognizing this (Dexed) but this is IMHO not MIDI standard… normaly a NoteOff event should be send (this is what may DX7II is doing).

Regards, Holger

Note ON with velocity 0 is definitely valid for standard MIDI. It is an important part of making running status work to significantly improve performance on original serial MIDI.

Ahh, ok. So, every MIDI engine should implement this? I thought this is only for catching a bad implementation which should be treated as normal.

Good to know…

Yes, they should, though USB MIDI devices might never send velocity 0 Note ON messages.
(edited later) - I don’t know if the USB MIDI spec still mandates ‘Note ON Velocity 0’ as synonymous with Note OFF, but I see no reason not to handle it in a MIDI receiver, regardless of serial MIDI or USB MIDI.

It’s quite strange …
Do you have configured some filter rule?

By default, the MIDI logger show the MIDI stream at the MIDI-router output, but you can tell the MIDI logger where to “listen”, so please, listen to the MIDI-IN (or the device you are using as MIDI input), before the MIDI router process the MIDI data.


I have not touched midi filters. And I’m listening to midi in as you suggested… :confused:

We still need more details on your setup, USB devices, kit version & SD image.

Then, i don’t think it’s a zynthian problem. The only software that could be causing the problem is “mod-ttymidi”. Curiously, i’ve found this recent bugfix in mod-ttymidi repository:

It could be related with your problem. If you are using Aruk RC-3, your mod-ttymidi version is prior to this bugfix. Try updating your mod-ttymidi version with this command from the CLI:


Alternately, you could try the latest Buster image:


The ttymidi “fix” looks inappropriate to me. Note on with velocity 0 is a valid MIDI spec. function. Changing this without attention to running status may break things. It will be prudent to review this code change to assess impact on Zynthian.

This appeared to fix it. Would you be willing to try to explain what the problem was and how the “fix” works?

One problem remains that I haven’t yet mentioned: I am sometimes getting a velocity=0 when i press the key. Though this is much less frequent than the stuck note problem, and less of a show-stopper. No idea if it is related or not.

Also see how the note_ons with velocity=0 now appears as note_off. I assume this is what the “fix” did. But I don’t understand how did it take care of the cases where the velocity was repeated from the actual note-on event (which was what was causing the problem)

I saw similar symptoms before I updated. My use case was a bit different in that I was testing the MIDI Splitter LV2 plugin within MOD-UI but I was seeing similar results for one of the channels with stuck on notes and interestingly, the pitchbend notifications. I saw them just for the one channel that was getting stuck. This CH#02 PITCHWHEEL 0 message is not being sent from the MIDI keyboard so is being introduced within Zynthian. It is plausible that the code recently added to ttyMIDI to handle running status does not like this extra pitchbend message and the recent change to note off may help but that is rather clutching at straws!!!

I will raise an issue around the extra pitchbend message because it seems rather odd and may have been the cause of this issue and hence have the potential to cause other issues.

Yes. It’s the zynthian “tuning” system. It’s been there for a while … more than 2 years now!! :wink:

mod-ttymidi is the first element in the input chain and zynthian MIDI output doesn’t contain this “tuning” stuff (do you remember your problem when chaining 2 zynthians, @mheidt? :wink: )


I kept having problems with notes not triggering and also the pitch wheel was not working correctly. Finally downgraded to a straight

That actually works perfectly. notes start and stop when they should and pitch bend works smoothly. I’m fine with staying on this version for a while while i make some music.

My D50 is sending VEL0 instead of Note OFF.
But it sends CC123 (AllNoteOff) as well.
And this was a problem:
When I played the new amsynth today and released a key, I get clicks instead of the proper note off release.

So I used our nice midi filter and filtered all CC123. Now amsynth works correctly for me.

Wow! How strange. Does it do this only after you release the last key (e.g. of a chord) or for every key release?

I considered buying a D50 (an acquaintance loaned me his, probably in a bid to sell it to me) because it has such a nice keybed but I found it was only slightly better than my VZ-1 so will instead restore that (fix sticky keys). Also, I am sure I can get a new keyboard of similar quality for similar price as an aging (1980’s) keyboard, without the maintenance woes… dried capacitors, etc.