I need help creating a gate counter in core.

Discussion in 'REAKTOR' started by Michael O'Hagan, Jun 25, 2019.

  1. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    I need help creating a gate counter for an envelope trigger system, sort of an easy legato function in core.

    Example: There are 3 keys being pressed in sequence, 1, 2 and 3.

    Gate 1 triggers the envelope, 2 and 3 do not trigger the envelope.

    Gate 3 will be released first, then 2 will be released and them 1 as the last note off event.

    I need the envelope to trigger on the first note and not re-trigger on any added notes, and only release the envelope when all keys are released regardless of the order they were pressed or released in.

    I'm trying with read and write modules but I think I have my ordering wriong.

    does anyone have any examples of how to do this?

    Thanks.
     
  2. herw

    herw NI Product Owner

    Messages:
    6,260
    polyphonic or monophonic ensemble?
     
  3. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    monophonic ensemble, thanks for checking in.

    It seems that your always the one who shows up on my more odball questions.

    Thanks.
     
  4. herw

    herw NI Product Owner

    Messages:
    6,260
    ;) as there is no voice management in core it is important to know
     
  5. herw

    herw NI Product Owner

    Messages:
    6,260
    you have to use chan. message module

    legato gate.png
    ciao herw
     

    Attached Files:

    • Like Like x 2
  6. Seoman303

    Seoman303 NI Product Owner

    Messages:
    153
    Hello herw ,
    why do you write a '0' into the memory on init-events? Isn't the memory initialized with '0'?
    Just out of curiosity...
    Greetings
     
  7. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    Thank you Herw, I'll look this over later and see what I can learn from it, Thanks again.
     
  8. herw

    herw NI Product Owner

    Messages:
    6,260
    by habit? No - if you have no write „0” at the begin of memory line a reinit will not work ;)

    legato gate re init.png

    but wait, re-init is still an issue with setting the memory - have to think about it.
     
    Last edited: Jun 25, 2019
  9. herw

    herw NI Product Owner

    Messages:
    6,260
    It's difficult to catch the re-init properly.
    I have an issue when there are some keys held and i get a re-init.
     
  10. herw

    herw NI Product Owner

    Messages:
    6,260
    got it :)

    legato gate re init 2.png
     

    Attached Files:

    • Informative Informative x 2
    • Like Like x 1
  11. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    I think there is a bug in your gate module.

    It never returns to zero upon release.

    I tracked it down to the Router GT followed by the ->+1 and the ->-1 merger section.

    I'm not %100 sure what these modules are doing, but I think that's where the error is.

    Thank you for this, I'll try and see if I can fix it up.
     
  12. sellotape

    sellotape NI Product Owner

    Messages:
    329
    What you are descriping, sounds like last note priotity with legato. The note in block should handle it, isn't it?
     
  13. herw

    herw NI Product Owner

    Messages:
    6,260
    ? it's working 100% well on my mac. I have tested with MacBook Pro-keys and with midi-keyboard. no bug
     
  14. herw

    herw NI Product Owner

    Messages:
    6,260
    Michael doesn't mention that he want to use any blocks. If i am not right, then use it (i don't think it is better).
    BTW did you test UTL-Util Note In-Block with a re-init while holding keys (legato modus)? There is a bug (retriggering the gate)!

    legato gate re init 3.png
     
    Last edited: Jun 26, 2019
  15. sellotape

    sellotape NI Product Owner

    Messages:
    329
    Even if he doesn't want to use blocks, he will find everything he needs inside it. I'm at the hospital atm and can't check anything but i can't remember that this block did any retrigger to my envelopes when it's set to legato so...
     
  16. herw

    herw NI Product Owner

    Messages:
    6,260
    Get well soon! :)
     
    • Like Like x 1
  17. sellotape

    sellotape NI Product Owner

    Messages:
    329
    Thanks herw, things are looking good. Think i'll be back on friday.
    Btt: gentleclockdivider gave the advise in the ul that the carbon synth has a similar mono mode as well. Should be worth to have a look into it too.
     
  18. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    This is what I'm getting on my system.

    As you can see in ACEW there is no final note off message of 0 comming from the legato module.

    Legato Gate (Herw).png
     
  19. herw

    herw NI Product Owner

    Messages:
    6,260
    ?? There are no note offs with value 0, very strange. What do you use as source for midi gate? Note Off (status = 0) has to have the value 0.
    If the off-value isn't 0, the counter doesn't count down. So the problem is the used source. The chan. message module doesn't send 0 at status 0.
     
    Last edited: Jun 27, 2019
  20. Michael O'Hagan

    Michael O'Hagan NI Product Owner

    Messages:
    829
    I thought I had figured out what it was, but I was wrong, I'm using a maschine MK2 which seems to send note on (St=1) with a value of 0 instead of actual note off (St=0) messages.

    But then I tested it with my Novation Remote SL 25, which sends out proper not off (St=0) messages and it's still not working.

    It will trigger on the first note on and then it gets stuck on that value.

    It never registers any further note on or note off messages.

    EDIT: I think the issue is that the maschine controller seems to be sending note on Val 0 as an off message and the novation unit sends note off velocity values, so both of these controllers work differently than the implementation is designed for.

    What midi controller are you using to test this?