Go Back   Cockos Incorporated Forums > REAPER Forums > MIDI Hardware, Control Surfaces, and OSC

Reply
 
Thread Tools Display Modes
Old 07-19-2019, 03:12 PM   #3401
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
What if, instead of wanting Channel Faders (Home -- that's easy -- it's a constant that can be included in the .zon file), you wanted whatever FX that was mapped before you pressed Sends (that is variable -- it cannot be put in a .zon file).
I guess we're going to differ on this one In your example above, I'd just remap the FX (from memory)

Seriously though, if you feel a stack is necessary for the good operation of CSI, I'm probably best ignored Am I right in understanding that in the current version there is no stack?
MixMonkey is offline   Reply With Quote
Old 07-19-2019, 03:23 PM   #3402
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
I guess we're going to differ on this one In your example above, I'd just remap the FX (from memory)
Cool, customized workflow is indeed what CSI is all about after all, isn't it ?

Quote:
Originally Posted by MixMonkey View Post
Seriously though, if you feel a stack is necessary for the good operation of CSI, I'm probably best ignored Am I right in understanding that in the current version there is no stack?
Yes.

The new version stack will have no affect on GoZone, it will all work as now, there should be no difference, if there is it's a bug.

The addition will be LeaveZone, which will simply back up one as per the discussion.

Unlike the other mess, you have to explicitly call this, it is under your control.

Been thinking a bit more on how you have optimized you workflow by breaking up the C4 into logical Zones.

A very large percentage of the time you will use logical blocks as you have.

Occasionally though, you may want a Zone that takes over A1 B4 C3 B3 D7

Admittedly arbitrary, but LeaveZone would enable putting things back to normal regardless of the Zones previously mapped to A1 B4 C3 B3 D7.
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-19-2019, 04:48 PM   #3403
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
The addition will be LeaveZone, which will simply back up one as per the discussion.
This will be handy

Quote:
Occasionally though, you may want a Zone that takes over A1 B4 C3 B3 D7
Actually, it makes no difference if the widgets are contiguous or not. The blocks I've chosen simply allow me to divide the synth up conceptually. Things that are mapped to the same block will overwrite one another when called (so filter2 overwrites filter1, say, but won't overwrite the filter envelope because it's mapped to a different block).

Really the challenge is to work out what parameters you need to appear on the surface at the same time and make sure they are mapped to different blocks so they can.

For instance, you would want the LFOs to map to a different block than the modulation controls for oscillator, filter and amplifier, so they can be adjusted without constantly switching back and forth in the same block.

I've attached a pdf of the spreadsheet I used to plan it out. You'll be able to see how deep the madness runs Also a zip of the Zones built from the plan.

Each block (16x8) represents a C4 Zone. Red names within a block represent GoZone's within the Zone file. Black names are synth parameters. It's not done yet, but what I have seems to work well.

Last edited by MixMonkey; 08-06-2019 at 11:01 AM.
MixMonkey is offline   Reply With Quote
Old 07-20-2019, 02:27 AM   #3404
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
This will be handy



Actually, it makes no difference if the widgets are contiguous or not. The blocks I've chosen simply allow me to divide the synth up conceptually. Things that are mapped to the same block will overwrite one another when called (so filter2 overwrites filter1, say, but won't overwrite the filter envelope because it's mapped to a different block).

Really the challenge is to work out what parameters you need to appear on the surface at the same time and make sure they are mapped to different blocks so they can.

For instance, you would want the LFOs to map to a different block than the modulation controls for oscillator, filter and amplifier, so they can be adjusted without constantly switching back and forth in the same block.

I've attached a pdf of the spreadsheet I used to plan it out. You'll be able to see how deep the madness runs Also a zip of the Zones built from the plan.

Each block (16x8) represents a C4 Zone. Red names within a block represent GoZone's within the Zone file. Black names are synth parameters. It's not done yet, but what I have seems to work well.
Yowsers !!

Very cool stuff indeed !!

Hope you're auto generating those .zon files

If you aren't, this is a trivial Excel programming task, layout wise, it's a simple hardcoded matrix.

Since your matrix never varies shape wise, statements like Cells(1, "A") are perfectly fine -- your matrix never adds or delete rows/columns -- it is always A1-D8, makes programming a breeze, do it or have a friend do it if you can, it really is easy

If you're already doing this, carry on, and good on ya'

https://www.homeandlearn.org/write_to_a_text_file.html

Instead of commas, you will be writing newline characters, so that each parameter is on a new line as per the .zon layout.

Just another reason why we concentrated on making the file formats simple -- easy to transfer from anything, including spreadsheets

[Edit] Just realized this -- congrats -- you have just written the first User Interface for CSI !!

CSI will now come with .xls spreadsheets for various surfaces -- C4, MCU, etc., brilliant !!

Thank you !!!
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143

Last edited by Geoff Waddington; 07-20-2019 at 02:47 AM.
Geoff Waddington is offline   Reply With Quote
Old 07-20-2019, 04:41 AM   #3405
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

Quote:
Originally Posted by MixMonkey View Post
This will be handy

I've attached a pdf of the spreadsheet I used to plan it out. You'll be able to see how deep the madness runs Also a zip of the Zones built from the plan.

Each block (16x8) represents a C4 Zone. Red names within a block represent GoZone's within the Zone file. Black names are synth parameters. It's not done yet, but what I have seems to work well.

So if I'm reading this right, you are "getting around" stacked zones, by including a path to other zones in current zone, which is quite nice, although it could get very cluttered if you were trying to cover all bases.

Would a "Go Previous" not be easier to navigate? Certainly in case where maybe you're only dropping into a zone for a tweak here or there and back out again.

I'm thinking you could free up more real-estate or combine some zones.

How are you exporting? or Is it just a way to organise before writing the zone?
Freex is online now   Reply With Quote
Old 07-20-2019, 05:35 AM   #3406
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
Hope you're auto generating those .zon files
<sigh> I'm rather ashamed to admit that the spreadsheet was just a layout guide to let me easily see what would collide with whatThe .zon files were created manually (although my cut'n'paste kung fu is pretty awesome)<sigh>

I did wonder if the spreadsheet could be translated into the .zon format directly, but I didn't have the first idea how to do it. I'll read the link you posted and see if it's within my abilities

Quote:
So if I'm reading this right, you are "getting around" stacked zones, by including a path to other zones in current zone
Yes, that's right. The GoZone statements within the Zones provide a way to navigate to different sets of parameters.
Quote:
Would a "Go Previous" not be easier to navigate? Certainly in case where maybe you're only dropping into a zone for a tweak here or there and back out again.
Absolutely, although I usually use the same press to go into a Zone and come back out. Take a look at the two filter zones HYBRID_A_FILTER_1 and HYBRID_A_FILTER_2. In filter 1, D3 Press is GoZone HYBRID_A_FILTER_2 and in filter 2, D3 press is GoZone HYBRID_A_FILTER_1. Result: D3 press toggles back and forth between the two filters.

Quote:
although it could get very cluttered if you were trying to cover all bases
That's the challenge. I don't attempt to provide navigation 'to anywhere' from within each Zone, only to immediately useful destinations. I use A1-A8 to provide more 'global' navigation when needed.

I pretty much start using the thing and when I find that a particular piece of navigation would be useful, I add it in. Flipping back and forth between the two filters is an example of this, also flipping between the two envelopes (although I'm currently considering having them both on the surface at the same time)

The beauty of Geoff's Zone system is you can put anything anywhere and you can also have different mappings for the same thing (this is how I'm going to put both the filter and amplifier envelopes on the surface at the same time, in addition to what's available at the moment, not instead of)

Incidentally, Air Hybrid isn't exactly the greatest softsynth in the world, but it serves as a useful example because it's automation implementation doesn't seem to have any mistakes or omissions in it and it's £11.99 here:https://www.pluginboutique.com/produ.../1545-Hybrid-3)

Last edited by MixMonkey; 07-20-2019 at 07:03 AM.
MixMonkey is offline   Reply With Quote
Old 07-20-2019, 06:13 PM   #3407
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
<sigh> I'm rather ashamed to admit that the spreadsheet was just a layout guide to let me easily see what would collide with whatThe .zon files were created manually (although my cut'n'paste kung fu is pretty awesome)<sigh>

I did wonder if the spreadsheet could be translated into the .zon format directly, but I didn't have the first idea how to do it. I'll read the link you posted and see if it's within my abilities
Yeah, I'm gonna look into this, it's too good to turn down, see more below


Quote:
Originally Posted by MixMonkey View Post
Yes, that's right. The GoZone statements within the Zones provide a way to navigate to different sets of parameters.


Absolutely, although I usually use the same press to go into a Zone and come back out. Take a look at the two filter zones HYBRID_A_FILTER_1 and HYBRID_A_FILTER_2. In filter 1, D3 Press is GoZone HYBRID_A_FILTER_2 and in filter 2, D3 press is GoZone HYBRID_A_FILTER_1. Result: D3 press toggles back and forth between the two filters.



That's the challenge. I don't attempt to provide navigation 'to anywhere' from within each Zone, only to immediately useful destinations. I use A1-A8 to provide more 'global' navigation when needed.

I pretty much start using the thing and when I find that a particular piece of navigation would be useful, I add it in. Flipping back and forth between the two filters is an example of this, also flipping between the two envelopes (although I'm currently considering having them both on the surface at the same time)

The beauty of Geoff's Zone system is you can put anything anywhere and you can also have different mappings for the same thing (this is how I'm going to put both the filter and amplifier envelopes on the surface at the same time, in addition to what's available at the moment, not instead of)

Incidentally, Air Hybrid isn't exactly the greatest softsynth in the world, but it serves as a useful example because it's automation implementation doesn't seem to have any mistakes or omissions in it and it's £11.99 here:https://www.pluginboutique.com/produ.../1545-Hybrid-3)
After thinking about how you use this, and how others likely would, and after having spent another day living in "How does one implement a decent ZoneStack ?" hell, I'm coming around to your way of thinking.

Think of the Zone stack as taking care of what we'll call the "back button issue".

If you are navigating from place to place you don't need the back button, as you indicate.

It's only when you get into "drill down" mode that you need to go back -- but there is good news here -- drill downs know who their parent is, so no need for a back button here either.

In there words no need for a back button at all -- aka no need for a Zone Stack.

There is another issue we've discussed -- what if you just want to toggle map Sends to whatever is on D1-D8, that could be as simple as refocusing, or re-pressing what ever the previous Zone is.

There is a granularity problem, which is solved programmatically with Included Zones, but needs a UI to keep from going crazy with all those Zones -- as in your example.

This is solved with the spreadsheet approach, we can now easily make a reasonable cross-platform interface leveraging the portability of .xls files.

So, I'm gonna clean up what we have here -- Sends, Focused FX, etc., get a build out, and move on to a bit of Excel programming, should be able to do a decent job of a UI in short order
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-20-2019, 11:20 PM   #3408
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 7,494
Default

I have the impression that there never was a workflow concept that has so much been thought about.

But this is perfectly reasonable, as this is a workflow concept that allows for defining workflows.

Thumbs up to the contributors !
-Michael
mschnell is online now   Reply With Quote
Old 07-21-2019, 02:17 AM   #3409
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

Quote:
Originally Posted by mschnell View Post
I have the impression that there never was a workflow concept that has so much been thought about.

But this is perfectly reasonable, as this is a workflow concept that allows for defining workflows.

Thumbs up to the contributors !
-Michael
I think it was maybe more, if you decided on a workflow, then you build only that, Think Geoff was thinking much wider than that. Any surface. Any multiple surfaces, in any combination.
Workflow would be dictated by users and not by design.
Freex is online now   Reply With Quote
Old 07-21-2019, 03:51 AM   #3410
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 7,494
Default

Exactly !
-Michael
mschnell is online now   Reply With Quote
Old 07-21-2019, 04:31 AM   #3411
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Just realized, these will all change as they imply a back button -- aka a concept of previous -- aka where did I come from.

MapSelectedTrackFXToWidgets -- maps but does not unmap (aka go back) upon Track Deselction.

MapFocusedTrackFXToWidgets-- maps but does not unmap (aka go back) upon FX losing focus.

ToggleMapSends - this will go away -- GoZone Sends will be all that's needed.

This forces the question -- what to do if a track is Deselected, or an FX unfocused ?

Any ideas welcomed...
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-21-2019, 04:53 AM   #3412
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
This forces the question -- what to do if a track is Deselected, or an FX unfocused

Any ideas welcomed...
If an FX is unfocussed because a new one is focussed, the new overwrites the old. If the FX is unfocussed because its window is closed, the surface 'goes home'.

In the C4 case this would be a full A1-D8 NoAction and in the case of the MCU, the regular Home of tracks, pans etc.

Quote:
what if you just want to toggle map Sends to whatever is on D1-D8, that could be as simple as refocusing, or re-pressing what ever the previous Zone is.
Exactly. On my C4 the ToggleMapSends button is SpotErase, which sits right next to Marker, Track, ChanStrip and Function, which are the buttons I use to GoZone major Zones in FX maps.

ToggleMapSends doesn't overwrite these buttons, so they should still be active when the sends are splayed.

In fact, if this is the case (can't really check until it's mended) ToggleMapSends really just needs to be MapSends. If you change the track selection, it splays the new track's sends, if you have no track selected it blanks/zeros. That leaves a D1-D8 hole in your FX map which can be repaired by either re-focussing the FX or pressing one of it's GoZone buttons(edit: just realised you said this with GoZone Sends)

Last edited by MixMonkey; 07-21-2019 at 04:56 AM. Reason: fully comprehend before you post
MixMonkey is offline   Reply With Quote
Old 07-21-2019, 06:01 AM   #3413
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
There is a granularity problem, which is solved programmatically with Included Zones, but needs a UI to keep from going crazy with all those Zones -- as in your example.
Actually, the granularity is what stops you going crazy

Being able to divide the thing up into bite size chunks contained within different .zon files makes it a lot easier. Also, the soft synth was intentionally an extreme example, none of the effect plugins I own have maps remotely as complicated as this.

I use BBEdit on mac to edit all this stuff. It has the concept of a 'Project'. All of those .zon files are contained within it.

The whole lot can be searched and replaced (grep style). Columns of text can be selected and cut'n'pasted. It was one operation to change all my:
Code:
DisplayUpperA2		FXParamNameDisplay	"       "
DisplayLowerA2		FXParamNameDisplay	"       "	
RotaryA2		NoAction	
Toggle+RotaryPushA2	NoAction
into:
Code:
	     DisplayUpperA2	NoAction			
	     DisplayLowerA2	NoAction			
	      	   RotaryA2	NoAction						
	Toggle+RotaryPushA2	NoAction
....with search and replace.
MixMonkey is offline   Reply With Quote
Old 07-21-2019, 06:28 AM   #3414
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
Actually, the granularity is what stops you going crazy
I hear ya' on that

Quote:
Originally Posted by MixMonkey View Post
Being able to divide the thing up into bite size chunks contained within different .zon files makes it a lot easier. Also, the soft synth was intentionally an extreme example, none of the effect plugins I own have maps remotely as complicated as this.

I use BBEdit on mac to edit all this stuff. It has the concept of a 'Project'. All of those .zon files are contained within it.

The whole lot can be searched and replaced (grep style). Columns of text can be selected and cut'n'pasted. It was one operation to change all my:
Code:
DisplayUpperA2		FXParamNameDisplay	"       "
DisplayLowerA2		FXParamNameDisplay	"       "	
RotaryA2		NoAction	
Toggle+RotaryPushA2	NoAction
into:
Code:
	     DisplayUpperA2	NoAction			
	     DisplayLowerA2	NoAction			
	      	   RotaryA2	NoAction						
	Toggle+RotaryPushA2	NoAction
....with search and replace.
BBEdit and Grep are your friends -- mine too
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-21-2019, 06:38 AM   #3415
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
If an FX is unfocussed because a new one is focussed, the new overwrites the old. If the FX is unfocussed because its window is closed, the surface 'goes home'.

In the C4 case this would be a full A1-D8 NoAction and in the case of the MCU, the regular Home of tracks, pans etc.
What about this use case:

Sends 1-8 are mapped to Channels 1-8 on an MCU.

Focused FX params are mapped to Channels 1-4 on the same MCU, overwriting Sends 1-4.

FX loses focus.

Channels 1-4 go "Home" to Tracks, but Channel 5-8 which are not in the FX Zone definition stay on Sends 5-8 of the selected Track -- ugghh.

I am hoping someone can come up with some magic here, but failing that, I think the best behaviour we can provide is the Deselected/Unfocused Zone just blanks to indicate it has lost context.
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-21-2019, 06:57 AM   #3416
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
Sends 1-8 are mapped to Channels 1-8 on an MCU.

Focused FX params are mapped to Channels 1-4 on the same MCU, overwriting Sends 1-4.

FX loses focus.

Channels 1-4 go "Home" to Tracks, but Channel 5-8 which are not in the FX Zone definition stay on Sends 5-8 of the selected Track -- ugghh
Don't leave unblanked/unzeroed widgets in your FX map and you won't have this problem This was the first issue I ran into when I made my first 2 Zone FX map. Parameters from the first Zone persist when then the second Zone is called, unless the second zone blanks/zeros them (now a doddle with NoAction)

You have to balance the flexibility of allowing unblanked/unzeroed widgets on the surface (this is what the whole soft synth thing relies on) with mess you've just described. If you want it clean, you have to blank/zero stuff that won't be overwritten by the incoming Zone with new parameters.

Quote:
I think the best behaviour we can provide is the Deselected/Unfocused Zone just blanks to indicate it has lost context
I agree, providing It's not blanking everytime you switch zone.
MixMonkey is offline   Reply With Quote
Old 07-21-2019, 02:41 PM   #3417
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

Having thought about it off and on over the course of the day, I'd tend to agree with Mix' that blanking and no action, is probably the cleanest way to go,
If you see nothing you don't expect anything
If you're seeing controls and they don't work, you think something's gone awry.
Freex is online now   Reply With Quote
Old 07-21-2019, 08:59 PM   #3418
ambient
Human being with feelings
 
Join Date: May 2012
Location: Japan
Posts: 259
Default

Hi all,

Could I just jump in here and ask about the X-Touch One? I'm thinking of getting one, and trying to get a sense of how well I can expect it to work in reaper.

What does/doesn't work?
How difficult is it to get working as best it can?
Should I give in and get a faderport instead?

Apologies for not reading through 80+ pages, but a lot of this stuff is over my head.
ambient is offline   Reply With Quote
Old 07-22-2019, 03:03 AM   #3419
uksnowy
Human being with feelings
 
uksnowy's Avatar
 
Join Date: Feb 2008
Location: 6950 DK
Posts: 432
Default

Quote:
Originally Posted by Geoff Waddington View Post
Good queation.

From some source (unknown):
>>>>>>>>
Alpha Release - This is the release when the feature which you are developing is incomplete or partially complete. Suppose in a Ticket booking system you have developed the seat selection but the payment implementation is remaining. In this case you can release it to testers to test the initial phase of feature. Lot of Open source products do their Alpha release.

Beta Release - This release is done when the product feature is complete and all the development is done but there are possibilities that it could contain some bugs and performance issues.This release mostly done to users who test the product and who can report the bugs. Even UAT phase could be considered as Beta release.
>>>>>>>>

So, I would say we go alpha once Folders and OSC are added.

Then everyone should jump in with particular feature requests for their dream workflow

Then, somewhat arbitrarily, we'll make the call to go beta.

The good news is the beta will be short, as we've been building in stability along the way.

Beta really means, it's complete -- we think -- programmer's famous last words -- hammer away at it, see if you can break it.

Well, we've been doing that all along, especially some great dedicated testers -- thanks folks !!

So, easy question too ask, a bit more tricky to answer
Thanks Geoff.. I can see that you and the team of testers are really doing sterling work. Unfortunately, I neither have the time or the programming knowledge to help out. It's all Dutch to me so I am looking forward to the time we have a Beta and some good documentation.
__________________
REAPING HAVOC SINCE 2008
uksnowy is offline   Reply With Quote
Old 07-22-2019, 04:34 PM   #3420
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

seeing some weirdness here, with bus/folders
-----------------------------------------------------------
SETUP and LAYOUT

I have
DRUM BUS Folder with 8 children
BASS BUS Folder with 2 children
GUITAR BUS Folder with 4 children

that will do for the example,

I have my reaper set to up with show/hide buttons for 3 States, ALL, BUSs, Children
I also have show/hide for each Instrument type, DRUMS, BASS, GUITAR etc.

I'm running 1 XT and MCU in that order.

My BUS/Folders stay in order

DRUM BUS/Children/BASS BUS/Children/GUITAR BUS/Children

--------------------------------------------------------
HERE'S WHAT HAPPENS

I open project template, and everything goes where it should be.

1-8 on XT 9-16 on MCU

Channel 1 is selected (DRUM BUS)

I press "BUS" to hide all but BUSes

BUS's displayed on MCU and XT blanks out. (which is the opposite of the previous build and a little weird).

I press "ALL" to show all

Nothing happens, until I select channel 8 or higher via reaper.

IF I select channels 8-15 all ok.

If I select channel 16 or more everything moves to have that selected channel on Channel 7 of the MCU. Unless I select the last channel then it shows on 8 of MCU, (that bit's fine)

But if I now select DRUM BUS on channel 1

Displays show track 2 on channel 1 and no DRUM BUS to get i to show i need to press (BANK Left or CHANNEL Left buttons on MCU)

--------------------------------------------------------------
WHAT I EXPECTED TO SEE

XT AND MCU populated from left to right following reaper.



Hope this all makes sense, on a positive note, adding and deleting tracks seems stable.
Freex is online now   Reply With Quote
Old 07-25-2019, 06:28 PM   #3421
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
Hope you're auto generating those .zon files
Hi Geoff, I read the the link you posted and I've put together a "CSI FX Zone Configurator For Mackie C4"

It's an Excel spreadsheet and some VBA code that lets you input FX parameters into a simple 8 x 12 grid (each C4 widget is represented by 3 cells: Push, Rotary and Alias)

You simply cut'n'paste the FX parameters from the CSI vst parameter dump into the widget of your choice and enter a display alias if needed.

When you're done, you push the big button and the configurator writes a completed .zon file to the desktop.

If you leave a widget blank, the configurator defines it as NoAction. This blanks the displays and overwrites the controls so there are no parameters left over from the previously active Zone.

Currently this will only work on Mac because of the way the output file path is defined in the code. Unfortunately the Mac version of VBA doesn't allow extension filters in the file selector box, so no file selector box. I'll do a Windows version shortly.

There are a couple of caveats to mention. If you want to just use the Push of the widget you have to paste the name parameter into the rotary position as well so that you can set an alias for the display. I'll work on fixing this.

Also, if you want to re-arrange the parameters you can't 'cut' the cells because it breaks the references to the (hidden) output sheet. Using 'Copy' is fine (deleting the original cell doesn't break the reference) or you can double click the cell and cut just the text and paste it to somewhere else.

When you output a file, you may get an box asking to grant access to the file, probably somthing to do with having macros enabled in Excel. The first file can take a few seconds to appear on the dektop, not sure why.

There's things I want to tidy up in the code (i'm a total amateur) but it does work and it gives a much better overview of the actual surface layout than staring at the text file does.

Any feedback much appreciated (I attached two sheets, one is blank, the other is a layout for ReaEQ as an example)

Last edited by MixMonkey; 08-06-2019 at 11:01 AM.
MixMonkey is offline   Reply With Quote
Old 07-26-2019, 03:36 AM   #3422
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
Hi Geoff, I read the the link you posted and I've put together a "CSI FX Zone Configurator For Mackie C4"

It's an Excel spreadsheet and some VBA code that lets you input FX parameters into a simple 8 x 12 grid (each C4 widget is represented by 3 cells: Push, Rotary and Alias)

You simply cut'n'paste the FX parameters from the CSI vst parameter dump into the widget of your choice and enter a display alias if needed.

When you're done, you push the big button and the configurator writes a completed .zon file to the desktop.

If you leave a widget blank, the configurator defines it as NoAction. This blanks the displays and overwrites the controls so there are no parameters left over from the previously active Zone.

Currently this will only work on Mac because of the way the output file path is defined in the code. Unfortunately the Mac version of VBA doesn't allow extension filters in the file selector box, so no file selector box. I'll do a Windows version shortly.

There are a couple of caveats to mention. If you want to just use the Push of the widget you have to paste the name parameter into the rotary position as well so that you can set an alias for the display. I'll work on fixing this.

Also, if you want to re-arrange the parameters you can't 'cut' the cells because it breaks the references to the (hidden) output sheet. Using 'Copy' is fine (deleting the original cell doesn't break the reference) or you can double click the cell and cut just the text and paste it to somewhere else.

When you output a file, you may get an box asking to grant access to the file, probably somthing to do with having macros enabled in Excel. The first file can take a few seconds to appear on the dektop, not sure why.

There's things I want to tidy up in the code (i'm a total amateur) but it does work and it gives a much better overview of the actual surface layout than staring at the text file does.

Any feedback much appreciated (I attached two sheets, one is blank, the other is a layout for ReaEQ as an example)
WOW !!

Great stuff, thanks !
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-26-2019, 05:17 AM   #3423
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 7,494
Default

Quote:
Originally Posted by Geoff Waddington View Post
WOW !!
Great stuff, thanks !
Wonderful news seeing the project advancing in multiple aspects !!
Now eagerly waiting for documentation to see if/how I will be able to use it (and contribute some stuff regarding the XTouch Compact, if possible.

-Michael
mschnell is online now   Reply With Quote
Old 07-26-2019, 08:00 AM   #3424
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
WOW !!

Great stuff, thanks !
No probs you shouldn't have to do all the work

Incidentally, it does work on Windows The file path was still valid. I'll carry on tweaking to get a bit more out of it. I want it to be able to just leave out widgets as well as blanking/zeroing them with NoAction.

How's the next build looking? Could really use OnFXFocus mended One more thing I noticed, on the C4 NoAction doesn't blank displays on row A, but does everywhere else, weird.
MixMonkey is offline   Reply With Quote
Old 07-26-2019, 08:33 AM   #3425
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
No probs you shouldn't have to do all the work

Incidentally, it does work on Windows The file path was still valid. I'll carry on tweaking to get a bit more out of it. I want it to be able to just leave out widgets as well as blanking/zeroing them with NoAction.

How's the next build looking? Could really use OnFXFocus mended One more thing I noticed, on the C4 NoAction doesn't blank displays on row A, but does everywhere else, weird.
Had relatives visiting from out of town -- summer is visiting time in Canada -- don't know exactly when the next build will be ready, but am getting back at it today
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-26-2019, 08:49 AM   #3426
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
Had relatives visiting from out of town -- summer is visiting time in Canada -- don't know exactly when the next build will be ready, but am getting back at it today
No worries Figured it was probably hols Too bloody hot here, that’s for sure. Hiding out in the studio with the a/ c on until the weather comes to its senses.
MixMonkey is offline   Reply With Quote
Old 07-26-2019, 08:56 AM   #3427
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

Just tried the excel file out on Windows 7

(The User name is needed for WindowsOS as well, not just macOS)

It worked beautifully, awesome work dude.

I take it I could debug it to write to my chosen folder rather than desktop?

Was there any reason for your choice to write to desktop, or simply the common place on all systems.
Freex is online now   Reply With Quote
Old 07-26-2019, 09:17 AM   #3428
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Freex View Post
Just tried the excel file out on Windows 7

(The User name is needed for WindowsOS as well, not just macOS)

It worked beautifully, awesome work dude.

I take it I could debug it to write to my chosen folder rather than desktop?

Was there any reason for your choice to write to desktop, or simply the common place on all systems.
Thanks Yes, you have to put your username in to set the path to the desktop (as it's in your home folder) regardless of OS.

Please feel free to modify it however you like. I just chose the desktop for simplicity and it turns out the path works cross-platform (more luck than judgement )

There are some things I'm going to add/change and then I want to try to get the same idea to work for the MCU (for when you don't have a C4 )

I'd advise making a sheet for each FX and keeping them in case you change your mind about the mapping. It'll save you inputting all the parameters again.
MixMonkey is offline   Reply With Quote
Old 07-26-2019, 09:21 AM   #3429
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

To change the path in Windows, modify this in the code:

Code:
'Set output file path and open
        FilePath = "/Users/" & UserName & "/Desktop/" & FileName & ".zon"
        Open FilePath For Output As #2
MixMonkey is offline   Reply With Quote
Old 07-26-2019, 09:23 AM   #3430
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 420
Default

Quote:
Originally Posted by MixMonkey View Post
Thanks Yes, you have to put your username in to set the path to the desktop (as it's in your home folder) regardless of OS.

Please feel free to modify it however you like. I just chose the desktop for simplicity and it turns out the path works cross-platform (more luck than judgement )

There are some things I'm going to add/change and then I want to try to get the same idea to work for the MCU (for when you don't have a C4 )

I'd advise making a sheet for each FX and keeping them in case you change your mind about the mapping. It'll save you inputting all the parameters again.
You read my mind with the last part, I was planning on having an FX folder with excel folder and FXZONES as sub folders, (hence my ask of modifying the destination output,(easy when all the hard works been done for you) thanks again)
Freex is online now   Reply With Quote
Old 07-26-2019, 12:09 PM   #3431
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Here's the fix to get Pan Width back on MCU, others are similar:

Code:
Zone Channel|1-8
	TrackNavigator
	DisplayUpper|  TrackNameDisplay
	DisplayLower|  TrackPanDisplay
	TrackTouch+DisplayLower|  TrackVolumeDisplay
	RotaryPush| GoZone PanWidth|
	Rotary| TrackPan 0 
	RecordArm|  TrackRecordArm
	Solo|  TrackSolo
	Mute| TrackMute
	Select|  TrackUniqueSelect
	Shift+Select|  TrackRangeSelect
	Control+Select|  TrackSelect
	Fader|  TrackVolume
	TrackTouch+Fader|  TrackVolume
	FaderTouch|  TrackTouch
ZoneEnd

Zone Pan|1-8
	TrackNavigator
	Rotary| TrackPan 0
	RotaryPush| GoZone PanWidth|
ZoneEnd

Zone PanWidth|1-8
	TrackNavigator
	Rotary| TrackPanWidth 1
	RotaryPush| GoZone Pan|
ZoneEnd
[Edit] Hmmm... just ocurred to me that having Zones so free eliminates the need for any Cycler at all

Just chain 'em together so that the last leads to the top -- no magic numbers (how many items to cycle, etc.), just pure simple Zone Activation, extremely flexible
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143

Last edited by Geoff Waddington; 07-26-2019 at 12:26 PM.
Geoff Waddington is offline   Reply With Quote
Old 07-27-2019, 08:05 AM   #3432
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
Here's the fix to get Pan Width back on MCU, others are similar:
Working fine here, thanks

Quote:

[Edit] Hmmm... just ocurred to me that having Zones so free eliminates the need for any Cycler at all

Just chain 'em together so that the last leads to the top -- no magic numbers (how many items to cycle, etc.), just pure simple Zone Activation, extremely flexible
Raises some interesting possibilities I wonder if I can make ALT + RotaryPush cycle through the sends.........


Here's a new version of the configurator. I've added the ability to leave a widget out of the Zone completely (put # in the cell), so that it won't overwrite that widget in the previous Zone (to allow my soft-synth tomfoolery)

Last edited by MixMonkey; 08-06-2019 at 11:01 AM.
MixMonkey is offline   Reply With Quote
Old 07-27-2019, 01:03 PM   #3433
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
Working fine here, thanks



Raises some interesting possibilities I wonder if I can make ALT + RotaryPush cycle through the sends.........


Here's a new version of the configurator. I've added the ability to leave a widget out of the Zone completely (put # in the cell), so that it won't overwrite that widget in the previous Zone (to allow my soft-synth tomfoolery)
Great stuff, as usual !
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-27-2019, 01:06 PM   #3434
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

New build is up.

Should see improvements with Selected FX, Focused FX, and Sends.

Please beat these up and let me know.

Didn't tackle a lot of the other reported bugs, wanted to get this build out to test stability.

There still seems to be no reliable way to find when the last FX loses Focus, so that bug is still there.
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-27-2019, 01:42 PM   #3435
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
New build is up.

Should see improvements with Selected FX, Focused FX, and Sends.

Please beat these up and let me know.

Didn't tackle a lot of the other reported bugs, wanted to get this build out to test stability.

There still seems to be no reliable way to find when the last FX loses Focus, so that bug is still there.

Not much luck here I'm afraid.

Lower display line on C4 still not showing values (all lower displays show a single value that varies plug to plug. On my Sonnox Dynamics map it's the value for B3 (KeyInput On- all lower displays show ON/OFF, depending on B3 status)

All mapped plugin controls continue to work fine.

NoAction doesn't blank Row A, but works everywhere else.

Activating ToggleMapSends results in 8 zeroed faders/rotaries and 8 blank displays. Doesn't toggle back to home (it's not supposed to now, right?) but GoZone Home is fine.
MixMonkey is offline   Reply With Quote
Old 07-27-2019, 02:12 PM   #3436
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
Lower display line on C4 still not showing values (all lower displays show a single value that varies plug to plug. On my Sonnox Dynamics map it's the value for B3 (KeyInput On- all lower displays show ON/OFF, depending on B3 status)
What are you displaying on lower display, param values ?

Quote:
Originally Posted by MixMonkey View Post
NoAction doesn't blank Row A, but works everywhere else.
That is indeed weird, I suspect something else is going on here, have no idea what.

Quote:
Originally Posted by MixMonkey View Post
Activating ToggleMapSends results in 8 zeroed faders/rotaries and 8 blank displays. Doesn't toggle back to home (it's not supposed to now, right?) but GoZone Home is fine.
Yes, it should not toggle to Home, just blank if Sends its turned off.

You did select a Track, yes ?

You also need something like this:

Code:
Zone Home
	OnTrackSelection MapSelectedTrackSendsToWidgets
	IncludedZones
		Buttons 
		Channel|1-8
	IncludedZonesEnd
ZoneEnd
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-27-2019, 03:07 PM   #3437
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Quote:
Originally Posted by Geoff Waddington View Post
What are you displaying on lower display, param values ?
Yep, same as usual.

Quote:
You also need something like this:
Code:
OnTrackSelection MapSelectedTrackSendsToWidgets
Send mystery solved You also need to have SelectedTrackNavigator in the send zone. Pretty sure you didn't before Sends working nicely now. You could probably get rid of the toggle in ToggleMapSends, having them zero doesn't make much sense. Kind of GoZone Sends like GoZone Home.

I'll strip my FX zone setup down and see if I'm bollocksing it up somewhere

Edit: Actually forget what I said about getting rid of the toggle, the way it is now could be useful, as it lets you move track to track splaying the sends without having to keep pressing the send button.
MixMonkey is offline   Reply With Quote
Old 07-27-2019, 03:57 PM   #3438
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 635
Default

Scrolling is still weird. The mixer on the screen doesn't scroll to the track selected on the surface.

If you select a track on the screen and it requires the surface to bank right (to a higher numbered track) the selected track will appear on the last but one fader in the whole setup.

If you select a track on the screen and it requires the surface to bank left (to a lowered numbered track) the track one to the right of the selected track will appear on the first fader in the whole setup. So if I select track 36, track 37 will appear on the first fader.

In an ideal world, I'd like to be able to set (in a pref) which fader in the setup a selected track maps to.This would probably be the first fader of the MCU (actually fader 17 in my setup) because it's right in front of me.

This behaviour only needs to constrained by hitting the end stops, as it were. So if the selected track is in the first 16, it just displays on the like numbered fader- so there are no 'blank' channels (let's not go back there again) It behaves as if I'd scrolled manually to the first track (ie tracks 1-40 are displayed)

Similarly, if the selected track is in the last 40, it behaves as if I had scrolled to the last track.
MixMonkey is offline   Reply With Quote
Old 07-27-2019, 04:34 PM   #3439
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

New build is up.

FX param display should now work, I have no easy way to test here, so please check it out and let me know.
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Old 07-27-2019, 04:36 PM   #3440
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 3,287
Default

Quote:
Originally Posted by MixMonkey View Post
Scrolling is still weird. The mixer on the screen doesn't scroll to the track selected on the surface.

If you select a track on the screen and it requires the surface to bank right (to a higher numbered track) the selected track will appear on the last but one fader in the whole setup.

If you select a track on the screen and it requires the surface to bank left (to a lowered numbered track) the track one to the right of the selected track will appear on the first fader in the whole setup. So if I select track 36, track 37 will appear on the first fader.

In an ideal world, I'd like to be able to set (in a pref) which fader in the setup a selected track maps to.This would probably be the first fader of the MCU (actually fader 17 in my setup) because it's right in front of me.

This behaviour only needs to constrained by hitting the end stops, as it were. So if the selected track is in the first 16, it just displays on the like numbered fader- so there are no 'blank' channels (let's not go back there again) It behaves as if I'd scrolled manually to the first track (ie tracks 1-40 are displayed)

Similarly, if the selected track is in the last 40, it behaves as if I had scrolled to the last track.
Yup, haven't touched it since the rewrite, it's on the list
__________________
CSI - You can donate here: geoffwaddington.ca
Alpha software: https://stash.reaper.fm/v/36903/CSI%20alpha.zip
Reaper forum thread: https://forum.cockos.com/showthread.php?t=183143
Geoff Waddington is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 08:52 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.