View Single Post
Old 11-07-2019, 03:50 PM   #5259
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,180
Default

Quote:
Originally Posted by woodslanding View Post
okay here's a super rough start... I've read the following file:
Code:
/ X-Touch Mini
/ Ensure X-Touch Mini is configured in "standard" mode
/
/ Layout:
/ Layer A
/   Rotary Buttons (EN 1-8 Push)
/   Rotary Knobs   (EN 1-8 Turn)
/   Upper Buttons  (BT 1-8)
/   Lower Buttons  (BT 9-16)
/   Master Fader   (FD 1)
/
/ Layer B
/   Rotary Buttons (EN 1-8 Push)
/   Rotary Knobs   (EN 1-8 Turn)
/   Upper Buttons  (BT 1-8)
/   Lower Buttons  (BT 9-16)
/   Master Fader   (FD 1)


Widget LayerA_RotaryPush1
	Press 9a 00 7f
	Row 2
	Col 1
WidgetEnd
	
Widget LayerA_RotaryPush2
	Press 9a 01 7f
	Row 2
	Col 2
WidgetEnd

Widget LayerA_RotaryPush3
	Press 9a 02 7f
	Row 2
	Col 3
WidgetEnd

Widget LayerA_RotaryPush4
	Press 9a 03 7f
	Row 2
	Col 4
WidgetEnd

Widget LayerA_RotaryPush5
	Press 9a 04 7f
	Row 2
	Col 5
WidgetEnd

Widget LayerA_RotaryPush6
	Press 9a 05 7f
	Row 2
	Col 6
WidgetEnd

Widget LayerA_RotaryPush7
	Press 9a 06 7f
	Row 2
	Col 7
WidgetEnd

Widget LayerA_RotaryPush8
	Press 9a 07 7f
	Row 2
	Col 8
WidgetEnd

Widget LayerA_Rotary1
	Fader7Bit ba 01 7f
	FB_Fader7Bit ba 01 7e 0.5
	Row 1
	Col 1
WidgetEnd

Widget LayerA_Rotary2
	Fader7Bit ba 02 7f
	FB_Fader7Bit ba 02 7f 0.5
	Row 1
	Col 2
WidgetEnd

Widget LayerA_Rotary3
	Fader7Bit ba 03 7f
	FB_Fader7Bit ba 03 7f 0.5
	Row 1
	Col 3
WidgetEnd

Widget LayerA_Rotary4
	Fader7Bit ba 04 7f
	FB_Fader7Bit ba 04 7f 0.5
	Row 1
	Col 4
WidgetEnd

Widget LayerA_Rotary5
	Fader7Bit ba 05 7f
	FB_Fader7Bit ba 05 7f 0.5
	Row 1
	Col 5
WidgetEnd

Widget LayerA_Rotary6
	Fader7Bit ba 06 7f
	FB_Fader7Bit ba 06 7f 0.5
	Row 1
	Col 6
WidgetEnd

Widget LayerA_Rotary7
	Fader7Bit ba 07 7f
	FB_Fader7Bit ba 07 7f 0.5
	Row 1
	Col 7
WidgetEnd

Widget LayerA_Rotary8
	Fader7Bit ba 08 7f
	FB_Fader7Bit ba 08 7f 0.5
	Row 1
	Col 8
WidgetEnd

Widget LayerA_UpperButton1
	Press 9a 08 7f
	FB_TwoState 9a 08 7f 8a 08 00 0.5
	Row 3
	Col 1
WidgetEnd

Widget LayerA_UpperButton2
	Press 9a 09 7f
	FB_TwoState 9a 09 7f 8a 09 00 0.5
	Row 3
	Col 2
WidgetEnd

Widget LayerA_UpperButton3
	Press 9a 0a 7f
	FB_TwoState 9a 0a 7f 8a 0a 00 0.5
	Row 3
	Col 3
WidgetEnd

Widget LayerA_UpperButton4
	Press 9a 0b 7f
	FB_TwoState 9a 0b 7f 8a 0b 00 0.5
	Row 3
	Col 4
WidgetEnd

Widget LayerA_UpperButton5
	Press 9a 0c 7f
	FB_TwoState 9a 0c 7f 8a 0c 00 0.5
	Row 3
	Col 5
WidgetEnd

Widget LayerA_UpperButton6
	Press 9a 0d 7f
	FB_TwoState 9a 0d 7f 8a 0d 00 0.5
	Row 3
	Col 6
WidgetEnd

Widget LayerA_UpperButton7
	Press 9a 0e 7f
	FB_TwoState 9a 0e 7f 8a 0e 00 0.5
	Row 3
	Col 7
WidgetEnd

Widget LayerA_UpperButton8
	Press 9a 0f 7f
	FB_TwoState 9a 0f 7f 8a 0f 00 0.5
	Row 3
	Col 8
WidgetEnd

Widget LayerA_LowerButton1
	Press 9a 10 7f
	FB_TwoState 9a 0f 7f 8a 0f 00 0.5
	Row 4
	Col 1
WidgetEnd

Widget LayerA_LowerButton2
	Press 9a 11 7f
	FB_TwoState 9a 0f 7f 8a 0f 00 0.5
	Row 4
	Col 2
WidgetEnd

Widget LayerA_LowerButton3
	Press 9a 12 7f
	FB_TwoState 9a 12 7f 8a 12 00 0.5
	Row 4
	Col 3
WidgetEnd

Widget LayerA_LowerButton4
	Press 9a 13 7f
	FB_TwoState 9a 13 7f 8a 13 00 0.5
	Row 4
	Col 4
WidgetEnd

Widget LayerA_LowerButton5
	Press 9a 14 7f
	FB_TwoState 9a 14 7f 8a 14 00 0.5
	Row 4
	Col 5
WidgetEnd

Widget LayerA_LowerButton6
	Press 9a 15 7f
	FB_TwoState 9a 15 7f 8a 15 00 0.5
	Row 4
	Col 6
WidgetEnd

Widget LayerA_LowerButton7
	Press 9a 16 7f
	FB_TwoState 9a 16 7f 8a 16 00 0.5
	Row 4
	Col 7
WidgetEnd

Widget LayerA_LowerButton8
	Press 9a 17 7f
	FB_TwoState 9a 17 7f 8a 17 00 0.5
	Row 4
	Col 8
WidgetEnd

Widget LayerA_Fader
	Fader7Bit ba 09 7f
	Row 1
	Col 9
WidgetEnd

/################################################
And generated a set of labels (well actually labeled faders...) So far it just reads the control names, which is not what we want. But it's a start. I appears that REAPER has no way to know which bank of buttons on the xtouch is selected--I don't think it sends out any messages when pressed--so I limited myself to bank A. That's fine for me, given that CSI allows you to create any number of zones.

Also it would be nice to support a vertical type of control eventually, but for now the fader is just another horizontal button.
I'm confused, is that meant to be an .mst file ?

If not, what is this file ?

If so, the syntax is incorrect, we sort of standardized on the Mackie C4, where rows are letters and columns are numbers.

We also have a (sort of) naming convention

Taking this into account, your .mst file would look something like this:


Code:
Widget LayerA_RotaryPushA1
	Press 9a 00 7f
WidgetEnd
	
Widget LayerA_RotaryPushA2
	Press 9a 01 7f
WidgetEnd

...

Widget LayerA_RotaryA1
	Fader7Bit ba 01 7f
	FB_Fader7Bit ba 01 7e 0.5
WidgetEnd

Widget LayerA_RotaryA2
	Fader7Bit ba 02 7f
	FB_Fader7Bit ba 02 7f 0.5
WidgetEnd

...

Widget LayerA_ButtonA1
	Press 9a 08 7f
	FB_TwoState 9a 08 7f 8a 08 00 0.5
WidgetEnd

Widget LayerA_ButtonA2
	Press 9a 09 7f
	FB_TwoState 9a 09 7f 8a 09 00 0.5
WidgetEnd

...

Widget LayerA_ButtonB7
	Press 9a 16 7f
	FB_TwoState 9a 16 7f 8a 16 00 0.5
WidgetEnd

Widget LayerA_ButtonB8
	Press 9a 17 7f
	FB_TwoState 9a 17 7f 8a 17 00 0.5
WidgetEnd

Widget LayerA_Fader1
	Fader7Bit ba 09 7f
WidgetEnd
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software: https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote