Dedicated controller for soft synth that also reflects current settings

Status
Not open for further replies.

sheilaanderson

New member
Hi, I am new to teensy development, so before I start any project, I first want to check if it is possible to achieve what I want with Teensy.

Here is what I would like to create:
a dedicated midi controller for soft synths (plug-ins). However, it should not just be able to sent values, but also receive and reflect current settings. So, when a different preset is selected, the new values should automatically be updated and shown on the midi controller.

This is how I would like to do it:
I want to use endless encoders with led rings or bars. The leds reflect the value of the current setting. Furthermore motorised faders, that also are automatically updated when a different setting is chosen.

This will be the environment: Logic as vst host on a Macbook.

The first question I have, is:
Is it possible with teensy to receive settings from a soft-synth (plugin) running in Logic (current selected plug-in). If so, where can I find any documentation or examples regarding which information is sent by Logic and how it can be processed with Teensy.

To be clear: it is not about controlling Logic nor its smart controls. I just want to control the plug-in itself. Logic is only the host.

Thank you in advance for your comments.
 
As far as I know getting feedback from Logic (or any other DAW) is only possible through the Mackie Control (or HUI) protocol. Logic also supports OSC (Open Sound Control,for the Ipad remote app) but I never could find any documentation on that, a question about documentation on the Logic support forum was never answered.
There are two major issues with the Mackie control protocol:
1. A typical controller can only access 8 parameters at a time for each midi port and there's absolutely no control over which parameters.
2. Only 7 characters are used to display parameter names and values, this leads to cryptic texts where you have to look twice to figure out what you're actually looking at.

Here's my solution for controlling plugins:

Zeus-DPC-Lexicon-front.jpg

I call it the Zeus Commander DPC (DAW plugin controller). It emulates two Mackie control surfaces so 16 parameters can be edited simultaneously. Although there are 16 rotary encoders these do not use the rotary encoder part of the Mackie protocol but the fader part. I find the feedback with led rings cumbersome, the resolution isn't very useful. The faders are controlled with 10bit resolution, this allows for more precise control and feedback. Two 4D Systems 7" displays are used for the feedback.
You could use this setup for controlling synth plugins but the amount of parameters involved is so large that a lot of page scrolling is required. I build it specifically for controlling effect plugins, only a few plugins I use have more than two pages of 16 parameters and even then the most commonly used parameters are on the first page.
The code looks at the display text to determine the plugin and show an icon on the display and text is 'translated' into something more readable. Here's a sample for the Lexicon 224 reverb plugin in the picture above:
Code:
                                              "Crssvr","   Cross Over   ",
                                              "TrblDc","  Treble Decay  ",
                                              "Predel","   Pre-Delay    ",
                                              "PreDly","   Pre-Delay    ",
                                              "Diffsn","   Diffusion    ",
                                              "LFDcy ","   LF Decay     ",
                                              "HFDcy ","   HF Decay     ",
                                              "PkRdct"," Peak Reduction ",
                                              "Emphss","    Emphasis    ",
The left column is what you would see on any Mackie Control compatible controller irrespective of price, it is a fundamental limitation of the protocol itself. My approach is not a general solution but it works for me and it can be easily adapted to suit other uses.

Here's the complete sketch: View attachment Zeus-DPC.ino

The controller is fully functional and it is working very well. The little icon of the plugin and the readable text make it possible to see the settings at a glance, you immediately see what you're controlling and what the settings are.


Kind regards,

Gerrit
 
this is a great project and reaper is the best daw ever...
would you recommend using midi MCU emulation or OSC for a similar controller? thanks!
 
it would be great to decide how the fx parameters are mapped to the various encoders ;-)

this is a great project and reaper is the best daw ever...
would you recommend using midi MCU emulation or OSC for a similar controller? thanks!

Mapping fx parameters to encoders can be done with the CSI project (Control Surface Integration), if you are just getting started this is probably the best approach. Both MIDI and OSC can be used with this, which one to use depends on your preference and the complexity of your setup. When I started my project it was as a controller for Logic and MCU was the only way to go. With Reaper I would advise against using MCU, use the CSI approach if you want to create your own parameter mappings or the standard Reaper OSC functionality if you don't need to create specific mappings.
I didn't delve into the workings of the CSI stuff so I can't help you with this but there's support available on the Reaper forum.
 
Status
Not open for further replies.
Back
Top