News:

CWP2Song, public beta.
My  DAW is Reaper
YouTube channel

Main Menu

SMC-Mixer, WAI and monitoring

Started by mjrmjr, October 24, 2024, 11:47:27 PM

Previous topic - Next topic

mjrmjr

Hi,

 I've recently acquired one of the cheap M-Vave SMC-Mixer control surfaces. It has 8 endless rotary knobs, 8 faders, 8 sets of four buttons that can light up, and 11 transport buttons. It has two modes - "DAW Mode" (where the midi output of the controllers are fixed according to the Mackie protocol) and "User Mode" (where the midi outputs can be customised using some supplied software).

 The manual suggests connecting the control surface to Cakewalk as a "Mackie Control" device. This mostly worked OK but I had a few problems with it, and this led me to try AZ Controller - and it soon became clear that this hugely powerful utility could turn this cheap control surface into something much more flexible and capable.

 Anyway, as a way of learning how to use AZ Controller, I set myself the task of reproducing as closely as possible the functions of the control surface when connected as a Mackie Control device. Much of this was fairly straightforward; there was a bit of a learning curve for some other aspects; but thanks to all the invaluable information on this forum, it was not too long before I was able to reproduce most of the functionality of the Mackie Control, and then make some customizations of my own (e.g. adding double-click actions to various buttons).

 There is however one aspect of the Mackie Control functionality that I am cannot manage to replicate. It's not something that I personally think is very useful, but I would like to know how to do it to help me better understand how AZ Controller works.

 When the SMC-Mixer is attached as a Mackie Control device, pressing the Solo button on e.g. Track 1 causes the Mute buttons on Tracks 2-8 to light up on the controller. The tracks are not actually muted in Cakewalk (the little box with the 'M' in does not turn yellow) - it's just that the Mute buttons light up on the SMC-Mixer to make it visually very clear which tracks are Solo'd and which are not.

 I have managed to replicate this OK when dealing with just 8 tracks. I use software states to record the actual status of each track (e.g. Solo_1 is On or Off, Mute_1 is On or Off), and these are set in the feedback actions for each value. The feedback actions call different routines depending on whether Solo has been turned on or off in a track, and these turn the Mute-leds on or off as appropriate. I also use a variable to keep track of the number of Solo'd tracks. Only when there are no solo'd tracks do I turn off all the Mute buttons (or rather, all the Mute buttons for tracks that are not actually muted in Cakewalk).

 The problem comes when I switch to the next set of tracks using WAI. When set up as a Mackie Controller, the mute-buttons light up as expected whatever tracks the controllers are set to. However, in my setup with AZ Controller, when I switch from Tracks 1-8 to Tracks 9-16, things go awry. Let's say that the controller is set to tracks 1-8. In Cakewalk, with the mouse I solo Tracks 1, 2, 11 and 12. The Solo button for Tracks 1 and 2 light up, and the mute buttons 3-8 light up. My variable that records the number of solo'd tracks only registers 2 solo'd tracks (tracks 1 and 2), but that's only to be expected.

 When I press the "Shift WAI Right" button to move to tracks 9-16, the first two Solo buttons go out (as expected), and the third and fourth Solo buttons (corresponding to tracks 11 and 12) illuminate, as expected. However, the variable that records the number of solo'd tracks resets to zero (or sometimes decreases to 1), and when it resets to zero all the Mute lights go out.

 I would have thought that the fact that the correct Solo buttons illuminate when shifting tracks would suggest that the Feedback actions were being triggered, but if they are being triggered, they are not correctly changing the state of the variable that keeps count of the solo'd tracks. But I expect that I have probably failed to understand either what happens with the WAI shifts or with monitoring or both.

 I have one other related question. Let's say I have a project with 11 tracks in Cakewalk. When the SMC-Mixer is attached as Mackie Control, pressing the "Shift Tracks Right" button does not move Slider 1 from Track 1 to Track 9 (i.e. adding 8), but rather it moves Slider 8 to the final track (Track 11 in this case), and so Slider 1 moves from Track 1 to Track 4. I'm not sure if I like this behaviour, but again, I would be interested to know whether it is possible to reproduce this behaviour in AZ Controller. I see that there is a box marked "Width" and another marked "Initial" in the WAI control but I don't know what these do.

 Anyway, I hope all the above makes sense, and if anyone had any suggestions, I would be very interested to hear them. I attach a version of the preset that I'm using to work out the mute/solo problem - it's based on the Mackie template that comes with AZ Controller, and I haven't programmed all the other buttons.

 And before I go - I just want to say thanks to Alexey for creating - and supporting - such a useful tool.

 best wishes,

 Matthew

SMC-Mixer Lights.spp

azslow3

#1
Hi,

sorry for delayed replay, I have seen the post at unfortunate moment and forgot to replay (and it was marked as seen...).

--
For Solo->Mute relation.

You can detect "Rude solo", example preset attached. Simper to test with build-in display open (from the Options tab), I output the state there. This example works for Tracks and Busses, so when tracks are not soloed it check buses. If you are interested in tracks only, you can remove the second check.

Important here that "Monitored" (also during checking) state is not the same as "Engine" (permanent) state. So even so extra Actions in Logic set "RudeSolo", it is used as a temporary variable (so we can conditionally test buses), it will not "set" real "RudeSolo". That is done when Monitor is triggered, in its first Action, thanks to "Set engine state" flag.

BTW in Mackie preset there is already "Rude solo" control, just for tracks and just to light corresponding button on Mackie, so without setting any State.

Since you want "Mute" LEDs update depending from "RudeSolo" state, you need set the state in the Monitor, followed by "Reset Monitor" for every Mute LEDs monitors.


It is in general not guarantied in which sequence monitors will be called. If you have dependency, let say "Track 2 solo" should influence "Mute 2 solo", you want "Mute 2" monitor is always called after "Track 2 solo" monitor. Set different Priority parameter for them.

For that reason "counting" can be problematic, since you don't know in which sequence everything is called. Also note Actions can "fail", f.e. if track 2 doesn't exist, using its value will "fail" (choosing the track itself will not "fail", bu "Selection" will be "Invalid", used in the next answer...)
Monitors are still triggered, but setting something from value will not work (correctly).

-----

To set WAI the way you describe. I will not attach an example (let me know if you need it), the logic can be the following (for the "Next bank"):
* "Strip <Strip> WAI + 15 Volume" will select the last strip in the next (8 strips based) bank.
* Selection=Valid: "Strip <Strip> WAI + 8 Volume" will select the first strip in the next bank normally (if all 8 strips are available)
* Selection=Invalid: "Strip <Strip> Last - 7 Volume" will select "Last - 7" strip (but it will be called only in case the first action is failed). Note the number is "7", you want the last strip is the last in bank ( "-0" is last strip, "-1" means there are still 2 and so on).
* Selection=Invalid: "Strip <Strip> First Volume" fallback to the first strip

mjrmjr

Hi Alexey,

 Many thanks for this - everything is working now!

 With the Mute/Solo stuff - when I first added the Rude Solo monitor, it would sometimes work and sometimes not work - but once I reduced the priority of the SOLO monitors relative to the Rude SOLO monitor (as you suggested) it worked every time.

 As for the WAI tracks - I hadn't thought of checking for a valid selection, so that's working well too!

 Thanks again for taking the time to help with this - it is much appreciated! Once I have a moment to tidy everything up I will post the basic preset in case it is of any use to anyone.

 best wishes,

 Matthew