Hello all, my name is Tinjo, htevents on this forum. 32 years old, from the Netherlands.
My knowledge to what it takes to finish what I want is limited, but not zero. Fortunately, I have a father in law that has more/a lot of knowledge about scripting and programming on a Arduino or similar, but he has no knowledge of MIDI, Control Change, Program Change and so on.
The combination of my (little) knowledge, his knowledge of programming and the knowledge on this forum, should make my project work. At least I hope so.
The project idea
I want to build a custom MIDI controller for my DAW that mimics a channel strip. A bit like the Softube Console 1 MK2, but with more encoders for my purpose, a layout that suits me better and only MIDI control, no dedicated software and mine will be a 19 inch rack mountable controller.
Within my DAW, I use EQ’s, compressors and so on. To be able to get to the controls of a plugin fast, I want to almost instantly know what knob to turn on the controller, so I made “dedicated” zones in the controller, but of course I can map every controller to every possible parameter. I use Presonus Studio One and it has the “Control Link” function. When Mackie MCU mode is used, I only have to “wiggle” the software parameter, wiggle the controller encoder and click “link” to finish. When in “normal” midi mode, I have to add controls in Studio Ones midi section (midi learn) and then link them to the hardware encoders. Then in the software I can link them to the parameters. Just an extra step. But I prefer the latter, because it will give me more flexibility and takes less programming in the end.
The controller is going to have/need 32 endless encoders (possibly with LED ring for visual feedback) and at least 10 push buttons (momentary), possibly illuminating for visual feedback. Why endless encoders? Well, several plugins can use the same encoder, for example: EQ plugin of mixer channel 1 will have a different value for parameter A, than parameter A of the EQ plugin of mixer channel 2, so if I would have worked with pots, there will be jumps in values between the plugins and it’s parameter values when changing the value by the pot because of absolute values from a pot instead of relative from an encoder, although I think the encoders should send their absolute position, only the DAW is updating the encoder values with feedback when changing plugins, if you understand what I mean.
I did some testing with my Behringer X-Touch compact and when in “normal” midi mode I don’t get the jumps in values, so the DAW does give feedback to the controller, with the “Transmit Value” function in Studio One, so I don’t need to run it in Mackie mode. Transmit Value is a function of Studio One, but I think it is just a MIDI signal back to the controller, so nothing fancy going on, besides the fact that when switching between plugins, Studio One is automatically sending those signals to a controller.
So what do I want and is this feasible?
- 32 encoders, possibly with LED rings for visual position of the encoder, sending CC messages
- At least 10 momentary push buttons, possibly illuminated for visual feedback, sending note messages I guess? Maybe they should be programmable as latching, but within the script, so they can be updated by the DAW
- Controller should be able to receive midi, so the DAW can “update” the values/positions of the controls, when I switch between plugins.
- The above means that the controller has to be able to “remember” the status/value/position of the encoders and buttons.
More things I need to implement, think about, etc?
I really hope someone finds this project interesting enough to collaborate with me on this project.
I am based in the eastern part of Gelderland, the Netherlands, so if there is a Dutchie willing to help me with this, that would be even better, although I appreciate everyone helping me with this project.
Although I do want to learn many things myself, this project has a time limit so I am going to need help on this one.
Personally I think this is a feasible project, but maybe I am wrong or will it take a lot of time or will it cost me too much.
Thank you all in advance for helping.
My knowledge to what it takes to finish what I want is limited, but not zero. Fortunately, I have a father in law that has more/a lot of knowledge about scripting and programming on a Arduino or similar, but he has no knowledge of MIDI, Control Change, Program Change and so on.
The combination of my (little) knowledge, his knowledge of programming and the knowledge on this forum, should make my project work. At least I hope so.
The project idea
I want to build a custom MIDI controller for my DAW that mimics a channel strip. A bit like the Softube Console 1 MK2, but with more encoders for my purpose, a layout that suits me better and only MIDI control, no dedicated software and mine will be a 19 inch rack mountable controller.
Within my DAW, I use EQ’s, compressors and so on. To be able to get to the controls of a plugin fast, I want to almost instantly know what knob to turn on the controller, so I made “dedicated” zones in the controller, but of course I can map every controller to every possible parameter. I use Presonus Studio One and it has the “Control Link” function. When Mackie MCU mode is used, I only have to “wiggle” the software parameter, wiggle the controller encoder and click “link” to finish. When in “normal” midi mode, I have to add controls in Studio Ones midi section (midi learn) and then link them to the hardware encoders. Then in the software I can link them to the parameters. Just an extra step. But I prefer the latter, because it will give me more flexibility and takes less programming in the end.
The controller is going to have/need 32 endless encoders (possibly with LED ring for visual feedback) and at least 10 push buttons (momentary), possibly illuminating for visual feedback. Why endless encoders? Well, several plugins can use the same encoder, for example: EQ plugin of mixer channel 1 will have a different value for parameter A, than parameter A of the EQ plugin of mixer channel 2, so if I would have worked with pots, there will be jumps in values between the plugins and it’s parameter values when changing the value by the pot because of absolute values from a pot instead of relative from an encoder, although I think the encoders should send their absolute position, only the DAW is updating the encoder values with feedback when changing plugins, if you understand what I mean.
I did some testing with my Behringer X-Touch compact and when in “normal” midi mode I don’t get the jumps in values, so the DAW does give feedback to the controller, with the “Transmit Value” function in Studio One, so I don’t need to run it in Mackie mode. Transmit Value is a function of Studio One, but I think it is just a MIDI signal back to the controller, so nothing fancy going on, besides the fact that when switching between plugins, Studio One is automatically sending those signals to a controller.
So what do I want and is this feasible?
- 32 encoders, possibly with LED rings for visual position of the encoder, sending CC messages
- At least 10 momentary push buttons, possibly illuminated for visual feedback, sending note messages I guess? Maybe they should be programmable as latching, but within the script, so they can be updated by the DAW
- Controller should be able to receive midi, so the DAW can “update” the values/positions of the controls, when I switch between plugins.
- The above means that the controller has to be able to “remember” the status/value/position of the encoders and buttons.
More things I need to implement, think about, etc?
I really hope someone finds this project interesting enough to collaborate with me on this project.
I am based in the eastern part of Gelderland, the Netherlands, so if there is a Dutchie willing to help me with this, that would be even better, although I appreciate everyone helping me with this project.
Although I do want to learn many things myself, this project has a time limit so I am going to need help on this one.
Personally I think this is a feasible project, but maybe I am wrong or will it take a lot of time or will it cost me too much.
Thank you all in advance for helping.