Thank you very much for taking the time to go through this for everyone. This is such a niche topic, and so well explained. Very much appreciated! Thank you again
Excellent explanation. I found the sysex portion the most interesting. It really helped connect the bits and pieces I've gathered elsewhere. Thank you!
So tnx for this great video! where can I find all ableton cc values for nektar pacer?! Is there a chart or something like that available?! Because I couldn't get many of cc values with this method! And I really don't know why! For example I get record arm of tracks or play and record button but not solo or mute... and many of them!
Sorry to hear that for the nektar pacer it did not work one way or the other. Unfortunately I dont know this device so am afraid I cannot help here....
Thank you for this. I have a Maschine Mk2 which controls the faders, panningg and transport well, but i cant get it to control the the plugins or use the pads for drums... not sure if this will be possible, but I wil update here if it works
Hi, thanks for a great video. How would it be possible to get my DAW to communicate to my Teensy LC midi control surface its transport control status, and make my mute/solo/record LED's sync to this? Would really appreciate your help with this!
Hi Haidar, yes, that is definitely possible. In the vid below I show how to control your DAW with a phone. Basically you can do exactly the same with the Teensy. The good thing is that you wont need loopMidi to bounce the midi signal back into the computer as you can communicate straight away with the Teensy MIDI interface. Good luck with your project! czcams.com/video/J5nWvlynKTM/video.html
Really helpful video. I am building my own Arduino based midi controller and would like to print the selected track name to an LCD. Is it possible to read SysEx messages and convert them to text on the arduino?
Hi Ishaan, yes that is possible. I made a small example for you, please see the link below. This will receive the track names through the MackieProtocol and write it to the serial monitor. You do need an Arduino with two USB interfaces for this code (one for the MIDI and one for the serial monitor). So the only think you would need to do is write the track names to the LCD instead of the serial monitor. github.com/mo-thunderz/Mackie-Control-MIDIUSB
@@mothunderz Wow! I did not expect you to go out of your way to write an example for me. I really appreciate it. Before your reply, I came across a midi library called Control Surface. The library documentation states that it has a SysEx send and receive function. Do you think this library would allow me to to use an arduino with a single USB interface such as the Sparkfun Pro Micro? Library Documentation: tttapa.github.io/Control-Surface-doc/Doxygen/index.html
Hi Ishaan, a MIDI interface takes up a serial port and thus on a board that has only one USB port you can use the USB port for either USB-MIDI or for the debug console. I just used a Due because it makes debugging easier as you can use one port for USB-MIDI and the second port for the debug console. As you have your own LCD screen you dont need the debug console port and you can use an Arduino with a single MIDI interface (just delete all the comments about the Serial interface). The code I provided will work in essence on any Arduino as long as you make USB-MIDI work. The Arduino Micro does have native MIDI support, so that should work. I dont have one here so cannot test that for you, but I am sure there is lots of information online on how to make the MIDIUSB work for the Micro. You can of course use Control Surface as basis as well, however, from what I have seen that is based on the exact same MIDIUSB library, so if one works, the other works as well. By chance I actually implemented this code for some time ago. I have uploaded it to Github as well: github.com/mo-thunderz/Mackie-Control-MIDIUSB/tree/main/Mackie-Control-Universal-Reverse-Engineering However, I would keep it simple and stick to the first code I sent you (unless you plan to really use the many additional features that Control Surface has to offer). Good luck with your project! MT :-)
@@mothunderz Thank you for clarifying. I thought you meant that I would need to use a second arduino to drive the display because of port limitations. I had one last question that I hope you can answer. My goal for this controller is to use a main button to toggle the looper plug-in on a particular track. I would then like to press a secondary button, cycle to the next track, and use the main button again to activate the next track's looper. I am a little lost on how to do this. Basically I need to be able to change the midi sent from the main button whenever a secondary button has been pressed
Hi Ishaan, I am not familiar with the looper plugin, but it seems to me that this is not a generic DAW function, but an external plugin. The MackieControl algorithm is made to interface with the DAW. There are tricks to control a plugin, but in most DAWs there are more efficient ways to communicate with plugins. I use Ableton and that DAW allows you to map virtually anything to MIDI CC, so instead of going through MackieControl you can just send MIDI CC messages to the DAW and map this to control effects on/off and its parameters. MIDI CC of course only has 128 values, so if you more granularity, another option for Ableton is to use Max4Live: czcams.com/video/pBRe2xz7dgQ/video.html Good luck with your project, and let me know if you post a video of the result!
This video provides a basic explanation on the MackieControl communication interface. This is useful for Digital Audio Workstations like Cubase/Logic/Cakewalk, etc in combination with an external controller. It will not be useful for a stand along tascam processor.
Thank you very much for taking the time to go through this for everyone. This is such a niche topic, and so well explained. Very much appreciated! Thank you again
Glad you enjoyed it!
Well explained and detailed video! You channel is just amazing and keeps on getting better.
Thank you very much for your feedback Nicsi. Good luck with your project!
Thanks, great info!
Thank you for the feedback!
Excellent explanation. I found the sysex portion the most interesting. It really helped connect the bits and pieces I've gathered elsewhere. Thank you!
Glad it was helpful!
Brilliant stuff!!
Thank you for sharing man. Huge time Saver for me. Cheers!
Glad to help! Thanks for the feedback :-)
Thank you so much!
You're welcome!
Keep going, man! Great one!
Thank you for your feedback, will do :-)
excellent video!! thanks!! really helpful!
Glad you enjoyed it!
Super helpful video thanks so much
Glad it was helpful!
Good video trends 👏👏👏
Many many thanks!
So tnx for this great video! where can I find all ableton cc values for nektar pacer?! Is there a chart or something like that available?! Because I couldn't get many of cc values with this method! And I really don't know why! For example I get record arm of tracks or play and record button but not solo or mute... and many of them!
Sorry to hear that for the nektar pacer it did not work one way or the other. Unfortunately I dont know this device so am afraid I cannot help here....
@@mothunderz anyway, so tnx for your time!
Thank you for this. I have a Maschine Mk2 which controls the faders, panningg and transport well, but i cant get it to control the the plugins or use the pads for drums... not sure if this will be possible, but I wil update here if it works
Sounds like a fun project! Good luck and let me know if it worked out :-)
Hi, thanks for a great video. How would it be possible to get my DAW to communicate to my Teensy LC midi control surface its transport control status, and make my mute/solo/record LED's sync to this? Would really appreciate your help with this!
Hi Haidar, yes, that is definitely possible. In the vid below I show how to control your DAW with a phone. Basically you can do exactly the same with the Teensy. The good thing is that you wont need loopMidi to bounce the midi signal back into the computer as you can communicate straight away with the Teensy MIDI interface. Good luck with your project!
czcams.com/video/J5nWvlynKTM/video.html
Really helpful video. I am building my own Arduino based midi controller and would like to print the selected track name to an LCD. Is it possible to read SysEx messages and convert them to text on the arduino?
Hi Ishaan, yes that is possible. I made a small example for you, please see the link below. This will receive the track names through the MackieProtocol and write it to the serial monitor. You do need an Arduino with two USB interfaces for this code (one for the MIDI and one for the serial monitor). So the only think you would need to do is write the track names to the LCD instead of the serial monitor.
github.com/mo-thunderz/Mackie-Control-MIDIUSB
@@mothunderz Wow! I did not expect you to go out of your way to write an example for me. I really appreciate it. Before your reply, I came across a midi library called Control Surface. The library documentation states that it has a SysEx send and receive function. Do you think this library would allow me to to use an arduino with a single USB interface such as the Sparkfun Pro Micro?
Library Documentation: tttapa.github.io/Control-Surface-doc/Doxygen/index.html
Hi Ishaan, a MIDI interface takes up a serial port and thus on a board that has only one USB port you can use the USB port for either USB-MIDI or for the debug console. I just used a Due because it makes debugging easier as you can use one port for USB-MIDI and the second port for the debug console. As you have your own LCD screen you dont need the debug console port and you can use an Arduino with a single MIDI interface (just delete all the comments about the Serial interface). The code I provided will work in essence on any Arduino as long as you make USB-MIDI work. The Arduino Micro does have native MIDI support, so that should work. I dont have one here so cannot test that for you, but I am sure there is lots of information online on how to make the MIDIUSB work for the Micro. You can of course use Control Surface as basis as well, however, from what I have seen that is based on the exact same MIDIUSB library, so if one works, the other works as well. By chance I actually implemented this code for some time ago. I have uploaded it to Github as well:
github.com/mo-thunderz/Mackie-Control-MIDIUSB/tree/main/Mackie-Control-Universal-Reverse-Engineering
However, I would keep it simple and stick to the first code I sent you (unless you plan to really use the many additional features that Control Surface has to offer). Good luck with your project!
MT :-)
@@mothunderz Thank you for clarifying. I thought you meant that I would need to use a second arduino to drive the display because of port limitations. I had one last question that I hope you can answer. My goal for this controller is to use a main button to toggle the looper plug-in on a particular track. I would then like to press a secondary button, cycle to the next track, and use the main button again to activate the next track's looper. I am a little lost on how to do this. Basically I need to be able to change the midi sent from the main button whenever a secondary button has been pressed
Hi Ishaan, I am not familiar with the looper plugin, but it seems to me that this is not a generic DAW function, but an external plugin. The MackieControl algorithm is made to interface with the DAW. There are tricks to control a plugin, but in most DAWs there are more efficient ways to communicate with plugins. I use Ableton and that DAW allows you to map virtually anything to MIDI CC, so instead of going through MackieControl you can just send MIDI CC messages to the DAW and map this to control effects on/off and its parameters. MIDI CC of course only has 128 values, so if you more granularity, another option for Ableton is to use Max4Live:
czcams.com/video/pBRe2xz7dgQ/video.html
Good luck with your project, and let me know if you post a video of the result!
How do we record and in what? I have an old tascam 16 track sound processor
This video provides a basic explanation on the MackieControl communication interface. This is useful for Digital Audio Workstations like Cubase/Logic/Cakewalk, etc in combination with an external controller. It will not be useful for a stand along tascam processor.