Architect: dynamically populate dropdown

Official support for: loomer.co.uk
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi All,
I'm creating a remote control panel for my Eventide DSP4000. I'm able to select individual banks and now I want to dynamically populate a dropdown of programs (i.e. presets) based on the bank selected. Eventually I want retrieve data from the DSP4000, but given that's probably going to be complicated, I'm fine with "hard-coding" the program lists for each bank. As you can see in the screenshot below, I tried to do this with a data module feeding a dropdown. Unfortunately, it does not work. Any suggestions?

 
You do not have the required permissions to view the files attached to this post.

Post

Here's my latest progress. Everything works except the following (front panel image of the physical unit provided for reference):
1. The program drop-down doesn't display programs based on the bank selected.
2. The bypass button gets out of sync with the physical unit. This always happens when I first open the project. Architect fires the bypass command on opening. I thought the On Setup might help, but it doesn't. I'm probably using it wrong.
3. The Rotary encoder doesn't change data values. I found this post which I'm thinking may help: viewtopic.php?p=8161183&hilit=rotary#p8161183
4. The User 1 and User 2 buttons should should load the next or previous programs respectively, but I think there is a typo in the Eventide documentation.
DSP4000-2.zip
dspFront.jpg
You do not have the required permissions to view the files attached to this post.
Last edited by bigbot on Sun Jul 24, 2022 2:50 pm, edited 2 times in total.

Post

Oh, yes, the bank buttons and the bank dropdown are redundant. They will do the same thing; select banks of programs. I can't decide which I like better and may leave both.

Post

FWIW, here's a screenshot of a Max project that does bank and program selection. (I didn't create this, but did make one that worked very similarly years ago.) I don't recall what each component does. Nor do I know what the equivalents are in Architect. For example, the presentation and select messages.
DSPMax.png
You do not have the required permissions to view the files attached to this post.

Post

You can't just copy -paste a max strucutre patch into architect and assume it will work , as you say yourself : you don't know what the equivalents are inarchitect .
If you want to send sysex messages , the template module is your friend .
It looks like the data module but you can add variables (placeholders $1,$2 etc..)
Eyeball exchanging
Soul calibrating ..frequencies

Post

Thanks gentleclockdivide! I wasn't expecting to just copy a Max project. What I'm trying to do is demonstrate what I'm after so that helpful people like yourself don't have to guess as much what I'm asking help with.
It sounds like the Data and Template modules are the Message equivalents if you will.
I've made more progress. I still have the same problems as before, but all new buttons work.
eventide6.png
You do not have the required permissions to view the files attached to this post.

Post

There is a (weak) technical reason for why I haven't yet implemented dynamic Dropdown contents (essentially, it's to do with buffering things between the UI and the audio-thread, the latter being where all the events run.) Not having them is, I admit, a big hinderance, so I will surely look into getting them implemented at some point.

But in the meantime, regarding your eventide controller, how far along have you managed to get? Are points 1 to 4 (from your post above) still incomplete, and if so, which would you like me to help you tackle first?
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Hi Colin,
Thank you for always being so responsive! I really appreciate it. As for the dynamic dropdown, I look forward to what you come up. My next project will likely benefit from it too when available.
As for progress, I'm slowly getting there, but more importantly, I'm really enjoying the software. It kind of reminds me of when I first started using Bitwig. ( that's a compliment by the way!) Here's the latest:
1. Even though the dynamic drop-down won't work (for now) I was able to get the bank dropdown to stay in-sync with the bank buttons. (A pleasant surprise I discovered is it looks like I don't have to worry about the drop-down firing a second bank change when a bank button is used.)
2. I think the On Setup may actually be helping, at least most of the time. I don't have to manually press the hardware button to get the hardware and the software in sync nearly as much.
3. I would really like to get the rotary encoder working next. As it is now, I can control the DSP4000 including changing parameters, but I have to use the Previous, Next and number buttons which is kind of slow.
4. As for the User buttons, Eventide documentation says the fifth byte(?) is "message code for keypress function", and I suspect this is where their documentation is wrong. Unfortunately, when I press the User buttons, no sysex is transmitted, so I can't verify. I did try changing the fifth value and noticed the DSP did lots of other things including a hard restart (ouch!)
Anyway, sorry for rambling. If you have suggestions I can try for 3, that would be awesome!
Here's the file:
DSP4000-2.zip
You do not have the required permissions to view the files attached to this post.

Post

OK, to begin with, I'll see what I can do to get the rotary working. I don't have an Eventide DSP 4000 myself to check if, but provided I can get my hands on the SYSEX spec I should be able to get it working. Which brings me to my first question: do you have a PDF of the 4000 SYSEX reference guide, and if so, could you upload it or email it to me? The links I've found so far have all been historic dead links to the Eventide site, but I'm assuming you have a reference as you've seemingly got pretty far along with your implementation.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Hi Colin - There is a setting in the DSP under Setup called Sequence Out. The manual says when this is set to on, "every time a parameter is changed or program is loaded, a message is sent out from the MIDI out port as a system exclusive message." I tell you this because this is the only way I've been able to see the sysex output when using the rotary knob. I have not found a reference to the encoder in the Eventide docs, but maybe I missed it. Below is a screenshot demonstrating output when I modify two parameters using the encoder. The first three lines are modifications to parameter A and the next set of lines are modifications to parameter B.
Here's one for A:
F0 1C 70 01 02 00 02 00 00 00 00 00 08 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 04 04 01 0A 00 00 00 00 00 F7
here's one for B:
F0 1C 70 01 02 00 02 00 00 00 00 00 08 00 00 00 06 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 04 0B 0C 02 03 0C 00 00 00 F7
 
You do not have the required permissions to view the files attached to this post.

Post

I got the rotary encoder to output data to increment and decrement "program change" commands, but I'm running into a few problems:
1. The output only starts from 1, not 0.
2. The "program change" commands are being issued from 1 to 101. (I put program change in quotes because I'm not sure that is technically correct.) The Eventide responds by cycling through programs 1-10.
3. It would appear the output of the rotary changes based on context. In other words, it changes programs when in the program window. If I am parked on a parameter, it changes the parameter. How am I going to make it aware of context? Especially if I want the encoder output to step through the available values so that the left most travel is the lowest value and the right most travel is the highest value? It seems like I would need to make the Eventide aware of the size of each list/array. Hopefully there is an easier way.

Attached is the latest version.  I've made a few improvements.  For example, clicking a bank button now open the program page with the correct bank open.  Prior to this version, the bank changed, but the program page did not open.  I also added a button for the Levels page.
You do not have the required permissions to view the files attached to this post.

Post Reply

Return to “Loomer”