Yarns Polyphony Only Playing One Note

I was playing my keyboard yesterday with Yarns in the 4P layout in both Poly and Steal Most Recent. I found that many times Yarns would only play one note.

Here is an example:

  1. Play a three note chord with my right hand.
  2. Release my hand from the keyboard quickly and then play a different three note chord.
  3. After trying to play the second three note chord Yarns would only play a single note.

What could be causing this? I also noticed this when I was holding down one bass note with my left and and playing a few notes with my right hand. When I would change the bass note Yarns would get stuck and only play a single note.

I’ll have a look!


@pichenettes - any luck looking at this? I’d hate to have to get a different controller. cry

I wonder, is it possible that this is happening because of my midi keyboard? I’m using an Arturia Keystep. Maybe it gets confused and doesn’t output the notes every time.

Maybe you can record a video? Does the Keystep send a MIDI Start/stop message which could start Yarns’ sequencer?

I’ll record a video the next time I’m able to play. That’s a good idea.

How can I tell if the keyboard sends a start/stop message?

Anyway, a video would probably make things most clear.

I was able to record a video to recreate the issue: https://youtu.be/XYAfGFfIKVY

The layout is 4p and the voicing is steal most recent. Midi is coming from and Arturia Keystep.

Was this video useful?

Just checking in again. Any thoughts?

Because of the lockdown I am present at my office/workshop only one or two days a week. I don’t have any equipment to investigate this at home. Please be patient!

I apologize for my impatience and appreciate your help. I wish you the best in these strange times.

I think I have found the bug! Here is a fix.

yarns.syx.zip (44.8 KB)

I’ve just installed the fix and it appears to be working. Thank you so much! This means a lot to me. Thank you, thank you.

I’m curious, what was the bug?

When receiving a note off message, the module did not do the necessary cleanup and re-sorting of the data structure storing the active voices and in which order they have been recently used. The code made the assumption that only the first mode (POLY) needed such re-sorting, because over the years, all the additional modes (unison, cyclic…) did not need it.

1 Like

Cool - thanks for sharing the code. I haven’t found any other midi-to-cv controllers that have this “steal most recent” mode. Now that this is working as expected I might get another Yarns so I can chain them and possibly have 8 voices of polyphony.