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

Reply
 
Thread Tools Display Modes
Old 07-06-2023, 06:59 PM   #23361
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by MixMonkey View Post
That should be ok. The only issue I can see is if someone ignores Group 1 in the un-Shifted state and assigns a parameter to Group 2 or 3.
Yup, they would have to remember to disconnect Group 1 displays.

Probably not an issue, folks will likely start with Group 1.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-06-2023, 07:03 PM   #23362
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
I'd say sure! Reaper's all about giving users enough rope to hang themselves. Unless you wanted to do this.

Code:
Zone SurfaceFXLayout
	Rotary FXParam RingStyle=Dot LEDRingColor=#0000ffff PushColor=#003f00ff
	DisplayRow1 FixedTextDisplay TopMargin=0 BottomMargin=24 Font=3 Foreground=#ffff00ff Background=#000000ff
	DisplayRow2 FXParamValueDisplay TopMargin=32 BottomMargin=64 Font=5 Foreground=#ffff00ff Background=#000000ff
ZoneEnd

#WidgetTypes Rotary RotaryPush
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayRow1 DisplayRow2 DisplayRow3 DisplayRow4
#DisplayFonts 0 1 2 3 4 5 6 7 8 9
#DefaultRotaryPushSteps 2
No need, you folks have sold me on this.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 03:34 AM   #23363
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

New Exp build is up.

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

If there are no current steps, RotaryPush defaults to [ 0 1 ].

Auto Zone generation now meets spec discussed.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 04:14 AM   #23364
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Quote:
Originally Posted by MixMonkey View Post
Actually, I've just realised it doesn't really make any sense to change it. All the other displays are Upper and Lower. We'd be changing the whole lot to a four line display model for the sake of one row of push encoders. Let's leave it as it is.

Here's the new stuff, change these two Zones (and download the EXP version).
Code:
Zone SurfaceFXLayout
    Rotary FXParam RingStyle=Dot
    DisplayUpper FixedTextDisplay
    DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary RotaryPush
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
MM, I assume you mean SurfaceFXLayout_BCR2000.zon? Or do I NOT need this file and it should be named SurfaceFXLayout.zon in the MM_BCR2000 zones folder?
Quote:
Code:
Zone FXLayouts
    "" "D" 8
    "" "C" 8
    "" "B" 8
    "" "A" 8
    "" "P" 8
    "" "Q" 8
    "" "R" 8
    "" "TRASH" 8
    "Shift" "D" 8
    "Shift" "C" 8
    "Shift" "B" 8
    "Shift" "A" 8
    "Shift" "P" 8
    "Shift" "Q" 8
    "Shift" "R" 8
ZoneEnd
MM - this looks a lot different than
Code:
Zone FXLayouts
    BCR2000FXLayout D 8
    BCR2000FXLayout C 8
    BCR2000FXLayout B 8
    BCR2000FXLayout A 8
    BCR2000FXLayout P 8
    BCR2000FXLayout Q 8
    BCR2000FXLayout R 8
    
    BCR2000FXLayout+Shift D 8
    BCR2000FXLayout+Shift C 8
    BCR2000FXLayout+Shift B 8
    BCR2000FXLayout+Shift A 8
    BCR2000FXLayout+Shift P 8
    BCR2000FXLayout+Shift Q 8
    BCR2000FXLayout+Shift R 8
...snip...
Are these the ONLY changes I need to make? This looks very different. I will wait to hear back before I proceed.
I have not been testing builds after 3.1.0

When the next version is ready or at the proper time, I volunteer to help/write documentation for this windows bcr2000 plugin control setup or make a video to "get this out" to ppl. I am amazed at the power CSI brings to this antique bcr2000, it is really fantastic and I am very excited about it.

Last edited by flipotto; 07-07-2023 at 04:26 AM. Reason: clarification of questions
flipotto is offline   Reply With Quote
Old 07-07-2023, 04:44 AM   #23365
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

Quote:
Originally Posted by flipotto View Post
MM, I assume you mean SurfaceFXLayout_BCR2000.zon? Or do I NOT need this file and it should be named SurfaceFXLayout.zon in the MM_BCR2000 zones folder?
Now it's just called SurfaceFXLayout.zon and replaces SurfaceFXLayout_BCR2000.zon.

Code:
MM - this looks a lot different than 
Code:
Zone FXLayouts
    BCR2000FXLayout D 8
    BCR2000FXLayout C 8
    BCR2000FXLayout B 8
    BCR2000FXLayout A 8
    BCR2000FXLayout P 8
    BCR2000FXLayout Q 8
    BCR2000FXLayout R 8
    
    BCR2000FXLayout+Shift D 8
    BCR2000FXLayout+Shift C 8
    BCR2000FXLayout+Shift B 8
    BCR2000FXLayout+Shift A 8
    BCR2000FXLayout+Shift P 8
    BCR2000FXLayout+Shift Q 8
    BCR2000FXLayout+Shift R 8
...snip...
Are these the ONLY changes I need to make? This looks very different. I will wait to hear back before I proceed. I have not been testing builds after 3.1.0
Yes, but you'll need to delete all your auto-generated fx.zon and re-generate them with the new system. The fx.zon files that are generated by the new system are different (they look a lot like manually generated fx.zon).

I suggest you make a backup of your entire CSI folder before you start, in case you want to go back.


Quote:
When the next version is ready or at the proper time, I volunteer to help/write documentation for this windows bcr2000 plugin control setup or make a video to "get this out" to ppl. I am amazed at the power CSI brings to this antique bcr2000, it is really fantastic and I am very excited about it.
That'd be great! Give the new system a thorough test and let us know about any bugs/feature requests.

Did you get the footswitches working ok?
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 05:04 AM   #23366
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Quote:
Originally Posted by MixMonkey View Post
Now it's just called SurfaceFXLayout.zon and replaces SurfaceFXLayout_BCR2000.zon.

Yes, but you'll need to delete all your auto-generated fx.zon
I suggest you make a backup of your entire CSI folder before you start, in case you want to go back.
Good idea, thanks.
Quote:
Give the new system a thorough test and let us know about any bugs/feature requests.
Will do
Quote:
Did you get the footswitches working ok?
Yes - at the moment, I have only tested the first with a custom action, worked great, I'll explore further after next release. Footswitches are NOT reflected in this, are they?
flipotto is offline   Reply With Quote
Old 07-07-2023, 05:17 AM   #23367
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

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

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

If there are no current steps, RotaryPush defaults to [ 0 1 ].

Auto Zone generation now meets spec discussed.
Working nicely
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 05:19 AM   #23368
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

Quote:
Originally Posted by flipotto View Post
Footswitches are NOT reflected in this, are they?
No, this is for 1-8 type controls. If you want to customisations to the auto-gereated Zones, do it outside the auto-generated area (but before "ZoneEnd").
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 05:37 AM   #23369
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default initial questions

Have it working, not sure I understand the layout at the moment.
See image from my win10 computer below.
There is a lot of space and the three dots next to D1, what should be there?
Also, found that if I drag a param like cutoff around, the dialog does not update consistently. It sort of smears some of the other params it moved between as I drag it around. See image volume on C8 and B1 Volume is duplicated. There is only one volume control on this plugin.
Steps to repeat (as this is hard to describe what's even happening)
(my attached image does not show below - these are steps to repeat what I am experiencing)
Code:
Click and drag param at 
C8 (cutoff for me) up to 
C4(Flt sus)
result:
C4 becomes (Cutoff) as expected
I expect (flt sus) to move to C5 but it disappears, like gone no where.
If I "save" then hit "remap" again
The dialog shows
Code:
C4 (cutoff)
C5 (flt sus) as expected
This is confusing when trying to move things around and the param names are not predictably updating.
I need to map something with buttons to see how the push section works.
Might help to have header names for the columns on dialog.
Attached Images
File Type: png 2023_07_07@8-15AM.PNG (21.4 KB, 126 views)

Last edited by flipotto; 07-07-2023 at 10:30 AM. Reason: clarification
flipotto is offline   Reply With Quote
Old 07-07-2023, 05:45 AM   #23370
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

Quote:
Originally Posted by flipotto View Post
Have it working, not sure I understand the layout at the moment.
See image from my win10 computer below.
There is a lot of space and the three dots next to D1, what should be there?
Also, found that if I drag a param like cutoff around, the dialog does not update consistently. It sort of smears some of the other params it moved between as I drag it around. See image volume on C8 and B1 Volume is duplicated. There is only one volume control on this plugin.
Steps to repeat (as this is hard to describe what's even happening)
Code:
Click and drag param at 
C8 (cutoff for me) up to 
C4(Flt sus)
result:
C4 becomes (Cutoff) as expected
I expect (flt sus) to move to C5 but it disappears.
If I "save" then hit "remap" again
The dialog shows
Code:
C4 (cutoff)
C5 (flt sus) as expected
This is confusing when trying to move things around and the param names are not predictably updating.
I need to map something with buttons to see how the push section works.
Might help to have header names for the columns on dialog.
This is what it looks like on Mac:
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 06:25 AM   #23371
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Quote:
Originally Posted by MixMonkey View Post
This is what it looks like on Mac:
Mine does not look like that.
How do I move a control to a push? Say Low Bypass on TDRVOS
Ok I figured out how to move it it to p1 which I know is a push (aka button), then I also have to change it's fxParam to RotaryPush.
Is there some way of predefining all of the PQR rows as rotarypush since that is all they can ever do? Less space for confusion, can that be done in the SurfaceFXLayout.zon? Sorry this may be getting specific to bcr2000, though may apply for other controllers too.

What is the second (4th) column for? I guess that is group 2.
Headers for the columns please, on main dialog.

Is there a way of getting consistent naming for the push/button function?
In main dialog I have control
D1 - Group 1 "Rotary" then Group 2 "Push". In the click to edit control Group 1 FXParam diaog the control drop down says "Rotary" and "RotaryPush". Push = RotaryPush, why not use "Push" for all buttons?

Perhaps in this Group 1/2 dialog, have a text description of what Group 2 might be used for? Or some sort of legend on this page - there is room. I don't know what Group 2 is for, maybe I do.
Why is there a list of parameters on this page? So you can define a second action and the reference of the parameter number is there for you. Got it.
Ok Group 1 - is just the first function for a control
Group 2 is for a 2nd function on the same control?

Last edited by flipotto; 07-07-2023 at 06:34 AM.
flipotto is offline   Reply With Quote
Old 07-07-2023, 06:33 AM   #23372
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

All the major functionality is the same between Mac and Windows, the Mac version just looks a lot nicer.

RotaryPush and Push are the same thing. I imagine Geoff was trying to save space on the Remap window.

Think of the additional "groups" as the available functions in block of cells. Example: Cell1 on an X-Touch would be comprised of Group1 Rotary1, Group2 RotaryPush1, Group3 Fader1 (at least, by default). On the BCR2000, C4, SCE24, it would be just Group1: Rotary1, and Group2: RotaryPush1. You can use the Edit window to reorder those elements as needed though. So you could put RotaryPush1 on Group1 instead. I think a better name for the "Groups" would be "Function", which is how I think of them. You can have up to 3 different functions for each cell depending on your surface.

So if CSI assigns the Reaper Bypass param to RotaryB4 for example, you probably want to go into Group1 and change the dropdown from Rotary to RotaryPush. Because it will be more natural to push a button to Bypass the plugin state.
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 06:39 AM   #23373
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

Quote:
Originally Posted by flipotto View Post
Mine does not look like that.
How do I move a control to a push? Say Low Bypass on TDRVOS
Ok I figured out how to move it it to p1 which I know is a push (aka button), then I also have to change it's fxParam to RotaryPush.
You don't move a control to a push, you define the control as a push. Double click on the control and change Rotary to RotaryPush, then set the number of steps in the little dropdown underneath.
Quote:
Is there some way of predefining all of the PQR rows as rotarypush since that is all they can ever do? Sorry this may be getting specific to bcr2000, though may apply for other controllers too.
No, everything begins life as a rotary, you change it to push.
Quote:
What is the second (4th) column for? I guess that is group 2.
Headers for the columns please, on main dialog.
It shows that RotaryPush is assigned, remember most surfaces have a RotaryPush on the Rotary. On the BCR2000 everything is either a push or a rotary (row A should be the exception to this but is done differently for the reasons I've mentioned previously)
Quote:
Is there a way of getting consistent naming for the push/button function?
In main dialog I have control
D1 - Group 1 "Rotary" then Group 2 "Push". In the click to edit control Group 1 FXParam diaog the control drop down says "Rotary" and "RotaryPush". Push = RotaryPush, why not use "Push" for all?
Good point, one for the to do list.
Quote:
Perhaps in this Group 1/2 dialog, have a text description of what Group 2 might be used for? I don't know what Group 2 is for?
On the BCR2000 it serves no function as all the controls are single function (no combined Rotary/RotaryPush).
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 06:50 AM   #23374
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Quote:
Originally Posted by MixMonkey View Post
Good point, one for the to do list.
Well... now I'm not so sure.
As the mcu would have rotary/push and it also has buttons, that are just buttons. Never mind moving on. I just need to accept all buttons as RotaryPush, others will need to do the same.
flipotto is offline   Reply With Quote
Old 07-07-2023, 07:22 AM   #23375
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by flipotto View Post
Well... now I'm not so sure.
As the mcu would have rotary/push and it also has buttons, that are just buttons. Never mind moving on. I just need to accept all buttons as RotaryPush, others will need to do the same.
The Zone auto generator can utilize whatever controls you define in SurfaceFXLayouts, as long as they are of the 1-8 variety.

Here's a standard layout:

Code:
Zone SurfaceFXLayout
	Rotary FXParam RingStyle=Dot
	DisplayUpper FixedTextDisplay
	DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary RotaryPush Fader
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
Here's one that uses Select rather that RotaryPush

Code:
Zone SurfaceFXLayout
	Rotary FXParam RingStyle=Dot
	DisplayUpper FixedTextDisplay
	DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary Select Fader
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 07:30 AM   #23376
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

New Exp build is up.

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

Very preliminary, primitive support for the SCE24.

There are so many double/triple/quadruple/quintuple redraws that you can't even latch the modifier buttons on the unit, the timing calculation for latch is literally thrown that far off

But...

It satisfies the second of the three stages of software development - make it go -- make it right -- make it fast.

It's not too bad switching from FX to FX, but those modifiers, oh those modifiers

And forget using it for Sends, etc. at all

It's a brutal, blunt force sledgehammer that ensures the unit looks and operates correctly, once it eventually settles down.

So, for preliminary testing only, there it is.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 07:51 AM   #23377
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Quote:
Originally Posted by Geoff Waddington View Post
The Zone auto generator can utilize whatever controls you define in SurfaceFXLayouts, as long as they are of the 1-8 variety.

Here's a standard layout:

Code:
Zone SurfaceFXLayout
	Rotary FXParam RingStyle=Dot
	DisplayUpper FixedTextDisplay
	DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary RotaryPush Fader
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
Here's one that uses Select rather that RotaryPush

Code:
Zone SurfaceFXLayout
	Rotary FXParam RingStyle=Dot
	DisplayUpper FixedTextDisplay
	DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary Select Fader
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
My reaction to this post was "oh sh*t, really? Cool!"
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 07:53 AM   #23378
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

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

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

Very preliminary, primitive support for the SCE24.

There are so many double/triple/quadruple/quintuple redraws that you can't even latch the modifier buttons on the unit, the timing calculation for latch is literally thrown that far off

But...

It satisfies the second of the three stages of software development - make it go -- make it right -- make it fast.

It's not too bad switching from FX to FX, but those modifiers, oh those modifiers

And forget using it for Sends, etc. at all

It's a brutal, blunt force sledgehammer that ensures the unit looks and operates correctly, once it eventually settles down.

So, for preliminary testing only, there it is.
Will give this a go after work. So this is all about forcing screen redraws as you enter/exit different zones right? Just curious but why are sends and other zones a no-go? Is it just drawing too slowly?

I've got some staycation days coming up next week into the early half of the following week, so can definitely devote more time to CSI during normal hours then.
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 09:22 AM   #23379
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
Will give this a go after work. So this is all about forcing screen redraws as you enter/exit different zones right? Just curious but why are sends and other zones a no-go? Is it just drawing too slowly?

I've got some staycation days coming up next week into the early half of the following week, so can definitely devote more time to CSI during normal hours then.
It's set up for FX, it might work for Sends, but I'm guessing the brutal nature of the hard clears will clobber your Send Zone row anytime you change FX, and the only way to get them back will be to exit and re enter the Associated Zone. If you have Sends set up as Included Zones, it's even less likely that they will survive
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 09:37 AM   #23380
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Quote:
Originally Posted by Geoff Waddington View Post
It's set up for FX, it might work for Sends, but I'm guessing the brutal nature of the hard clears will clobber your Send Zone row anytime you change FX, and the only way to get them back will be to exit and re enter the Associated Zone. If you have Sends set up as Included Zones, it's even less likely that they will survive
Interesting. Initially I just thought it would've worked like MCU. I assumed that CSI itself would just look for the DisplayLine1 widget, and clear it and overwrite it when entering a different zone that used a widget called DisplayLine1. But I guess the freeform nature of the SCE-24 with the different fonts, margins, etc. make that a lot less trivial. Looking forward to checking this out.

For those not following at home: there's been some nice progress on the SCE-24 front in recent days. I know AndyP has been patiently waiting and there's good stuff happening.
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 09:56 AM   #23381
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Will this new build clear the displays on exit? That's not a priority but I don't think I ever mentioned it.

If I have an FX up on the SCE-24 and close Reaper, the displays all stay on after exit.
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 10:12 AM   #23382
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
Interesting. Initially I just thought it would've worked like MCU. I assumed that CSI itself would just look for the DisplayLine1 widget, and clear it and overwrite it when entering a different zone that used a widget called DisplayLine1. But I guess the freeform nature of the SCE-24 with the different fonts, margins, etc. make that a lot less trivial. Looking forward to checking this out.
You're exactly right.

Take encoders, for instance.

For MCU/C4/X Touch, etc. you just send a typical 3 byte MIDI message.

Packed in that message you have the ring style, whether or not the little indicator at the bottom is on, and the actual value itself.

The SCE24 does exactly the same thing for its encoders, it uses no SysEx, that's how we can get VU meter grade performance out of the encoders.

But, we left out the individually addressable ring colours, yes folks, each individual dot on the SCE24 encoder can be a different colour, including the cluster of 3 at the bottom.

Sending that info via SysEx would be terrible for performance, so it is sent separately via a setup function, which configures all that stuff.

So, for an MCU style encoder, you just set it to zero to clear it.

For an SCE24 encoder, you set it to zero to clear it, and you also must send info to clear the colours, and blank everything.

It's a similar story for the font definable, multiline, margin adjustable, foreground and background colour definable, text. Just simply a lot more to consider.

Performance will improve, once I figure out the magic place to put each of these component resets, but I figured it would be good to get something at least semi workable out there to test, whilst I was pondering all of the above

Quote:
Originally Posted by Funkybot View Post
For those not following at home: there's been some nice progress on the SCE-24 front in recent days. I know AndyP has been patiently waiting and there's good stuff happening.
Yes, it's really, really good now, and getting better, almost entirely there !
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 10:14 AM   #23383
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
Will this new build clear the displays on exit? That's not a priority but I don't think I ever mentioned it.

If I have an FX up on the SCE-24 and close Reaper, the displays all stay on after exit.
Not yet, was just about to do that now.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 10:20 AM   #23384
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default issue on win 10

See post above 23369 I often try to say too many things in a post, sorry. New build - I continue to have dialog, refresh after dragging, weirdness.

Consider adding header names to the dialog columns: Cell or row# | Group 1 Control Type | Parameter | Group 2 control type | Parameter.
I think this would help me remember what is going on. Just a suggestion.
flipotto is offline   Reply With Quote
Old 07-07-2023, 10:29 AM   #23385
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by flipotto View Post
See post above 23369 I often try to say too many things in a post, sorry. New build - I continue to have dialog, refresh after dragging, weirdness.
Yes, known problem of "ghosting" on Windows.

Solved it before, but the solution with the new style list view causes the can't drag problem that MixMonkey reported.

Working on it...

Quote:
Originally Posted by flipotto View Post
Consider adding header names to the dialog columns: Cell or row# | Group 1 Control Type | Parameter | Group 2 control type | Parameter.
I think this would help me remember what is going on. Just a suggestion.
Considered that, but as you can see the column headers would take up too much space, the columns would either be too wide to be usable, or the header text would be cut off

Once you use the edit dialog once or twice, you'll get used to the list layout.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 10:32 AM   #23386
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yes, known problem of "ghosting" on Windows.

Solved it before, but the solution with the new style list view causes the can't drag problem that MixMonkey reported.

Working on it...

Once you use the edit dialog once or twice, you'll get used to the list layout.
Thanks - back to my hole.
flipotto is offline   Reply With Quote
Old 07-07-2023, 10:35 AM   #23387
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by flipotto View Post
Thanks - back to my hole.
On the contrary, always glad to get input !
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 11:06 AM   #23388
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

New Exp build is up.

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

SCE24 now clears on exit.

Partial fix for Windows "drag ghosting".

It doesn't ghost anymore, we force a hard reload, but it comes at a price.

If you have scrolled down and drop something, the list will scroll to a place where your drop is visible, it just might not be where you were scrolled to when you initiated the drag, what a drag

However, at least the ghosting is gone, so it's an improvement overall
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 11:49 AM   #23389
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

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

https://stash.reaper.fm/v/42044/CSI%20Exp.zip

SCE24 now clears on exit.

Partial fix for Windows "drag ghosting".

It doesn't ghost anymore, we force a hard reload, but it comes at a price.

If you have scrolled down and drop something, the list will scroll to a place where your drop is visible, it just might not be where you were scrolled to when you initiated the drag, what a drag

However, at least the ghosting is gone, so it's an improvement overall
Still working ok on Mac --phew--
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 01:28 PM   #23390
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 890
Default

Ghosting seems better, I have not tried to map a large synth plugin yet.

MM - for BCR can we not have those group 2 options show up?
Code:
Zone "VSTi: DJX10 (Dead Duck Software)" "DJX10"

#Begin auto generated section

	RotaryD1	FXParam 0  RingStyle=Dot
	DisplayUpperD1	FixedTextDisplay "OSC Mix" 
	DisplayLowerD1	FXParamValueDisplay 0

	RotaryPushD1	NoAction
	NullDisplay	NoAction
	NullDisplay	NoAction
Since the RotaryPushD1 will never do anything on BCR, do we need it?
Makes the .zon files a chore to edit by text (double the number of lines needed). Just curious if there is some statement that can be put into the
Code:
Zone SurfaceFXLayout
    Rotary FXParam RingStyle=Dot
    DisplayUpper FixedTextDisplay
    DisplayLower FXParamValueDisplay
ZoneEnd

#WidgetTypes Rotary RotaryPush
#RingStyles Dot Fill BoostCut Spread
#DisplayRows DisplayUpper DisplayLower
to not write group 2 to the .zon file, unless there is a use for it? I do not understand the syntax yet, I'm still a baby here.

Last edited by flipotto; 07-07-2023 at 01:36 PM.
flipotto is offline   Reply With Quote
Old 07-07-2023, 02:05 PM   #23391
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Just got off the phone with Luis.

Maybe it's time to revisit MIDI learn, done right

He said, "What about touch a parameter with the mouse, touch a control on the surface"

Then we discussed it a bit in the context of the SCE24.

We already have FocusedFXParam, it would be trivial to build a cousin that informed CSI of the Focused FX Param, instead of interacting with it.

Ok, with that in hand, we could then just move a control on a surface, and we would have MIDI learn.

Whilst discussing it in the context of the SCE24, we started to think of ways to take it further, with colours, etc.

OK, so let's generalize the concept.

For an example, let's think of the Rotary encoder.

Rotating it whilst in learn mode would assign the current Focused FX Param to that Rotary, standard stuff.

But we can do better.

If Shift were engaged, the param would be assigned to Shift+Rotary.

Even better, we could assign buttons in the learn Zone to other functions.

For instance, let's say the automation keys were assigned to Ring style -- Dot, BoostCut, Fill, Spread.

Whichever one was pressed would be assigned to the Rotary.

We could think of lots of other properties that could be handled this way for various surfaces.

We could have a fairly sophisticated MIDI learn simply by designing a MIDILearn Zone

Now, take this up a notch and consider the SCE24 with fonts, text colours, displays, ring colours, etc., and we've made the newly designed RemapAutoZone editor obsolete already

Such is the nature of software development

Not really, this would be just another tool.

The floor is open...
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 03:40 PM   #23392
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Hi Geoff, starting up on the SCE-24:

1. Some of the OLED buttons in the buttons/home zone don't show their text. You'll see it flash sometimes when you fire off a GoHome command. But they're mostly blank.

2. When I enter an FX mapping for the first time, the white color and TrackVolumeDisplay in Cell A1 displayrow2 carries over into the FXParamValue in row 2. Until I change something. Then the FXParamValue color updates to yellow.

3. I can't get DisplayRow3 working. Here, I tried using it to "Push to Reset" the In/Out volume parameters and wanted the text on line 3 to say as much. I even remembered to decrease the font sizes. It looks like the margins aren't being added.
Code:
	RotaryB7	FXParam 14  LEDRingColor=#0000ffff PushColor=#003f00ff RingStyle=Dot
	DisplayRow1B7	FixedTextDisplay "In"  Background=#000000ff BottomMargin=24 Font=3 Foreground=#ffff00ff TopMargin=0
	DisplayRow2B7	FXParamValueDisplay 14 Background=#000000ff BottomMargin=64 Font=3 Foreground=#ffff00ff TopMargin=32

	RotaryPushB7	FXParam 14 [ 0.5 ] LEDRingColor=#ffffffff PushColor=#ffffffff
	DisplayRow3B7	FixedTextDisplay "Push to Reset"  Background=#000000ff Font=3 Foreground=#ffff0aff
	NullDisplay	NoAction


	RotaryB8	FXParam 15  LEDRingColor=#0000ffff PushColor=#003f00ff RingStyle=Dot
	DisplayRow1B8	FixedTextDisplay "Out"  Background=#000000ff BottomMargin=24 Font=2 Foreground=#ffff00ff TopMargin=0
	DisplayRow2B8	FXParamValueDisplay 15 Background=#000000ff BottomMargin=64 Font=2 Foreground=#ffff00ff TopMargin=32

	RotaryPushB8	FXParam 15 [ 0.5 ] LEDRingColor=#ffffffff PushColor=#ffffffff RingStyle=
	DisplayRow3B8	FixedTextDisplay "Push to Reset"  Background=#000000ff Font=2 Foreground=#ffff0aff
	NullDisplay	NoAction
Will keep poking at this!
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 03:43 PM   #23393
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Good news! The step sizes work with Rotary encoders. This can be very nice for stepped params IF you can also combine that with a custom delta so it doesn't turn too fast.

Example:
Code:
Rotary	FXParam 8 [ (10) 0 0.11 0.22 0.33 0.44 0.56 0.67 0.78 0.89 1 ] LEDRingColor=#ffffffff PushColor=#ffffffff
Feature request: please add the ability to add a custom delta. Even if users have to manually type it in the Step Values. Could be a little secret.

For example, I enter this in the Step Values box: (10) 0 0.11 0.22 0.33 0.44 0.56 0.67 0.78 0.89 1
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 03:51 PM   #23394
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 6,143
Default

Quote:
Originally Posted by Geoff Waddington View Post
Just got off the phone with Luis.

Maybe it's time to revisit MIDI learn, done right

He said, "What about touch a parameter with the mouse, touch a control on the surface"

Then we discussed it a bit in the context of the SCE24.

We already have FocusedFXParam, it would be trivial to build a cousin that informed CSI of the Focused FX Param, instead of interacting with it.

Ok, with that in hand, we could then just move a control on a surface, and we would have MIDI learn.

Whilst discussing it in the context of the SCE24, we started to think of ways to take it further, with colours, etc.

OK, so let's generalize the concept.

For an example, let's think of the Rotary encoder.

Rotating it whilst in learn mode would assign the current Focused FX Param to that Rotary, standard stuff.

But we can do better.

If Shift were engaged, the param would be assigned to Shift+Rotary.

Even better, we could assign buttons in the learn Zone to other functions.

For instance, let's say the automation keys were assigned to Ring style -- Dot, BoostCut, Fill, Spread.

Whichever one was pressed would be assigned to the Rotary.

We could think of lots of other properties that could be handled this way for various surfaces.

We could have a fairly sophisticated MIDI learn simply by designing a MIDILearn Zone

Now, take this up a notch and consider the SCE24 with fonts, text colours, displays, ring colours, etc., and we've made the newly designed RemapAutoZone editor obsolete already

Such is the nature of software development

Not really, this would be just another tool.

The floor is open...
My first thought is: yes to MIDI Learn! You should talk to Luis more often!

That said, I'm never going to remember what RingStyle is assigned to which button in a MIDI Learn zone. Let alone the more advanced features. I also can't help but think this will be slower than Automapping+remapping or require a lot of memorization.

What about a middle-ground approach? We auto-map as per usual, we go to the Remap window as per usual, I double click on row 1 to open the Edit window as per usual, then I have the option to click Learn and move an FXParam to assign it? All the more complex stuff there.

Or we run a MIDILearn action on the surface, that opens up an empty version of the Edit window, and I can Learn as you describe. Then when I need more advanced features, double click to Edit.
__________________
CSI v3 Wiki
Funkybot is online now   Reply With Quote
Old 07-07-2023, 03:56 PM   #23395
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
Hi Geoff, starting up on the SCE-24:

1. Some of the OLED buttons in the buttons/home zone don't show their text. You'll see it flash sometimes when you fire off a GoHome command. But they're mostly blank.

2. When I enter an FX mapping for the first time, the white color and TrackVolumeDisplay in Cell A1 displayrow2 carries over into the FXParamValue in row 2. Until I change something. Then the FXParamValue color updates to yellow.

3. I can't get DisplayRow3 working. Here, I tried using it to "Push to Reset" the In/Out volume parameters and wanted the text on line 3 to say as much. I even remembered to decrease the font sizes. It looks like the margins aren't being added.
I seem to remember the OLED buttons only liking certain colour combinations, try some stuff out.

Yeah, getting just the right margins I found tricky.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 03:59 PM   #23396
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
Feature request: please add the ability to add a custom delta. Even if users have to manually type it in the Step Values. Could be a little secret.
It was always planned for the Advanced dialog.

Also deltas, rangeMinimum, rangeMaximum, ticks.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 04:07 PM   #23397
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,569
Default

Quote:
Originally Posted by Funkybot View Post
My first thought is: yes to MIDI Learn! You should talk to Luis more often!

That said, I'm never going to remember what RingStyle is assigned to which button in a MIDI Learn zone. Let alone the more advanced features. I also can't help but think this will be slower than Automapping+remapping or require a lot of memorization.

What about a middle-ground approach? We auto-map as per usual, we go to the Remap window as per usual, I double click on row 1 to open the Edit window as per usual, then I have the option to click Learn and move an FXParam to assign it? All the more complex stuff there.

Or we run a MIDILearn action on the surface, that opens up an empty version of the Edit window, and I can Learn as you describe. Then when I need more advanced features, double click to Edit.
The whole idea of MIDI learn is no dialogs, it's all surface based.

It's for those who don't like using editors.

I agree remembering complex parameter properties would be tricky, but you really only need to know Ring styles for MCU devices.

For the SCE24, we have the OLED buttons which can describe what they do.

We also have the LED buttons which could be used for colour and display the actual colour they represent.

Still thinking about it...
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 07-07-2023, 04:13 PM   #23398
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 5,003
Default

Quote:
Originally Posted by flipotto View Post
Ghosting seems better, I have not tried to map a large synth plugin yet.

MM - for BCR can we not have those group 2 options show up?
Code:
Zone "VSTi: DJX10 (Dead Duck Software)" "DJX10"

#Begin auto generated section

	RotaryD1	FXParam 0  RingStyle=Dot
	DisplayUpperD1	FixedTextDisplay "OSC Mix" 
	DisplayLowerD1	FXParamValueDisplay 0

	RotaryPushD1	NoAction
	NullDisplay	NoAction
	NullDisplay	NoAction
Since the RotaryPushD1 will never do anything on BCR, do we need it?
If you look at the FXLayouts.zon, you can see that there isn't a way to generate RotaryD without also generating RotaryPushD. These redundant entries in the fx.zon allow the Zone to parsed more easily.

If you're going to do a great deal of manual editing, you might be better of using a template specificially tailored to the BCR2000 and not using the auto-generation.

What manual editing are you doing?

EDIT: Here's an FX template for the BCR2000.

Last edited by MixMonkey; 07-16-2023 at 04:58 AM.
MixMonkey is offline   Reply With Quote
Old 07-07-2023, 07:36 PM   #23399
siniarch
Human being with feelings
 
siniarch's Avatar
 
Join Date: Jun 2018
Posts: 706
Default

Quote:
Originally Posted by Funkybot View Post
My first thought is: yes to MIDI Learn! You should talk to Luis more often!

That said, I'm never going to remember what RingStyle is assigned to which button in a MIDI Learn zone. Let alone the more advanced features. I also can't help but think this will be slower than Automapping+remapping or require a lot of memorization.

What about a middle-ground approach? We auto-map as per usual, we go to the Remap window as per usual, I double click on row 1 to open the Edit window as per usual, then I have the option to click Learn and move an FXParam to assign it? All the more complex stuff there.

Or we run a MIDILearn action on the surface, that opens up an empty version of the Edit window, and I can Learn as you describe. Then when I need more advanced features, double click to Edit.
Hi Funkybot,

What we discussed with Geoff was a way to Automap to the device, but because of the 8 buttons at the bottom on the SCE24, you can also do color and set other things as well.

So my initial thought was something like the image below. Where you can enter a Learn Mode and then you can touch a parameter with your mouse and touch an encoder and that parameter would be linked to that encoder. But here is the other fun part.

Imagine the following:

OLEDButton1 tells you which parameter number has been last selected with mouse. Pressing it would bring up a simple window to rename the parameter text being displayed.

OLEDButton2 selects if you are applying the settings to Group 1, 2, 3 or Off (off means not applying settings)(and color of indicator below)

OLEDButton3 selects between your types of control - Rotary/Push/Fade - in rotary it also sets color of ring lights.(and color of RingLED lights)

OLEDButton4 selects how Rotary is filled, or Push is set (0&1, or 0,.33,.66,1 or 0,.25,.5,.75,1 or 0,.2,.4,.6,.8,1)

OLEDButton5 selects Text Size of ParameterName and foreground color (every time you push it it cycles through text sizes)

OLEDButton6 selects which text row, the ParameterName will be sent to and the background color of ParameterName.

OLEDButton7 selects Text Size of ParameterValue and foreground color.

OLEDButton8 selects which row the ParameterValue will be sent to and background color of ParameterValue.

Then the way I envision the colors working is this. You press a color below and then you press an OLEDButton above to change the color of that item. (I forgot to make one of the buttons just white to clear the color to white)

This could make it very quick to change a bunch of encoders to have a certain format. It can also be turned on or not. If it's not turned on, then you are just automapping parameter to encoder, but if it's on, it's also setting colors and most of the other things you change on the dialogue that Geoff created.



ps: the text on the OLEDButtons on the image above was created in Photoshop. Just want to be transparent. Also the colors on the LEDButtons was done in Photoshop.
__________________
www.SiniCon.io .......... Digital Audio Controllers
www.AcousticalGarden.com ........ Los Angeles Boutique Sound Studio
siniarch is offline   Reply With Quote
Old 07-07-2023, 08:23 PM   #23400
siniarch
Human being with feelings
 
siniarch's Avatar
 
Join Date: Jun 2018
Posts: 706
Default

One other thing I forgot to mention is that the same setup can be set up via a Window. All these options could be created on a window format on the screen. So, when someone selects the Learn Mode button, a new window pops up with all the same options as above.
And when people touch an encoder during learn mode, all the settings get transferred to that encoder. This would help those who do not have an SCE24 and yet, make it simple and graphically intuitive.
__________________
www.SiniCon.io .......... Digital Audio Controllers
www.AcousticalGarden.com ........ Los Angeles Boutique Sound Studio

Last edited by siniarch; 07-07-2023 at 08:30 PM.
siniarch 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:12 PM.


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