Problems with stuck MIDI notes
  • I finally got a synth sound I like, but when I play it, some MIDI notes stick on. When I play the same note again, it turns off of course. I wondered if anyone else was having this problem. I'm playing a CoreMIDI compatible keyboard in Poly 8 mode. Everything about the patch is working fine except the sticky MIDI. The keyboard doesn't have any problems with any other synths. Is it perhaps some kind of timing issue? I've read discussions here that MIDI is being looked at for other reasons. If so, I wonder if you could take a look at this issue as well. The patch is attached just in case.
  • I am a little confused by the design of the patch, is this an additive synth voice? It works great on my mac desktop, I'm using a Korg nanoKEY usb controller.
  • Thanks for checking! Yes, it’s additive. To you wizards my designs probably look funny [grin]. I’ve already done major revisions to make it clearer to myself too (latest is attached). My intent was to make something easy to tweak so I could play around with overtones/detuning/octaves to hear what the combinations sound like. I’m currently working with 7 voices (my Pro is showing about 20%) but it’s hard to resist the temptation to add more...
  • Indeed, sometimes I get a little stuck in my ways and it's hard to step back and see things from a different perspective.

    You might like STS Harmonic Generator. It has a pretty CPU efficient way of making a bunch of overtones and you can set the level and phase of each one. There is also a tool called the tiltatron that allows you to adjust many inputs simultaneously.
    Screen Shot 2018-04-16 at 1.28.46 AM.png
    956 x 668 - 201K
    Harmonic Generator with Tiltatron.audulus
  • I( see nothing in your patch that would cause a stuck note and I was unable to reproduce it with a couple of different keyboards. It seems to me that I had a similar problem at one point and was never able to reliably reproduce the issue. In my case I put a meter on the gate output from the keyboard node and one of the gate signals remained high even with no note being played. It could be related to CPU load perhaps. The most likely explanation is a missed note-off MIDI message from the keyboard. If the problem persists, you might want to drop a note with the details and a copy of your patch although it will be difficult to troubleshoot unless it's reproducible.
    I like your patch, it's an interesting approach to additive synthesis. It has almost an PM sort of sound. You might want to have a look at a variant of the harmonic generator I put together done by @Rudiger. It features a mechanism to smoothly detune the harmonics. Here's the thread:
  • It's great to have people who know what they're doing chiming in on my post. Thanks for just paying attention! Before I begin, I have a question. When you add Audulus to an input slot in AUM, it gives you the choice of "Audulus IAA INSTRUMENT". When used, however, no sound flows through the AUM path. That confuses me for starters. The only way to get sound out of Audulus in AUM is to add it in the effect slot. Just what IS an "Audulus IAA Instrument" then?

    Here's my latest attempt to find the source of the MIDI sticky problem:
    -I have a MIDI file playing in a loop in Cubasis with its MIDI output to Virtual.
    -I have an AUM lane with Audulus in the effect slot, and Mix Bus A in output.
    -I have a second lane with Mix Bus A in the input slot, EOS in the effect slot, and speakers in the output slot.

    The relatively short MIDI loop in Cubasis makes notes stick the same as my MIDI keyboard did, and they're not the same note in every pass. Also SOME notes in the loop occasionally don't play at all. So there is definitely something in the MIDI in to Audulus that is getting missed. Sometimes they're MIDI note ons, and sometimes they're MIDI note offs.

    What should I provide to the */support so they can review the problem?

    P.S. The rather ethereal MIDI loop I have going actually sounds good with an occasional stuck note. It gives it some variation. :) But if I want to use this in creating a recording, I'd rather have something dependable. Lol
  • How does the patch sound if you sequence it with external gear? Is it an interaction with the midi routing between apps or something specific to Audulus?

    I haven't messed around with using Audulus as a virtual instrument in Cubasis very much, but I made a midi track, set Audulus as a inter-app audio instrument and recorded a midi loop. It seemed to play without errors.

    It seems like attaching image attachments aren't working right now, but I basically just omitted Aum from the chain and had midi out routed to audulus.
    2732 x 2048 - 955K
    2732 x 2048 - 307K
  • I was using external gear when the problem first cropped up. There is only virtual MIDI in to Audulus, right? I just hard and soft booted the iPad (I'm told there is a difference in making sure everything is cleared from the iPad). I'll run through all of the scenarios again after the boots...

    Scenario 1 - MX49 CoreMIDI to Audulus
    MX49 MIDI kybd connected to iPad through CCK
    Audulus started and the patch opened
    Played just a few chords (poly8) and there are stuck notes.

    Rebooted the iPad

    Scenario 2 - MX49 to AUM to Audulus
    MX49 MIDI kybd connected to iPad through CCK
    Opened AUM and put Audulus 3 IAA Instrument in the input slot of Lane 1
    Routed Yamaha MX49 MIDI in to the Audulus Instrument
    Clicked on Audulus and opened the patch
    Played chords for about 20 seconds and there are stuck notes.

    Rebooted the iPad

    Scenario 3 - MX49 to Midiflow to AUM to Audulus
    Started AUM
    Used MIDIflow to route the MX49 output to the AUM destination
    Added Audulus to the input slot in AUM
    Routed "AUM Destination" MIDI as the input to Audulus.
    Opened the Audulus patch
    Played about 10 seconds and there are stuck notes.

    Rebooted the iPad

    Scenario 4 - MX49 to Cubasis to Audulus as an IAA Instrument
    Started Cubasis
    Set the MIDI input to the MX49 MIDI kybd
    Added an empty MIDI track and record-enabled it
    Routed the Cubasis instrument to Audulus IAA instrument
    Played about 5 seconds and there are stuck notes.

    Rebooted the iPad

    Scenario 5 - Play a MIDI track in Cubasis (no MX49) to Audulus as an IAA Instrument
    Started Cubasis
    Recorded a MIDI track of about 10 bars of Poly8 chords
    Set MIDI In to None
    Set Audulus as the instrument on the MIDI track
    Played the MIDI, which sounded in Audulus, but there are stuck notes.
    In this last scenario, the MIDI shows NO notes lasting more than a beat. All that should be happening is Cubasis sending the MIDI to Audulus. If it were Cubasis' problem, this would basically be a fatal flaw in Cubasis, which is unlikely. So we're down to the likelihood that Audulus is intermittently not receiving MIDI signals. As a software developer, I trust my logic, right?

    Here's what's left... I can create a version of my patch with only one oscillator (which greatly reduces CPU load in Audulus) and try it again.

    I've let the simplified version play through several times with no stuck notes. Soo... It appears it's the load on Audulus causing the failure, although the CPU in the heavy version stays at about 25%. I have the keyboard patch set on Poly 8. I had 7 copies of the voice patch in the heavier version, so that would be 7 times up to 8 polyphonic notes going through the Audulus oscillators at once.

    But then... I went back to the original version and played it several times with no stuck notes. Sigh.... OK... forget it. I'll just have to be aware of these possible problems in anything I do in future. :(

    Thanks for any time and effort you've spent!
  • I’m constitutionally incapable of quitting I guess... In the tests WITHOUT the midi kybd, it was still connected to the iPad (and turned on). For grins, I unplugged it and tried the tests again. There were no stuck notes. I plugged it back in. Stuck notes. I cycled through this several times with the same result. It appears the kybd has something to do with it. What I’m left with is the question of why it doesn’t happen with apps beside Audulus...
  • Well that is truly bizarre. I think @taylor would be the best person to make a supposition about that. I'm afraid I lack any sort of intuition about that sort of thing.
  • @motmeister I suspect your issue with the keyboard and stuck notes might be a MIDI routing issue and there could be duplicate MIDI from the keyboard routed to Audulus.
  • I did the same experiment with the kybd this morning with only one "voice" and there were still stuck notes. I have another MIDI kybd. If I still have the same problem using that one, then it's not the keyboard either. The other keyboard is a Yamaha P105 MIDI piano. There were stuck notes using it too. Both of these keyboards work just fine in all other apps with MIDI in. For testing at this time, I have been using ONLY the single voice patch. Here are the facts:

    1. No problem with stuck notes with either keyboard on other apps with MIDI in.
    2. Stuck notes happen in Audulus when either keyboard is plugged in and turned on, even if the MIDI is NOT coming from the keyboards.

    Is the problem with:
    - the keyboard? No, either keyboard causes the problem.
    - iOS/iPad? No, doesn't happen in other apps.
    - Audulus? It sure looks like it.

    @Paulinko In my baseline testing, there are no other apps running. I started from a clean reboot of the iPad, so there are no ghost apps either. I'm not sure where the duplicate MIDI could be coming from. I'm in the process of sending an email to support.
  • In a note above from @stschoen, he gave me the idea to meter the gate from the keyboard. I decided to attempt that and what I found was very interesting. To an empty patch I added a kybd and a value node. I set the kybd node to Poly8 and connected its Gate to the value in. Playing multiple keys on the keyboard at once occasionally resulted in one of the kybd gate outs being left at 1. It didn't matter if I played them fast or slow. One would just be left on. I would be suspicious of the keyboard, but it happens with either keyboard, and it happens with MIDI in from Cubasis when the keyboards aren't played.

    I have emailed support...

    P.S. What's the data type of what comes out of the kybd gate? Is it an array or something? How could I write an expression to look at just one of the values in a Poly mode?
  • @motmeister I played the patch with a USB MIDI keyboard via the Apple CCK and encountered no issues with playing, recording, or playing back what was recorded in Cubasis most recent update. It worked with no problems in AUM either on iOS 11.3 on an iPad Air 2. iOS and MIDI can be problematic so I hope you’re able to track down the source of your issues with stuck notes.

    The patch sounds very nice too. I have to lower the levels when playing a lot of notes simultaneously so it doesn’t start clipping. I’ve had situations where apps start getting squirrely and want to shutdown if there’s too much clipping.
  • I would definitely test using the CCK if you haven’t done so. It may very well be an issue with IAA MIDI and Audulus or some conflict between Cubasis and Audulus. In any case you should definitely sent a note to describing the problem with as much detail as possible. As a developer yourself you know how difficult it can be to track down this kind of issue, particularly if you can’t reproduce it.
  • thanks, @Paulinko! Being new to this community I find that helpful. I AM using the newest Cubasis, so we're on the same page. Yes, perhaps I should turn down some of the levels on the mixer. You're right about the possible clipping problem.

    @stschoen: I've tried both the USB2 CCK, and the powered USB3 CCK. That's how I connected both keyboards. That doesn't seem to make a difference either.
  • @motmeister I missed where you mentioned you had already mailed support. Sorry to be a bit redundant. Are you experiencing the stuck notes with nothing other than Audulus running? (no Cubasic)? I've tried stressing the patch on my iPad Air 2 by routing it into AUM and then BiasFX to output. I driven it with both a keyboard and the Nord iOS sequencer and I can induce crackling by adding effects in Bias, but I have not been able to reproduce the the stuck note. I don't have a Pro to test with so it's possible that it may be related to the pro hardware in some way if Cubasis isn't a factor. I'm running iOS 11.3
  • Yes, Audulus was the only thing running. Of the points you mentioned, the only thing I haven't done is upgrade to iOS 11.3. I'm doing that as I write. I'll post an update if that changes anything. Yes, I did email support. Thanks!
  • 1. Updated to iOS 11.3.
    2. Connected MIDI kybd to the iPad using the powered USB3 CCK.
    3. Started Audulus, New Patch.
    4. Added kybd and value nodes.
    5. Connected kybd gate to value.
    6. Set kybd to Poly (8).
    7. Repeatedly played the same 8 notes with a brief interval between.
    8. No change as a result of the upgrade to 11.3. There are still stuck notes showing in the value node.

    @stschoen: Yup, this is going to be a tough one to debug... In my developer days, if a user had reported this problem to me, I'd already be tearing my hair out even before I started troubleshooting [wry grin]. Especially since I'm the only one with the problem. In my own testing, I'm playing all the notes from C3 to C4 at one time (so I'm maxing the Poly (8)). It's obvious that one of the MIDI note-offs is getting missed

    Is the Pro that different from the other iPads? I have an Air2 also. I'll try that next.

    Tested that... The problem occurs on my Air2 also.

    I'll stop now and wait for a response from support.

  • You're not the only one that has experienced the problem. As I had mentioned earlier, I have seen a similar problem myself. It was quite intermittent, but did occur multiple times. I had the same symptoms (a gate value on a poly keyboard node remaining high with no note played on the keyboard). I was never able to isolate it to the point where I felt is was worth pursuing, and I haven't seen it for quite some time, but it definitely occurred. Good luck! Hopefully we'll eventually get enough data to identify the problem or something will change and it will mysteriously vanish. :)