Yes, this version will only handle one note at a time. To handle more notes, we would need additional translators and timers. Each timer would handle it’s own note. There would have to be a way to allocate separate translators for each note as they come in. You could probably use the note number and note counter. For instance, if there is still a note being processed, you would then move onto the next timer and set of variables. You would clear the note number variable when finally turning the note off. This would be the way to determine if a note is currently in use. If it is 0, then its respective variables and timer is free for use, If not zero, you move onto the next set. How many simultaneous notes would you expect to handle?
Since this is to handle lighting effects, maybe you should only pick the root note of a given chord to process. If the timer is running, ignore all other notes until the timer has finished. You would need another variable as the “timer running” flag.
Developing this would be beyond the scope of this forum but I could handle on a fee basis if you are interested. Just send me an email if interested.
Steve Caldwell
Bome Q and A Moderator and
Independent Bome Consultant/Specialist
bome@sniz.biz