Old 12-31-2019, 05:03 PM   #5721
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Ah, ok

The Pan works until I use the push, then it stops working the on screen control but the surface feedback still works (encoder ring, display). When I use the push to go back to Pan, it controls the Pan on track 9 instead of track 1...
Yup, that's the part I thought I broke (track 9 instead of track 1), thanks for confirming.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 12-31-2019, 05:14 PM   #5722
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
Once again, don't use fader widgets for encoders, it never ends well, I need to find a way to convince you to stop doing this Why do you keep thinking a Fader Widget will work properly with an Encoder ? It will not -- ever

All meant in good fun, but also true -- faders are not encoders and vice versa

However, none of this should cause a crash... ever... investigating...
I wasn’t using encoder mode on the MFTwister. I’m back to using standard CC mode. In that mode they’re just regular midi knobs. It can be configured either way (encoders or CC). Standard CCs in MFT + Fader in CSI worked great until today.
Funkybot is offline   Reply With Quote
Old 12-31-2019, 05:16 PM   #5723
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
I wasn’t using encoder mode on the MFTwister. I’m using standard CC mode. It can be configured for both. Standard CC mode in MFT + Fader in CSI worked great until today.
Oops, my bad, i thought you had decided encoder mode was the way to go -- forgot you can change the MFT stripes.

This is exactly why the preferred method of plain vanilla setup for CSi should be as stock as possible -- to get the most benefit for the most users -- what is the MFT out of the box power up mode ?

We should use that one if possible, at least to start with.

What does your CSI.ini look like ?
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki

Last edited by Geoff Waddington; 12-31-2019 at 05:22 PM.
Geoff Waddington is offline   Reply With Quote
Old 12-31-2019, 05:36 PM   #5724
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
Oops, my bad, i thought you had decided encoder mode was the way to go -- forgot you can change the MFT stripes.

This is exactly why the preferred method of plain vanilla setup for CSi should be as stock as possible -- to get the most benefit for the most users -- what is the MFT out of the box power up mode ?

We should use that one if possible, at least to start with.

What does your CSI.ini look like ?
I just did a quick factory reset on the MF Twister to see what the default mode is: it's CC's.

I wanted to use encoders for the higher resolution, but like I said, CC's had been working great as a stop-gap (to when encoder acceleration was built and working well for the MFTwister).

The MFTwister, seems smart enough to pick up the CC's based on the feedback it receives from CSI. So for example, if I have a plugin knob at 75% and use the MFTwister in FocusFXMode for that plugin, the MFTwister ring correctly shows the knob as 75% filled, and when I increase the knob, it doesn't jump. It just picks up as though the physical knob just happened to be in that exact spot. It's very clever. Maybe the issue is happening on the Feedback process in this new build? The crash happens as soon as I click OK after adding the MFTwister and as soon as Reaper opens. I have to delete the CSI.ini to get the crashes to stop.

Here's my csi.ini
Code:
Page "Home" FollowMCP NoSynchPages NoScrollLink NoTrackColoring 0 0 0
MidiSurface "MFTwister" 7 8 "MIDIFighterTwister.mst" "MIDIFighterTwister" NoZoneLink AutoMapSends NoAutoMapFX NoAutoMapFXMenu AutoMapFocusedFX
Anyway, I'm already late heading out for the night. Happy New Year's Geoff and other CSI forumites.

Last edited by Funkybot; 12-31-2019 at 05:43 PM.
Funkybot is offline   Reply With Quote
Old 12-31-2019, 05:43 PM   #5725
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
I just did a quick factory reset on the MF Twister to see what the default mode is: it's CC's.

I wanted to use encoders for the higher resolution, but like I said, CC's had been working great as a stop-gap (to when encoder acceleration was built and working well for the MFTwister).

The MFTwister, seems smart enough to pick up the CC's based on the feedback it receives from CSI. So for example, if I have a plugin knob at 75% and use the MFTwister in FocusFXMode for that plugin, it correctly shows the knob as 75% filled, and when I increase the knob, it doesn't jump. It just picks up as though the physical knob just happened to be in that exact spot. It's very clever. Maybe the issue is happening on the Feedback process in this new build? The crash happens as soon as I click OK after adding the MFTwister and as soon as Reaper opens. I have to delete the CSI.ini to get the crashes to stop.

Here's my csi.ini
Code:
Page "Home" FollowMCP NoSynchPages NoScrollLink NoTrackColoring 0 0 0
MidiSurface "MFTwister" 7 8 "MIDIFighterTwister.mst" "MIDIFighterTwister" NoZoneLink AutoMapSends NoAutoMapFX NoAutoMapFXMenu AutoMapFocusedFX
Is there anything else in the MIDIFighterTwister folder besides the .zon file you posted ?
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 12-31-2019, 05:55 PM   #5726
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
Is there anything else in the MIDIFighterTwister folder besides the .zon file you posted ?
I had a bunch of fx zone files (taking a little over 40) but I think I moved them all out towards the end and before that last attempt.
Funkybot is offline   Reply With Quote
Old 12-31-2019, 06:17 PM   #5727
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Quote:
Originally Posted by Geoff Waddington View Post
Oops, my bad, i thought you had decided encoder mode was the way to go -- forgot you can change the MFT stripes.
Although a little off our current topic, I got to the bottom of the FX parameters that refuse to be controlled, including "The Curse of Three" that I have encountered many times now.

I turns out these FX parameters (which usually take the form of a multiway switch or selections from a menu) don't respond to increment/decrement encoders, no matter how many ticks they send. When they are mapped to a Fader7Bit control, they respond just fine.

Which is a problem if your surface only has inc/dec encoders.

Could we have a bit of intervening code to translate the inc/dec ticks (or several ticks) into a series of fixed values (that we can set, both in number and value)? and have this set in the FX map?

With that in place, I think the FX parameter mapping is pretty much put to bed

I'll start adding stuff back to the new build, will let you know when I find out what makes it fall over.
MixMonkey is online now   Reply With Quote
Old 12-31-2019, 06:21 PM   #5728
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Although a little off our current topic, I got to the bottom of the FX parameters that refuse to be controlled, including "The Curse of Three" that I have encountered many times now.

I turns out these FX parameters (which usually take the form of a multiway switch or selections from a menu) don't respond to increment/decrement encoders, no matter how many ticks they send. When they are mapped to a Fader7Bit control, they respond just fine.

Which is a problem if your surface only has inc/dec encoders.

Could we have a bit of intervening code to translate the inc/dec ticks (or several ticks) into a series of fixed values (that we can set, both in number and value)? and have this set in the FX map?

With that in place, I think the FX parameter mapping is pretty much put to bed

I'll start adding stuff back to the new build, will let you know when I find out what makes it fall over.
Fantastic sleuthing

Now I totally see what is happening.

Have to think about it a bit...
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 12-31-2019, 07:39 PM   #5729
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Crash on load happens if any Reaper Actions are assigned in the Zone. Will crash even if the line is commented out, scary huh?

Also, the track count is messed up. I get 1-8 followed by 17-25, or 9-16 follwed by 25-32. CSI thinks all my surfaces are 16 channels wide instead of 8.

On a positive note, Send and FX menu are working, as is FX mapping.

Happy New Year I'm off to bed....
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 05:13 AM   #5730
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Happy New Year everyone -- belated, current, or soon, depending on your groove, this one we ALL share


Quote:
Originally Posted by MixMonkey View Post
Crash on load happens if any Reaper Actions are assigned in the Zone. Will crash even if the line is commented out, scary huh?
Nope, perfect, actually, please post the .zon file contents, we'll feed them to CSI, watch it freak, then fix

Quote:
Originally Posted by MixMonkey View Post
Also, the track count is messed up. I get 1-8 followed by 17-25, or 9-16 follwed by 25-32. CSI thinks all my surfaces are 16 channels wide instead of 8.
Yes, that's another manifestation of the Send bug, the Sends are "stealing" 9-16, in the first case, and 1-8 and 17-24 in the second case, will fix.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 05:33 AM   #5731
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
... It turns out these FX parameters (which usually take the form of a multiway switch or selections from a menu) don't respond to increment/decrement encoders, no matter how many ticks they send. When they are mapped to a Fader7Bit control, they respond just fine.

Which is a problem if your surface only has inc/dec encoders.

Could we have a bit of intervening code to translate the inc/dec ticks (or several ticks) into a series of fixed values (that we can set, both in number and value)? and have this set in the FX map?

With that in place, I think the FX parameter mapping is pretty much put to bed

I'll start adding stuff back to the new build, will let you know when I find out what makes it fall over.
Aha !

We need new widgets -- Stepped -- FB_Stepped:

Code:
Widget A3ValStepper
    Stepped B0 05 00 40 7f
    FB_Stepped B0 05 00 40 7f
widgetEnd

Widget A4ValStepper
    Stepped B0 05 00 28 50 7f
    FB_Stepped B0 05 00 28 50 7f
widgetEnd
Intended usage -- hardware->Widget -- any hardware widget that has a Press only notion (switch, encoder, etc.)

See any holes ?
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 07:10 AM   #5732
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

New build is up.

Fixed the "Sends steal TrackNavigators" issue.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 08:19 AM   #5733
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Quote:
Originally Posted by Geoff Waddington View Post
Aha !

We need new widgets -- Stepped -- FB_Stepped:

Code:
Widget A3ValStepper
    Stepped B0 05 00 40 7f
    FB_Stepped B0 05 00 40 7f
widgetEnd

Widget A4ValStepper
    Stepped B0 05 00 28 50 7f
    FB_Stepped B0 05 00 28 50 7f
widgetEnd
Intended usage -- hardware->Widget -- any hardware widget that has a Press only notion (switch, encoder, etc.)

See any holes ?
I could be missing the point here, but if this is handled at the Widget level, doesn't it commit that particular Widget to always being a stepped type?

I think it would be better to address the issue wrt the FX parameter being controlled, ie in the FX map. Only certain parameters need to have discrete (ie not inc/dec) values presented to them. All the other parameters work fine with inc/dec.

Also, I think this issue only affects FX parameters. I can't think of a use case outside of this.
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 08:59 AM   #5734
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
I could be missing the point here, but if this is handled at the Widget level, doesn't it commit that particular Widget to always being a stepped type?

I think it would be better to address the issue wrt the FX parameter being controlled, ie in the FX map. Only certain parameters need to have discrete (ie not inc/dec) values presented to them. All the other parameters work fine with inc/dec.

Also, I think this issue only affects FX parameters. I can't think of a use case outside of this.
Haha, here I am, constantly extolling the vitrues of handling things in the .zon files as opposed to the Widget definitions, and I go ahead and do the exact opposite

You are exactly right, and yes, I can't think of a use case outside of FX parameters.

So, instead how about a new action SteppedFXParam ?

Code:
Zone SomeFX
    Widget1 FXParam 0
    Widget1 FXParam 7
    Widget3 SteppedFXParam 3  0.0  0.3  0.6  1.0
ZoneEn
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 09:06 AM   #5735
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Quote:
Originally Posted by Geoff Waddington View Post
Haha, here I am, constantly extolling the vitrues of handling things in the .zon files as opposed to the Widget definitions, and I go ahead and do the exact opposite

You are exactly right, and yes, I can't think of a use case outside of FX parameters.

So, instead how about a new action SteppedFXParam ?

Code:
Zone SomeFX
    Widget1 FXParam 0
    Widget1 FXParam 7
    Widget3 SteppedFXParam 3  0.0  0.3  0.6  1.0
ZoneEn
Superb! My Sonsig Rev-A reverb thanks you from the bottom of it's heart (highest concentration of non-controllable parameters I've come across)

Re: the latest build. I get the same 8 tracks across every surface. Reaper Action thing doesn't seem to affect MCU, only C4. Will carry on investigating.
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 09:22 AM   #5736
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Hi Geoff, wasn't expecting a change but tried anyway and the new build also crashes when trying to add the MFTwister. Now that I'm back at my PC I can confirm that the only thing in the Zone folder at the moment is the .zon file I posted earlier. I had a bunch of fx.zon's but previously moved those out in earlier troubleshooting efforts.

So I've been playing around to troubleshoot:

1. Removed the buttons from the .zon file and tried to load it: still crashes

2. Removed the channels/sends from the .zon file leaving only the buttons and tried again: still crashes

This makes me think the crash has nothing to do with .zon file at all. Ok..so let's simplify things further:

3. Edited the .mst file - left only the first page of buttons, removed feedback state. The only widgets are simple press widgets. Then I edited the .zon file to only reflect these buttons. Try to load the MFTwister in CSI: still crashes.

Here's the simplified "test" .mst:
Code:
Widget ChannelLeft
  Press B1 00 7F
WidgetEnd

Widget ChannelRight
  Press B1 01 7F
WidgetEnd

Widget ChannelMute
    Press B1 02 7F
WidgetEnd 

Widget ChannelSolo
    Press B1 03 7F
WidgetEnd

Widget TrimRead
    Press B1 04 7F
WidgetEnd

Widget Touch
    Press B1 05 7F
WidgetEnd

Widget Latch
    Press B1 06 7F
WidgetEnd

Widget Write
    Press B1 07 7F
WidgetEnd

Widget Loop
    Press B1 08 7F
WidgetEnd

Widget Click
    Press B1 09 7F
WidgetEnd

Widget RecordArm
    Press B1 0A 7F
WidgetEnd

Widget Record
    Press B1 0B 7F
WidgetEnd

Widget Rewind
  Press B1 0C 7F
WidgetEnd

Widget FastForward
  Press B1 0D 7F
WidgetEnd

Widget Stop
  Press B1 0E 7F
WidgetEnd

Widget Play
    Press B1 0F 7F
WidgetEnd
Here's the simplified "test" .zon:
Code:
Zone Home
	OnTrackSelection MapSelectedTrackSendsToWidgets
	OnFXFocus MapFocusedFXToWidgets
	IncludedZones
		Buttons|
	IncludedZonesEnd
ZoneEnd

Zone Buttons|
        ChannelLeft Reaper 40286
	ChannelRight Reaper 40285
	ChannelMute TrackMute
	ChannelSolo TrackSolo
	
	TrimRead TrackAutoMode 0
	Touch TrackAutoMode 2
	Latch TrackAutoMode 4
	Write TrackAutoMode 3

	Loop Reaper 1068
	Click Reaper 40364
	RecordArm TrackRecordArm
	Record Record

	Rewind Reaper 40042
	FastForward FastForward
	Stop Stop
	Play Play
ZoneEnd
This leads me to think the Reaper crashes have to do with the communication between CSI and the device itself - maybe when trying to open the MIDI ports. Did anything change in that regard between the 12/27 build and the 12/31 build?

EDIT:

4. Even replaced all the actions in the .zon with "NoAction" and it still crashes.

Last edited by Funkybot; 01-01-2020 at 09:29 AM.
Funkybot is offline   Reply With Quote
Old 01-01-2020, 09:25 AM   #5737
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Stranger and stranger.


This crashes on launch:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu

		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd

Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
		
ZoneEnd
This doesn't:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu

		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd

Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
ZoneEnd
Code:
Process:               REAPER [886]
Path:                  /Applications/REAPER64.app/Contents/MacOS/REAPER
Identifier:            com.cockos.reaper
Version:               6.20.0 (6.20.0)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           REAPER [886]
User ID:               501

Date/Time:             2020-01-01 16:18:53.487 +0000
OS Version:            Mac OS X 10.14.6 (18G2022)
Report Version:        12
Anonymous UUID:        B3DE415F-97E0-995E-EA26-974D3FBF70AD


Time Awake Since Boot: 3200 seconds

System Integrity Protection: enabled

Crashed Thread:        0  reaper  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [886]

VM Regions Near 0:
--> 
    __TEXT                 0000000107221000-0000000107d6d000 [ 11.3M] r-x/rwx SM=COW  /Applications/REAPER64.app/Contents/MacOS/REAPER

Thread 0 Crashed:: reaper  Dispatch queue: com.apple.main-thread
0   reaper_csurf_integrator.dylib 	0x000000010fd02df5 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__is_long() const + 21
1   reaper_csurf_integrator.dylib 	0x000000010fd0a719 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::size() const + 25
2   reaper_csurf_integrator.dylib 	0x000000010fce9fce bool std::__1::operator==<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, char const*) + 46
3   reaper_csurf_integrator.dylib 	0x000000010fcf0d09 ProcessZoneFile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ControlSurface*, std::__1::vector<Widget*, std::__1::allocator<Widget*> >&) + 1385
4   reaper_csurf_integrator.dylib 	0x000000010fcf028c ControlSurface::InitZones(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) + 444
5   reaper_csurf_integrator.dylib 	0x000000010fd073d3 Midi_ControlSurface::Midi_ControlSurface(CSurfIntegrator*, Page*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, midi_Input*, midi_Output*) + 387
6   reaper_csurf_integrator.dylib 	0x000000010fcea427 Midi_ControlSurface::Midi_ControlSurface(CSurfIntegrator*, Page*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, midi_Input*, midi_Output*) + 71
7   reaper_csurf_integrator.dylib 	0x000000010fce8cdc Manager::Init() + 2604
8   reaper_csurf_integrator.dylib 	0x000000010fca3e2b CSurfIntegrator::Extended(int, void*, void*, void*) + 91
9   com.cockos.reaper             	0x000000010755ff69 CSurf_Extended(int, void*, void*, void*, IReaperControlSurface*) + 121
10  com.cockos.reaper             	0x00000001072e2520 OnProjectChange(int, int) + 816
11  com.cockos.reaper             	0x00000001078cb9b3 MainProc(HWND__*, unsigned int, unsigned long, long) + 9603

Thread 1:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 2:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 3:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 4:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 5:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 6:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 7:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 8:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 9:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 10:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 11:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0
...and if you remove the LF before ZoneEnd in the first example, it works fine Parser error?
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 09:26 AM   #5738
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
Hi Geoff, wasn't expecting a change but tried anyway and the new build also crashes when trying to add the MFTwister. Now that I'm back at my PC I can confirm that the only thing in the Zone folder at the moment is the .zon file I posted earlier.

I've been playing around to troubleshoot:

1. Removed the buttons from the .zon file and tried to load it: still crashes

2. Removed the channels/sends from the .zon file leaving only the buttons and tried again: still crashes

This makes me think the crash has nothing to do with .zon file at all. Ok..so let's simplify things further:

3. Edited the .mst file - left only the first page of buttons, removed feedback state. The only widgets are simple press widgets. Then I edited the .zon file to only reflect these buttons. Try to load the MFTwister in CSI: still crashes.

Here's the simplified "test" .mst:
Code:
Widget ChannelLeft
  Press B1 00 7F
WidgetEnd

Widget ChannelRight
  Press B1 01 7F
WidgetEnd

Widget ChannelMute
    Press B1 02 7F
WidgetEnd 

Widget ChannelSolo
    Press B1 03 7F
WidgetEnd

Widget TrimRead
    Press B1 04 7F
WidgetEnd

Widget Touch
    Press B1 05 7F
WidgetEnd

Widget Latch
    Press B1 06 7F
WidgetEnd

Widget Write
    Press B1 07 7F
WidgetEnd

Widget Loop
    Press B1 08 7F
WidgetEnd

Widget Click
    Press B1 09 7F
WidgetEnd

Widget RecordArm
    Press B1 0A 7F
WidgetEnd

Widget Record
    Press B1 0B 7F
WidgetEnd

Widget Rewind
  Press B1 0C 7F
WidgetEnd

Widget FastForward
  Press B1 0D 7F
WidgetEnd

Widget Stop
  Press B1 0E 7F
WidgetEnd

Widget Play
    Press B1 0F 7F
WidgetEnd
Here's the simplified "test" .zon:
Code:
Zone Home
	OnTrackSelection MapSelectedTrackSendsToWidgets
	OnFXFocus MapFocusedFXToWidgets
	IncludedZones
		Buttons|
	IncludedZonesEnd
ZoneEnd

Zone Buttons|
        ChannelLeft Reaper 40286
	ChannelRight Reaper 40285
	ChannelMute TrackMute
	ChannelSolo TrackSolo
	
	TrimRead TrackAutoMode 0
	Touch TrackAutoMode 2
	Latch TrackAutoMode 4
	Write TrackAutoMode 3

	Loop Reaper 1068
	Click Reaper 40364
	RecordArm TrackRecordArm
	Record Record

	Rewind Reaper 40042
	FastForward FastForward
	Stop Stop
	Play Play
ZoneEnd
This leads me to think the Reaper crashes have to do with the communication between CSI and the device itself - maybe when trying to open the MIDI ports. Did anything change in that regard between the 12/27 build and the 12/31 build?
I think @MixMonkey has it narrowed down to any Reaper Actions, try removing those.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 09:28 AM   #5739
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Superb! My Sonsig Rev-A reverb thanks you from the bottom of it's heart (highest concentration of non-controllable parameters I've come across)
More than glad to be of service

Quote:
Originally Posted by MixMonkey View Post
Re: the latest build. I get the same 8 tracks across every surface. Reaper Action thing doesn't seem to affect MCU, only C4. Will carry on investigating.
Ah, yes, fix something, break something else, you are beginning to get a view into how totally disruptive that simple .zon file change was code-wise
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 09:31 AM   #5740
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Stranger and stranger.


This crashes on launch:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu

		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd

Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
		
ZoneEnd
This doesn't:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu

		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd

Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
ZoneEnd
Code:
Process:               REAPER [886]
Path:                  /Applications/REAPER64.app/Contents/MacOS/REAPER
Identifier:            com.cockos.reaper
Version:               6.20.0 (6.20.0)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           REAPER [886]
User ID:               501

Date/Time:             2020-01-01 16:18:53.487 +0000
OS Version:            Mac OS X 10.14.6 (18G2022)
Report Version:        12
Anonymous UUID:        B3DE415F-97E0-995E-EA26-974D3FBF70AD


Time Awake Since Boot: 3200 seconds

System Integrity Protection: enabled

Crashed Thread:        0  reaper  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [886]

VM Regions Near 0:
--> 
    __TEXT                 0000000107221000-0000000107d6d000 [ 11.3M] r-x/rwx SM=COW  /Applications/REAPER64.app/Contents/MacOS/REAPER

Thread 0 Crashed:: reaper  Dispatch queue: com.apple.main-thread
0   reaper_csurf_integrator.dylib 	0x000000010fd02df5 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__is_long() const + 21
1   reaper_csurf_integrator.dylib 	0x000000010fd0a719 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::size() const + 25
2   reaper_csurf_integrator.dylib 	0x000000010fce9fce bool std::__1::operator==<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, char const*) + 46
3   reaper_csurf_integrator.dylib 	0x000000010fcf0d09 ProcessZoneFile(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ControlSurface*, std::__1::vector<Widget*, std::__1::allocator<Widget*> >&) + 1385
4   reaper_csurf_integrator.dylib 	0x000000010fcf028c ControlSurface::InitZones(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >) + 444
5   reaper_csurf_integrator.dylib 	0x000000010fd073d3 Midi_ControlSurface::Midi_ControlSurface(CSurfIntegrator*, Page*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, midi_Input*, midi_Output*) + 387
6   reaper_csurf_integrator.dylib 	0x000000010fcea427 Midi_ControlSurface::Midi_ControlSurface(CSurfIntegrator*, Page*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, midi_Input*, midi_Output*) + 71
7   reaper_csurf_integrator.dylib 	0x000000010fce8cdc Manager::Init() + 2604
8   reaper_csurf_integrator.dylib 	0x000000010fca3e2b CSurfIntegrator::Extended(int, void*, void*, void*) + 91
9   com.cockos.reaper             	0x000000010755ff69 CSurf_Extended(int, void*, void*, void*, IReaperControlSurface*) + 121
10  com.cockos.reaper             	0x00000001072e2520 OnProjectChange(int, int) + 816
11  com.cockos.reaper             	0x00000001078cb9b3 MainProc(HWND__*, unsigned int, unsigned long, long) + 9603

Thread 1:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 2:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 3:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 4:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 5:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 6:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 7:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 8:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 9:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 10:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0

Thread 11:
0   libsystem_pthread.dylib       	0x00007fff65f013f0 start_wqthread + 0
...and if you remove the LF before ZoneEnd in the first example, it works fine Parser error?
Thanks, oh yeah, most assuredly parsing, that whole Zone file processing section got a rewrite as a result of the simple Buttons to Buttons| etc., changes.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 09:32 AM   #5741
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
I think @MixMonkey has it narrowed down to any Reaper Actions, try removing those.
Already did. I edited my post while you were replying but you probably didn't catch it.

I did a test version where I replaced the actions in the .zon with "NoAction" and it still crashes when trying to add.

Test .zon file:
Code:
Zone Home
	OnTrackSelection MapSelectedTrackSendsToWidgets
	OnFXFocus MapFocusedFXToWidgets
	IncludedZones
		Buttons|
	IncludedZonesEnd
ZoneEnd

Zone Buttons|
        ChannelLeft NoAction
	ChannelRight NoAction
	ChannelMute NoAction
	ChannelSolo NoAction
	
	TrimRead NoAction
	Touch NoAction
	Latch NoAction
	Write NoAction

	Loop NoAction
	Click NoAction
	RecordArm NoAction
	Record NoAction

	Rewind NoAction
	FastForward NoAction
	Stop NoAction
	Play NoAction
ZoneEnd
Funkybot is offline   Reply With Quote
Old 01-01-2020, 09:34 AM   #5742
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
Already did. I edited my post while you were replying but you probably didn't catch it.

I did a test version where I replaced the actions in the .zon with "NoAction" and it still crashes when trying to add.

Test .zon file:
Code:
Zone Home
	OnTrackSelection MapSelectedTrackSendsToWidgets
	OnFXFocus MapFocusedFXToWidgets
	IncludedZones
		Buttons|
	IncludedZonesEnd
ZoneEnd

Zone Buttons|
        ChannelLeft NoAction
	ChannelRight NoAction
	ChannelMute NoAction
	ChannelSolo NoAction
	
	TrimRead NoAction
	Touch NoAction
	Latch NoAction
	Write NoAction

	Loop NoAction
	Click NoAction
	RecordArm NoAction
	Record NoAction

	Rewind NoAction
	FastForward NoAction
	Stop NoAction
	Play NoAction
ZoneEnd
Yup, definitely parsing, thanks for the test cases.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 09:35 AM   #5743
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yup, definitely parsing, thanks for the test cases.
Happy to crash things!
Funkybot is offline   Reply With Quote
Old 01-01-2020, 09:42 AM   #5744
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Reaper Actions are fine, blank lines in Zones aren't
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 09:55 AM   #5745
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by MixMonkey View Post
Reaper Actions are fine, blank lines in Zones aren't
I was wondering what "parsing error" meant. Yep. That did the trick! Deleted the blank lines and it loaded without a crash. Good job helping narrowing that down!
Funkybot is offline   Reply With Quote
Old 01-01-2020, 09:58 AM   #5746
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Quote:
Originally Posted by Funkybot View Post
I was wondering what "parsing error" meant. Yep. That did the trick! Deleted the blank lines and it loaded without a crash. Good job helping narrowing that down!
Splendid The parser is the code that scans all the setup files (.zon,.mst etc) If it makes a mistake, the whole show falls apart.
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 09:59 AM   #5747
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

This works fine:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu
		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd
/
Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
	/Close all FX chain windows
		Split Reaper _S&M_WNCLS4		
	/Close all floating FX windows
 		Split Reaper _S&M_WNCLS3
 	/Bypass FX chain for selected track
		SpotErase Reaper _S&M_FXBYPALL
	/Bypass FX
		RotaryPushC1 Reaper _S&M_FXBYP1
		RotaryPushC2 Reaper _S&M_FXBYP2
		RotaryPushC3 Reaper _S&M_FXBYP3
		RotaryPushC4 Reaper _S&M_FXBYP4
		RotaryPushC5 Reaper _S&M_FXBYP5
		RotaryPushC6 Reaper _S&M_FXBYP6
		RotaryPushC7 Reaper _S&M_FXBYP7
		RotaryPushC8 Reaper _S&M_FXBYP8		
	/Offline FX	
		RotaryPushB1 Reaper _S&M_FXOFF1
		RotaryPushB2 Reaper _S&M_FXOFF2
		RotaryPushB3 Reaper _S&M_FXOFF3
		RotaryPushB4 Reaper _S&M_FXOFF4
		RotaryPushB5 Reaper _S&M_FXOFF5
		RotaryPushB6 Reaper _S&M_FXOFF6
		RotaryPushB7 Reaper _S&M_FXOFF7
		RotaryPushB8 Reaper _S&M_FXOFF8
ZoneEnd
/
Zone Send|1-8
		SelectedTrackNavigator
		DisplayUpperA|  TrackSendNameDisplay
		DisplayLowerA|  TrackSendVolumeDisplay
		RotaryPushA| TrackSendMute
		RotaryA|  TrackSendVolume
ZoneEnd
/
Zone FXMenu|1-8
		SelectedTrackNavigator
		DisplayUpperD| FXNameDisplay |
		DisplayLowerD| NoAction
		RotaryD| NoAction	
		RotaryPushD| GoFXSlot |
ZoneEnd
But I can't do this anymore:
Code:
Zone FXMenu|1-8
		SelectedTrackNavigator
		DisplayUpperD| FXNameDisplay |
		DisplayLowerD| NoAction
		RotaryD| NoAction	
		RotaryPushD| GoFXSlot |		
	/Open FX Chain for selected slot		
		RotaryPushD1 Reaper _S&M_SHOWFXCHAIN1
		RotaryPushD2 Reaper _S&M_SHOWFXCHAIN2
		RotaryPushD3 Reaper _S&M_SHOWFXCHAIN3
		RotaryPushD4 Reaper _S&M_SHOWFXCHAIN4
		RotaryPushD5 Reaper _S&M_SHOWFXCHAIN5
		RotaryPushD6 Reaper _S&M_SHOWFXCHAIN6
		RotaryPushD7 Reaper _S&M_SHOWFXCHAIN7
		RotaryPushD8 Reaper _S&M_SHOWFXCHAIN8
ZoneEnd
So no more double assigning, it would seem
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 11:52 AM   #5748
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

New build is up.

Hopefully fixes repeating Channels and crash on empty Zone line.

Still pondering the double assign issue...
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 11:59 AM   #5749
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Splendid The parser is the code that scans all the setup files (.zon,.mst etc) If it makes a mistake, the whole show falls apart.
Well put, however the show should never crash, maybe get pretty lame, but never crash
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 12:02 PM   #5750
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

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

Hopefully fixes repeating Channels and crash on empty Zone line.
After having removed them, I just added the blank lines back to try it out and can confirm the fix works. Everything's back to where we were before with the MFTwister. Thanks!

May give Eucon another go today. Have to pour over your last post on it.
Funkybot is offline   Reply With Quote
Old 01-01-2020, 12:03 PM   #5751
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
After having removed them, I just added the blank lines back to try it out and can confirm the fix works. Everything's back to where we were before with the MFTwister. Thanks!

May give Eucon another go today. Have to pour over your last post on it.
Great, thanks to you and @MixMonkey for the effort sorting this -- well so far -- there may be a bit more to come
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 12:18 PM   #5752
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

If anyone with a MIDI Fighter Twister wants to try this out, here's an updated set of files:

1. Updated syntax for .zon file due to recent CSI updates
2. Changed Encoder widgets to Fader widgets (you'll also need to load the new MFTwister utility file that's attached if you happened to use my prior version)*
3. Added 42 (so far!) FocusedFX mappings covering a lot of common plugins - these all get handled on Bank1 on the MFTwister
4. Updated documentation to show how some FX mappings generally work

I'm super happy with how well this all ties together. This is an incredibly capable Reaper control surface thanks to CSI.

*This could change back after encoder acceleration gets built, but I actually kind of like the faders right now.

Last edited by Funkybot; 01-25-2020 at 08:54 PM.
Funkybot is offline   Reply With Quote
Old 01-01-2020, 12:22 PM   #5753
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
If anyone with a MIDI Fighter Twister wants to try this out, here's an updated set of files:

1. Updated syntax for .zon file due to recent CSI updates
2. Changed Encoder widgets to Fader widgets (you'll also need to load the new MFTwister utility file that's attached if you happened to use my prior version)*
3. Added 42 (so far!) FocusedFX mappings covering a lot of common plugins - these all get handled on Bank1 on the MFTwister
4. Updated documentation to show how some FX mappings generally work

I'm super happy with how well this all ties together. This is an incredibly capable Reaper control surface thanks to CSI.

*This could change back after encoder acceleration gets built, but I actually kind of like the faders right now.
Great stuff, thanks for contributing !

Just wondering, you still don't like the re-tuned EncoderPlain, had a chance to try it yet ?
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 12:35 PM   #5754
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by Geoff Waddington View Post
Great stuff, thanks for contributing !

Just wondering, you still don't like the re-tuned EncoderPlain, had a chance to try it yet ?
Not yet. You know what, I'll do that today. I want to make a tweak to the zones to separate the selected channel buttons and more global buttons by putting them in two different zones so I temporarily took down the attachment. I'll also check out the EncoderPlain changes at the same time before reposting.
Funkybot is offline   Reply With Quote
Old 01-01-2020, 12:45 PM   #5755
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

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

Hopefully fixes repeating Channels and crash on empty Zone line.

Still pondering the double assign issue...
Channel numbering fixed, Pan/Width fixed with a slight modification:
Code:
Zone PanWidth|1-8
	TrackNavigator
	Rotary| TrackPanWidth 1
	DisplayLower|  TrackPanWidthDisplay
	TrackTouch+DisplayLower|  TrackVolumeDisplay
	RotaryPush| GoZone Home
ZoneEnd
Highlighted was previously GoZone Channel|, which doesn't seem to work. GoZone Home achieves the same thing.

Double assign thing may be specific to the FX Menu (like modifiers not working), it works in other places:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu
		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd
/
Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
	/Close all FX chain windows
		Split Reaper _S&M_WNCLS4		
	/Close all floating FX windows
 		Split Reaper _S&M_WNCLS3
 	/Bypass FX chain for selected track
		SpotErase Reaper _S&M_FXBYPALL
	/Bypass FX
		RotaryPushC1 Reaper _S&M_FXBYP1
		RotaryPushC2 Reaper _S&M_FXBYP2
		RotaryPushC3 Reaper _S&M_FXBYP3
		RotaryPushC4 Reaper _S&M_FXBYP4
		RotaryPushC5 Reaper _S&M_FXBYP5
		RotaryPushC6 Reaper _S&M_FXBYP6
		RotaryPushC7 Reaper _S&M_FXBYP7
		RotaryPushC8 Reaper _S&M_FXBYP8		
	/Offline FX	
		RotaryPushB1 Reaper _S&M_FXOFF1
		RotaryPushB2 Reaper _S&M_FXOFF2
		RotaryPushB3 Reaper _S&M_FXOFF3
		RotaryPushB4 Reaper _S&M_FXOFF4
		RotaryPushB5 Reaper _S&M_FXOFF5
		RotaryPushB6 Reaper _S&M_FXOFF6
		RotaryPushB7 Reaper _S&M_FXOFF7
		RotaryPushB8 Reaper _S&M_FXOFF8
ZoneEnd
/
Zone Send|1-8
		SelectedTrackNavigator
		DisplayUpperA|  TrackSendNameDisplay
		DisplayLowerA|  TrackSendVolumeDisplay
		RotaryPushA| TrackSendMute
		RotaryA|  TrackSendVolume
ZoneEnd
/
Zone FXMenu|1-8
		SelectedTrackNavigator
		DisplayUpperD| FXNameDisplay |
		DisplayLowerD| NoAction
		RotaryD| NoAction	
		RotaryPushD| GoFXSlot |
ZoneEnd
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 01:00 PM   #5756
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by Funkybot View Post
Not yet. You know what, I'll do that today. I want to make a tweak to the zones to separate the selected channel buttons and more global buttons by putting them in two different zones so I temporarily took down the attachment. I'll also check out the EncoderPlain changes at the same time before reposting.
Excellent, let me know what you find.
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 01:00 PM   #5757
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,090
Default

Quote:
Originally Posted by MixMonkey View Post
Channel numbering fixed, Pan/Width fixed with a slight modification:
Code:
Zone PanWidth|1-8
	TrackNavigator
	Rotary| TrackPanWidth 1
	DisplayLower|  TrackPanWidthDisplay
	TrackTouch+DisplayLower|  TrackVolumeDisplay
	RotaryPush| GoZone Home
ZoneEnd
Highlighted was previously GoZone Channel|, which doesn't seem to work. GoZone Home achieves the same thing.

Double assign thing may be specific to the FX Menu (like modifiers not working), it works in other places:
Code:
Zone Home
		OnTrackSelection MapSelectedTrackSendsToWidgets		
		OnTrackSelection MapSelectedTrackFXToMenu
		IncludedZones
			C4_Buttons|
		IncludedZonesEnd
ZoneEnd
/
Zone C4_Buttons|
		BankLeft TrackBank -8
		BankRight TrackBank 8
		ChannelLeft TrackBank -1
		ChannelRight TrackBank 1
	/FX menu
		Lock MapSelectedTrackFXToMenu
	/Close all FX chain windows
		Split Reaper _S&M_WNCLS4		
	/Close all floating FX windows
 		Split Reaper _S&M_WNCLS3
 	/Bypass FX chain for selected track
		SpotErase Reaper _S&M_FXBYPALL
	/Bypass FX
		RotaryPushC1 Reaper _S&M_FXBYP1
		RotaryPushC2 Reaper _S&M_FXBYP2
		RotaryPushC3 Reaper _S&M_FXBYP3
		RotaryPushC4 Reaper _S&M_FXBYP4
		RotaryPushC5 Reaper _S&M_FXBYP5
		RotaryPushC6 Reaper _S&M_FXBYP6
		RotaryPushC7 Reaper _S&M_FXBYP7
		RotaryPushC8 Reaper _S&M_FXBYP8		
	/Offline FX	
		RotaryPushB1 Reaper _S&M_FXOFF1
		RotaryPushB2 Reaper _S&M_FXOFF2
		RotaryPushB3 Reaper _S&M_FXOFF3
		RotaryPushB4 Reaper _S&M_FXOFF4
		RotaryPushB5 Reaper _S&M_FXOFF5
		RotaryPushB6 Reaper _S&M_FXOFF6
		RotaryPushB7 Reaper _S&M_FXOFF7
		RotaryPushB8 Reaper _S&M_FXOFF8
ZoneEnd
/
Zone Send|1-8
		SelectedTrackNavigator
		DisplayUpperA|  TrackSendNameDisplay
		DisplayLowerA|  TrackSendVolumeDisplay
		RotaryPushA| TrackSendMute
		RotaryA|  TrackSendVolume
ZoneEnd
/
Zone FXMenu|1-8
		SelectedTrackNavigator
		DisplayUpperD| FXNameDisplay |
		DisplayLowerD| NoAction
		RotaryD| NoAction	
		RotaryPushD| GoFXSlot |
ZoneEnd
Cool, so we're mostly back on track, yes ?
__________________
Beta software https://stash.reaper.fm/v/38349/CSI%20beta.zip Donate GeoffWaddington.ca
Installation / documentation / source https://github.com/GeoffAWaddington/...ntegrator/wiki
Geoff Waddington is offline   Reply With Quote
Old 01-01-2020, 01:15 PM   #5758
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 1,443
Default

Quote:
Originally Posted by Geoff Waddington View Post
Cool, so we're mostly back on track, yes ?
Yes, I think so. I've only tried the new versions on Mac, will try on Windows (but this should be ok, I think @FunkyBot uses Windows)

Itching to give the SteppedFXParam a go!
MixMonkey is online now   Reply With Quote
Old 01-01-2020, 02:19 PM   #5759
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Hi Geoff, EncoderPlain feedback:

1. Knob tuning feels MUCH better now. You don't have to twist and twist and twist to feel like your moving the knob.

2. There are times though where finer control might be desired (like ReaComp and it's odd parameter scaling for attack/release, or fine tuning volume). It might be cool if there were ways to set "Fine Tuning" modifiers. Something like

Rotary1 FXParam "1"
Shift+Rotary1 FineFXParam "1"

And also allow for things like

Rotary|TrackPan
Shift+Rotary|FineTrackPan

...just a thought. Not sure if that would work for TrackVolume/FineTrackVolume on surfaces with flying faders though.

3. Bug: when twisting knobs on the surface, I can turn VST FX parameters well-beyond their normal parameter ranges. This seems bad. Example: I can create negative pre-delay times on Valhalla VintageVerb because the knob doesn't stop at 0 anymore. Or in EQuilibrium, the gain knobs keep turning after I pass -18db (which is the limit). Or get -438ms attack times in ReaComp. It seems like bounds are not being respected.

4. Also, I'm more regularly getting that thing now where the surface stops responding. Just happened twice in the first two go-rounds with encoders. Both times FX were focused but it's hard to say if that's what caused the surface to stop responding. This hadn't happened at all in the last few days but suddenly happened twice so I figured I'd report it.

5. As mentioned once before, the encoder movement is inverted, but the Invert+Action modifier fixes that so no biggie.

As an FYI - my encoder widgets look like this (I think I recall you saying there was no encoder FB hence the FB_Fader7Bit):

Code:
Widget Rotary1
	EncoderPlain b0 00 7f
	FB_Fader7Bit b0 00 00
WidgetEnd
Definitely going to stick to Fader7Bit for now. But will keep these mst and zon files handy and off to the side for future testing.
Funkybot is offline   Reply With Quote
Old 01-01-2020, 02:21 PM   #5760
Funkybot
Human being with feelings
 
Join Date: Jul 2007
Posts: 1,408
Default

Quote:
Originally Posted by MixMonkey View Post
Yes, I think so. I've only tried the new versions on Mac, will try on Windows (but this should be ok, I think @FunkyBot uses Windows)

Itching to give the SteppedFXParam a go!
Yep, I'm on Windows. In terms of things I've tested so far, I think we're back on track outside of things I just reported.
Funkybot 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 12:37 AM.


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