Connecting an iRig BlueBoard from ios to windows. Problem using double tap for buttons

I was able to connect my trusty iRig Blueboard to an iPad which sendes the midi over wifi (using midimittr on ipad). And gets the midi data through rtpMIDI on windows.

Now am able to control play pause, record arm and Go to Project Start, Go to Project End in Cubase.
Is it possible to activate diffrent parameters by double tapping a button, sendeing different key commands? like one tap = space bar for play pause. and double tap for record? (Numpad *)

Here is my project data so far
4pedal_rec_play.bmtp (1.5 KB)

You can try this.

I added a preset for gestures. Any CC on MIDI CH 1.

I use a counter to count how many taps/releases happen.

A single press and release is one tap. A double press and release is 4 taps. We count the taps using a 250 ms timer.

The tap counter then calls perform ‘Tap’ with two paramters, the CC number and tap count.

The rules then call a perform depending on the tap count and CC numbers. Your original translators input was changed from CC to perform and each sends a different keystroke.

Here is the logic in translator 0.2

// Look for double tap
if qq<2 then exit rules, skip Outgoing Action
// count of 2 for touble tap
if qq>2 then Goto "next"

if pp==20 then Perform "Start"
if pp==21 then Perform "End"
if pp==22 then Perform "Record"
if pp==23 then Perform "Play"
exit rules, skip Outgoing Action

Label "next"
// count of 4 for double tap
if qq!=4 then exit rules, skip Outgoing Action
if pp==20 then Perform "Play-Pause"

Again this is all triggered by translator 0.0 which triggers 0.1 which trigger 0.2 which triggers one of the translators in preset 1.
4pedal_rec_play–gestures–sjc.bmtp (2.7 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

It doesnt work:

this is what i get for one tap:

1: Bome MIDI Translator Pro (Windows 11 (24H2))
2: Loaded Project file: C:\Users\…\Desktop\4pedal_rec_play–gestures–sjc.bmtp
3: Activated preset 0: Gestures
4: Activated preset 1: Rig BlueBoard
5: MIDI IN [iRig Blueboard]: B0 17 7F
6: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
7: RULE 0.0:1 expression: (gb=gb+1) = 1
8: MIDI IN [iRig Blueboard]: B0 00 00
9: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
10: RULE 0.0:1 expression: (gb=gb+1) = 2
11: MIDI IN [iRig Blueboard]: B0 00 00
12: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
13: RULE 0.0:1 expression: (gb=gb+1) = 3
14: MIDI IN [iRig Blueboard]: B0 00 00
15: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
16: RULE 0.0:1 expression: (gb=gb+1) = 4
17: MIDI IN [iRig Blueboard]: B0 00 00
18: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
19: RULE 0.0:1 expression: (gb=gb+1) = 5
20: MIDI IN [iRig Blueboard]: B0 00 00
21: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
22: RULE 0.0:1 expression: (gb=gb+1) = 6
23: MIDI IN [iRig Blueboard]: B0 00 00
24: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
25: RULE 0.0:1 expression: (gb=gb+1) = 7
26: MIDI IN [iRig Blueboard]: B0 00 00
27: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
28: RULE 0.0:1 expression: (gb=gb+1) = 8
29: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
30: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
31: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
32: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
33: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
34: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
35: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
36: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
37: MIDI IN [iRig Blueboard]: B0 17 00
38: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
39: RULE 0.0:1 expression: (gb=gb+1) = 9
40: MIDI IN [iRig Blueboard]: B0 00 00
41: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
42: RULE 0.0:1 expression: (gb=gb+1) = 10
43: MIDI IN [iRig Blueboard]: B0 00 00
44: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
45: RULE 0.0:1 expression: (gb=gb+1) = 11
46: MIDI IN [iRig Blueboard]: B0 00 00
47: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
48: RULE 0.0:1 expression: (gb=gb+1) = 12
49: MIDI IN [iRig Blueboard]: B0 00 00
50: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
51: RULE 0.0:1 expression: (gb=gb+1) = 13
52: MIDI IN [iRig Blueboard]: B0 00 00
53: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
54: RULE 0.0:1 expression: (gb=gb+1) = 14
55: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
56: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
57: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
58: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
59: MIDI IN [iRig Blueboard]: B0 00 00
60: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
61: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
62: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
63: RULE 0.0:1 expression: (gb=gb+1) = 15
64: MIDI IN [iRig Blueboard]: B0 00 00
65: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
66: RULE 0.0:1 expression: (gb=gb+1) = 16
67: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
68: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
69: IN 0.1 On timer ‘Tap Counter’
70: RULE 0.1:1 assignment: (pp=ga) = 0
71: RULE 0.1:2 assignment: (qq=gb) = 16
72: RULE 0.1:3 assignment: (gb=0) = 0
73: 0.1:5 Log cc=0, tap count=16
74: RULE 0.1:7 Perform ‘Tap’, pp,qq
75: IN 0.2 Perform tap(0,16)
76: 0.2:1 Log Perform tap 0, 16
77: RULE 0.2:7 condition satisfied: if qq>2 then Goto ‘next’
78: RULE 0.2:17 condition satisfied: if qq!=4 then exit rules, skip Outgoing Action

and this for double tap:

1: Bome MIDI Translator Pro (Windows 11 (24H2))
2: Loaded Project file: C:\Users\…\Desktop\4pedal_rec_play–gestures–sjc.bmtp
3: Activated preset 0: Gestures
4: Activated preset 1: Rig BlueBoard
5: MIDI IN [iRig Blueboard]: B0 17 7F
6: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
7: RULE 0.0:1 expression: (gb=gb+1) = 1
8: MIDI IN [iRig Blueboard]: B0 00 00
9: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
10: RULE 0.0:1 expression: (gb=gb+1) = 2
11: MIDI IN [iRig Blueboard]: B0 00 00
12: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
13: RULE 0.0:1 expression: (gb=gb+1) = 3
14: MIDI IN [iRig Blueboard]: B0 00 00
15: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
16: RULE 0.0:1 expression: (gb=gb+1) = 4
17: MIDI IN [iRig Blueboard]: B0 00 00
18: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
19: RULE 0.0:1 expression: (gb=gb+1) = 5
20: MIDI IN [iRig Blueboard]: B0 00 00
21: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
22: RULE 0.0:1 expression: (gb=gb+1) = 6
23: MIDI IN [iRig Blueboard]: B0 00 00
24: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
25: RULE 0.0:1 expression: (gb=gb+1) = 7
26: MIDI IN [iRig Blueboard]: B0 00 00
27: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
28: RULE 0.0:1 expression: (gb=gb+1) = 8
29: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
30: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
31: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
32: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
33: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
34: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
35: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
36: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
37: MIDI IN [iRig Blueboard]: B0 17 00
38: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
39: RULE 0.0:1 expression: (gb=gb+1) = 9
40: MIDI IN [iRig Blueboard]: B0 00 00
41: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
42: RULE 0.0:1 expression: (gb=gb+1) = 10
43: MIDI IN [iRig Blueboard]: B0 00 00
44: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
45: RULE 0.0:1 expression: (gb=gb+1) = 11
46: MIDI IN [iRig Blueboard]: B0 00 00
47: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
48: RULE 0.0:1 expression: (gb=gb+1) = 12
49: MIDI IN [iRig Blueboard]: B0 00 00
50: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
51: RULE 0.0:1 expression: (gb=gb+1) = 13
52: MIDI IN [iRig Blueboard]: B0 00 00
53: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
54: RULE 0.0:1 expression: (gb=gb+1) = 14
55: MIDI IN [iRig Blueboard]: B0 00 00
56: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
57: RULE 0.0:1 expression: (gb=gb+1) = 15
58: MIDI IN [iRig Blueboard]: B0 00 00
59: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
60: RULE 0.0:1 expression: (gb=gb+1) = 16
61: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
62: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
63: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
64: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
65: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
66: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
67: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
68: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
69: MIDI IN [iRig Blueboard]: B0 17 7F
70: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
71: RULE 0.0:1 expression: (gb=gb+1) = 17
72: MIDI IN [iRig Blueboard]: B0 00 00
73: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
74: RULE 0.0:1 expression: (gb=gb+1) = 18
75: MIDI IN [iRig Blueboard]: B0 00 00
76: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
77: RULE 0.0:1 expression: (gb=gb+1) = 19
78: MIDI IN [iRig Blueboard]: B0 00 00
79: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
80: RULE 0.0:1 expression: (gb=gb+1) = 20
81: MIDI IN [iRig Blueboard]: B0 00 00
82: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
83: RULE 0.0:1 expression: (gb=gb+1) = 21
84: MIDI IN [iRig Blueboard]: B0 00 00
85: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
86: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
87: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
88: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
89: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
90: RULE 0.0:1 expression: (gb=gb+1) = 22
91: MIDI IN [iRig Blueboard]: B0 00 00
92: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
93: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
94: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
95: RULE 0.0:1 expression: (gb=gb+1) = 23
96: MIDI IN [iRig Blueboard]: B0 00 00
97: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
98: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
99: RULE 0.0:1 expression: (gb=gb+1) = 24
100: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
101: MIDI IN [iRig Blueboard]: B0 17 00
102: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
103: RULE 0.0:1 expression: (gb=gb+1) = 25
104: MIDI IN [iRig Blueboard]: B0 00 00
105: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
106: RULE 0.0:1 expression: (gb=gb+1) = 26
107: MIDI IN [iRig Blueboard]: B0 00 00
108: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
109: RULE 0.0:1 expression: (gb=gb+1) = 27
110: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
111: MIDI IN [iRig Blueboard]: B0 00 00
112: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
113: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
114: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
115: RULE 0.0:1 expression: (gb=gb+1) = 28
116: MIDI IN [iRig Blueboard]: B0 00 00
117: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
118: RULE 0.0:1 expression: (gb=gb+1) = 29
119: MIDI IN [iRig Blueboard]: B0 00 00
120: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
121: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
122: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
123: RULE 0.0:1 expression: (gb=gb+1) = 30
124: MIDI IN [iRig Blueboard]: B0 00 00
125: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
126: RULE 0.0:1 expression: (gb=gb+1) = 31
127: MIDI IN [iRig Blueboard]: B0 00 00
128: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
129: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
130: IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
131: RULE 0.0:1 expression: (gb=gb+1) = 32
132: OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
133: IN 0.1 On timer ‘Tap Counter’
134: RULE 0.1:1 assignment: (pp=ga) = 0
135: RULE 0.1:2 assignment: (qq=gb) = 32
136: RULE 0.1:3 assignment: (gb=0) = 0
137: 0.1:5 Log cc=0, tap count=32
138: RULE 0.1:7 Perform ‘Tap’, pp,qq
139: IN 0.2 Perform tap(0,32)
140: 0.2:1 Log Perform tap 0, 32
141: RULE 0.2:7 condition satisfied: if qq>2 then Goto ‘next’
142: RULE 0.2:17 condition satisfied: if qq!=4 then exit rules, skip Outgoing Action

It doenst trigger any keystroke

I want to trigger the play pause button to trigger spacebar and by double tapping numpad *

‘Start’
‘End’

should work as one tap

Thanks in advance

Hi,

Perhaps your controls are not sending what I expect. Could you enable the log window and then check MIDI IN and press each of your buttons one at a time?

I see a lot of B0 00 00 messages (Bank Change) which I didn’t expect. I will probably need to filter them out. Then it loogs like translator 0.1 timer is not setting gb back to 0 so perhaps you had MT Pro focused when you did your testing. MT Pro should not be focused because keystrokes will go to it instead of Cubase.

Also are you on Windows or Mac? As I can set up another translator to make sure that Cubase has focus when sending keystrokes. I can set this up on Windows and instruct you how to modify it for Mac.

You might want to re-download the project file since it looks like maybe it is corrupt judging by the fact the translator 0.1 is not working. Here are the rules of translator 0.1

pp=ga
qq=gb
gb=0

Log "Log cc=%pp%, tap count=%qq%"

Perform "Tap", pp,qq

4pedal_rec_play–gestures–sjc.bmtp (2.7 KB)

If you can set your iRIG to send this, it would be best. If not, show me what they send and I will see what I can do.

Press Pedal 1 - B0 17 7F
Release Pedal 1 - B0 17 00
Press Pedal 2 - B0 18 7F
Release Pedal 2 - B0 18 00
Press Pedal 3 - B0 19 7F
Release Pedal 3 - B0 19 00
Press Pedal 4 - B0 1A 7F
Release Pedal 4 - B0 1A 00

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

I got 4 buttons named A,B,C,D

For A i got this midi in and out

1: MIDI IN [iRig Blueboard]: B0 14 7F
2: MIDI IN [iRig Blueboard]: B0 00 00
3: MIDI IN [iRig Blueboard]: B0 00 00
4: MIDI IN [iRig Blueboard]: B0 00 00
5: MIDI IN [iRig Blueboard]: B0 00 00
6: MIDI IN [iRig Blueboard]: B0 00 00
7: MIDI IN [iRig Blueboard]: B0 00 00
8: MIDI IN [iRig Blueboard]: B0 00 00
9: MIDI IN [iRig Blueboard]: B0 14 00 -----------release
10: MIDI IN [iRig Blueboard]: B0 00 00
11: MIDI IN [iRig Blueboard]: B0 00 00
12: MIDI IN [iRig Blueboard]: B0 00 00
13: MIDI IN [iRig Blueboard]: B0 00 00
14: MIDI IN [iRig Blueboard]: B0 00 00
15: MIDI IN [iRig Blueboard]: B0 00 00
16: MIDI IN [iRig Blueboard]: B0 00 00
17: 0.1:5 Log cc=0, tap count=16
18: 0.2:1 Log Perform tap 0, 16

For B:

1: MIDI IN [iRig Blueboard]: B0 15 7F
2: MIDI IN [iRig Blueboard]: B0 00 00
3: MIDI IN [iRig Blueboard]: B0 00 00
4: MIDI IN [iRig Blueboard]: B0 00 00
5: MIDI IN [iRig Blueboard]: B0 00 00
6: MIDI IN [iRig Blueboard]: B0 00 00
7: MIDI IN [iRig Blueboard]: B0 00 00
8: MIDI IN [iRig Blueboard]: B0 00 00
9: MIDI IN [iRig Blueboard]: B0 15 00 -------------release
10: MIDI IN [iRig Blueboard]: B0 00 00
11: MIDI IN [iRig Blueboard]: B0 00 00
12: MIDI IN [iRig Blueboard]: B0 00 00
13: MIDI IN [iRig Blueboard]: B0 00 00
14: MIDI IN [iRig Blueboard]: B0 00 00
15: MIDI IN [iRig Blueboard]: B0 00 00
16: MIDI IN [iRig Blueboard]: B0 00 00
17: 0.1:5 Log cc=0, tap count=16
18: 0.2:1 Log Perform tap 0, 16

For C:

1: MIDI IN [iRig Blueboard]: B0 16 7F
2: MIDI IN [iRig Blueboard]: B0 00 00
3: MIDI IN [iRig Blueboard]: B0 00 00
4: MIDI IN [iRig Blueboard]: B0 00 00
5: MIDI IN [iRig Blueboard]: B0 00 00
6: MIDI IN [iRig Blueboard]: B0 00 00
7: MIDI IN [iRig Blueboard]: B0 00 00
8: MIDI IN [iRig Blueboard]: B0 00 00
9: MIDI IN [iRig Blueboard]: B0 16 00 --------------------release
10: MIDI IN [iRig Blueboard]: B0 00 00
11: MIDI IN [iRig Blueboard]: B0 00 00
12: MIDI IN [iRig Blueboard]: B0 00 00
13: MIDI IN [iRig Blueboard]: B0 00 00
14: MIDI IN [iRig Blueboard]: B0 00 00
15: MIDI IN [iRig Blueboard]: B0 00 00
16: MIDI IN [iRig Blueboard]: B0 00 00
17: 0.1:5 Log cc=0, tap count=16
18: 0.2:1 Log Perform tap 0, 16

and for D:

1: MIDI IN [iRig Blueboard]: B0 17 7F
2: MIDI IN [iRig Blueboard]: B0 00 00
3: MIDI IN [iRig Blueboard]: B0 00 00
4: MIDI IN [iRig Blueboard]: B0 00 00
5: MIDI IN [iRig Blueboard]: B0 00 00
6: MIDI IN [iRig Blueboard]: B0 00 00
7: MIDI IN [iRig Blueboard]: B0 00 00
8: MIDI IN [iRig Blueboard]: B0 00 00
9: MIDI IN [iRig Blueboard]: B0 17 00 --------------------release
10: MIDI IN [iRig Blueboard]: B0 00 00
11: MIDI IN [iRig Blueboard]: B0 00 00
12: MIDI IN [iRig Blueboard]: B0 00 00
13: MIDI IN [iRig Blueboard]: B0 00 00
14: MIDI IN [iRig Blueboard]: B0 00 00
15: MIDI IN [iRig Blueboard]: B0 00 00
16: MIDI IN [iRig Blueboard]: B0 00 00
17: 0.1:5 Log cc=0, tap count=16
18: 0.2:1 Log Perform tap 0, 16

hope this helps

edit: i tried the new file but i couldnt figured it out

Is it possible to turn the led on for each button?

This is what i found in the Manual:

Since Bome MIDI Translator Pro does not filter incoming keystrokes, we cannot control double tap of incoming keystrokes.

The below should get you closer to what you want.

I filtered out all CC message less than 20 and greater than 23 in translator 0.0. This should ensure your bank change messages do not mess up with the count.

I added a focus translator to ensure cubase has focus prior to sending keystrokes. If you have a different version of cubase you may need to edit the outgoing action of translator 0.3.

I put a delay on keystrokes to allow time for cubase to have focus prior to sending them.
The delay amount (in ms is controlled by the value of rr in the rules of translator 0.2

Translator 1.4 is Play Pause ‘Space bar’ controlled by double tap in the rules of translator 0.2.

Hopefully you will see the logic and be able to adjust as you wish.

4pedal_rec_play–gestures–sjc-2025-08-24.bmtp (3.2 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Sry for being unclear
I want to trigger the play pause which is the D button of my iRig BlueBoard to trigger spacebar and by double tapping the D Button of my iRig BlueBoard, it triggers the numpad *

But this doesnt work at this moment

OK,

Single tap

A - Start
B - End
C - Empty
D - Play/Pause

Double Tap
A- Empty
B- Empty
C- Empty
D- Record

All controlled by the rules of translator 0.2.

Please study the rules if you want to change them again.

4pedal_rec_play–gestures-sjc-2025-08-24a.bmtp (3.3 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

i have run the bome script opened cubase 13.exe , pressed the buttons, but it didnt work. What can i do ?

Show me the log window with all boxes checked.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

This is for single tap Button : A

85132 - MIDI IN [iRig Blueboard]: B0 14 7F
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=20 with any value=127
85132 - RULE 0.0:6 expression: (gb=gb+1) = 1
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85132 - MIDI IN [iRig Blueboard]: B0 00 00
85132 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85132 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 14 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=20 with any value=0
85338 - RULE 0.0:6 expression: (gb=gb+1) = 2
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85338 - MIDI IN [iRig Blueboard]: B0 00 00
85338 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
85338 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
85588 - IN 0.1 On timer ‘Tap Counter’
85588 - RULE 0.1:1 assignment: (pp=ga) = 0
85588 - RULE 0.1:2 assignment: (qq=gb) = 2
85588 - RULE 0.1:3 assignment: (gb=0) = 0
85588 - 0.1:5 Log cc=0, tap count=2
85588 - RULE 0.1:7 Perform ‘Tap’, pp,qq
85588 - IN 0.2 Perform tap(0,2)
85588 - 0.2:1 Log Perform tap 0, 2
85588 - RULE 0.2:3 Perform ‘focus’
85588 - RULE 0.2:5 assignment: (rr=20) = 20
85588 - RULE 0.2 exit rules, skip Outgoing Action
85588 - IN 0.3 Perform Focus()
85597 - OUT 0.3 Activating app: ‘Cubase13.exe’

This is for single tap Button : B

145118 - MIDI IN [iRig Blueboard]: B0 15 7F
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=21 with any value=127
145118 - RULE 0.0:6 expression: (gb=gb+1) = 1
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145118 - MIDI IN [iRig Blueboard]: B0 00 00
145118 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145118 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 15 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=21 with any value=0
145216 - RULE 0.0:6 expression: (gb=gb+1) = 2
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145216 - MIDI IN [iRig Blueboard]: B0 00 00
145216 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
145216 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
145466 - IN 0.1 On timer ‘Tap Counter’
145466 - RULE 0.1:1 assignment: (pp=ga) = 0
145466 - RULE 0.1:2 assignment: (qq=gb) = 2
145466 - RULE 0.1:3 assignment: (gb=0) = 0
145466 - 0.1:5 Log cc=0, tap count=2
145466 - RULE 0.1:7 Perform ‘Tap’, pp,qq
145466 - IN 0.2 Perform tap(0,2)
145466 - 0.2:1 Log Perform tap 0, 2
145466 - RULE 0.2:3 Perform ‘focus’
145466 - RULE 0.2:5 assignment: (rr=20) = 20
145466 - RULE 0.2 exit rules, skip Outgoing Action
145466 - IN 0.3 Perform Focus()
145476 - OUT 0.3 Activating app: ‘Cubase13.exe’

This is for single tap Button : C

187520 - MIDI IN [iRig Blueboard]: B0 16 7F
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=22 with any value=127
187520 - RULE 0.0:6 expression: (gb=gb+1) = 1
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187520 - MIDI IN [iRig Blueboard]: B0 00 00
187520 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187520 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 16 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=22 with any value=0
187725 - RULE 0.0:6 expression: (gb=gb+1) = 2
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187725 - MIDI IN [iRig Blueboard]: B0 00 00
187725 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
187725 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
187975 - IN 0.1 On timer ‘Tap Counter’
187975 - RULE 0.1:1 assignment: (pp=ga) = 0
187975 - RULE 0.1:2 assignment: (qq=gb) = 2
187975 - RULE 0.1:3 assignment: (gb=0) = 0
187975 - 0.1:5 Log cc=0, tap count=2
187975 - RULE 0.1:7 Perform ‘Tap’, pp,qq
187975 - IN 0.2 Perform tap(0,2)
187975 - 0.2:1 Log Perform tap 0, 2
187975 - RULE 0.2:3 Perform ‘focus’
187975 - RULE 0.2:5 assignment: (rr=20) = 20
187975 - RULE 0.2 exit rules, skip Outgoing Action
187975 - IN 0.3 Perform Focus()
187984 - OUT 0.3 Activating app: ‘Cubase13.exe’

This is for single tap Button : D

206586 - MIDI IN [iRig Blueboard]: B0 17 7F
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
206586 - RULE 0.0:6 expression: (gb=gb+1) = 1
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - MIDI IN [iRig Blueboard]: B0 00 00
206586 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206586 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206586 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
206686 - MIDI IN [iRig Blueboard]: B0 17 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
206686 - RULE 0.0:6 expression: (gb=gb+1) = 2
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206686 - MIDI IN [iRig Blueboard]: B0 00 00
206686 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
206686 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
206936 - IN 0.1 On timer ‘Tap Counter’
206936 - RULE 0.1:1 assignment: (pp=ga) = 0
206936 - RULE 0.1:2 assignment: (qq=gb) = 2
206936 - RULE 0.1:3 assignment: (gb=0) = 0
206936 - 0.1:5 Log cc=0, tap count=2
206936 - RULE 0.1:7 Perform ‘Tap’, pp,qq
206936 - IN 0.2 Perform tap(0,2)
206936 - 0.2:1 Log Perform tap 0, 2
206936 - RULE 0.2:3 Perform ‘focus’
206936 - RULE 0.2:5 assignment: (rr=20) = 20
206936 - RULE 0.2 exit rules, skip Outgoing Action
206936 - IN 0.3 Perform Focus()
206945 - OUT 0.3 Activating app: ‘Cubase13.exe’

This is for double tapping tap Button : D

271160 - MIDI IN [iRig Blueboard]: B0 17 7F
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
271160 - RULE 0.0:6 expression: (gb=gb+1) = 1
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - MIDI IN [iRig Blueboard]: B0 00 00
271160 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271160 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271160 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
271261 - MIDI IN [iRig Blueboard]: B0 17 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
271261 - RULE 0.0:6 expression: (gb=gb+1) = 2
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271261 - MIDI IN [iRig Blueboard]: B0 00 00
271261 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271261 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 17 7F
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=127
271380 - RULE 0.0:6 expression: (gb=gb+1) = 3
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271380 - MIDI IN [iRig Blueboard]: B0 00 00
271380 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271380 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 17 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=23 with any value=0
271487 - RULE 0.0:6 expression: (gb=gb+1) = 4
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - OUT 0.0 One-shot timer ‘Tap Counter’: 250 ms delay
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271487 - MIDI IN [iRig Blueboard]: B0 00 00
271487 - IN 0.0 Control Change on ch. 1 with any CC# set “ga” to CC#=0 with any value=0
271487 - RULE 0.0:2 condition satisfied: if ga<20 then exit rules, skip Outgoing Action
271737 - IN 0.1 On timer ‘Tap Counter’
271737 - RULE 0.1:1 assignment: (pp=ga) = 0
271737 - RULE 0.1:2 assignment: (qq=gb) = 4
271737 - RULE 0.1:3 assignment: (gb=0) = 0
271737 - 0.1:5 Log cc=0, tap count=4
271737 - RULE 0.1:7 Perform ‘Tap’, pp,qq
271737 - IN 0.2 Perform tap(0,4)
271737 - 0.2:1 Log Perform tap 0, 4
271737 - RULE 0.2:3 Perform ‘focus’
271737 - RULE 0.2:5 assignment: (rr=20) = 20
271737 - RULE 0.2:10 condition satisfied: if qq>2 then Goto ‘next’
271737 - IN 0.3 Perform Focus()
271747 - OUT 0.3 Activating app: ‘Cubase13.exe’

Sorry, you may try this project.

This one will warn you if you don’t have Cubase open. If it is not open, then there will be come cycling of the commands. Translator 0.2 will warn you of this in the log window.

You may need to adjust your focus project executable in translator 0.8, 0.9 and 0.10

I also added a global variable “zz” to determine if you actually want to send keystrokes. If zz=1, then keystrokes will be suppressed. It is set it the rules of translator 0.2

I used the global variable “gc” to determine if Cubase if focused (1) or not (0). That way I can only switch focus if it is not already focused (rules of translator 0.8).

I now reset the counter (gb) to zero if the incoming CC=0 (rules of translator 0.5).

I think later I will work on a version that disables outgoing keystrokes if the application is not focused but I need to add another layer of perform to ensure I give the application time to focus before checking the status. Right now, I just assume it will focus within 20ms.

4pedal_rec_play–gestures-sjc-2025-08-25.bmtp (4.7 KB)

I added some initialization procedures in preset 0 to handle additional housekeeping when the project starts.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Sadly it doenst work. But thank you for you effort.

When i press D from iRig Blueboard it shows me this

112413 - MIDI IN [iRig Blueboard]: B0 17 7F
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=127
112413 - RULE 0.5:3 assignment: (ga=pp) = 23
112413 - RULE 0.5:8 expression: (gb=gb+1) = 1
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112413 - MIDI IN [iRig Blueboard]: B0 00 00
112413 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112413 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112413 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112413 - RULE 0.5:3 assignment: (ga=pp) = 0
112413 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 17 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=0
112514 - RULE 0.5:3 assignment: (ga=pp) = 23
112514 - RULE 0.5:8 expression: (gb=gb+1) = 1
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112514 - MIDI IN [iRig Blueboard]: B0 00 00
112514 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
112514 - RULE 0.5:2 condition satisfied: if pp==0 then gb=0
112514 - RULE 0.5:2 assignment: (if pp==0 then gb=0) = 0
112514 - RULE 0.5:3 assignment: (ga=pp) = 0
112514 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
112764 - IN 0.6 On timer ‘TapCounter’
112764 - RULE 0.6:1 assignment: (pp=ga) = 0
112764 - RULE 0.6:2 assignment: (qq=gb) = 0
112764 - RULE 0.6:3 assignment: (gb=0) = 0
112764 - 0.6:5 Log TapCounter cc=0, tap count=0
112764 - RULE 0.6:7 Perform ‘Tap’, pp,qq
112764 - IN 0.7 Perform tap(0,0)
112764 - 0.7:1 Log Perform tap 0, 0
112764 - RULE 0.7:3 condition satisfied: if gc==0 then Perform ‘focus’
112764 - RULE 0.7:3 Perform ‘focus’
112764 - RULE 0.7:5 assignment: (rr=20) = 20
112764 - RULE 0.7:8 condition satisfied: if qq<2 then exit rules, skip Outgoing Action
112764 - IN 0.8 Perform Focus()
112814 - OUT 0.8 Activating app: ‘Cubase13.exe’
112814 - IN 0.9 On app activated: ‘Cubase13.exe’
112814 - RULE 0.9:1 assignment: (gc=1) = 1
112814 - 0.9:2 Log Cubase is Focused gc=1
114495 - IN 0.10 On app deactivated: ‘Cubase13.exe’
114495 - RULE 0.10:1 assignment: (gc=0) = 0
114495 - 0.10:2 Log Cubase is Not Focused gc=0

OK, try this.

In this case we give Cubase 250ms to focus and the keystroke will not be sent until it is focused. You will get an error if not focused.

Also if you get a CC 0 between to CC 14-17 then it will still ignore the CC0. I think the main problem was with CC0 messing up the count. It may have also been not giving enough time for cubase to focus.

Here is my log for pressing D with some CC0 interjected.

4317805 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4317805 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4317805 - RULE 0.5:3 assignment: (ga=pp) = 0
4317805 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4317806 - RULE 0.5:3 assignment: (ga=pp) = 0
4317806 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4317806 - RULE 0.5:3 assignment: (ga=pp) = 0
4317806 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4317806 - RULE 0.5:3 assignment: (ga=pp) = 0
4317806 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 17 7F
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=23 with any value=127
4317806 - RULE 0.5:3 assignment: (ga=pp) = 23
4317806 - RULE 0.5:8 expression: (gb=gb+1) = 1
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4317806 - RULE 0.5:3 assignment: (ga=pp) = 0
4317806 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4317806 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 17 00
4317806 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=23 with any value=0
4317806 - RULE 0.5:3 assignment: (ga=pp) = 23
4317806 - RULE 0.5:8 expression: (gb=gb+1) = 2
4317806 - OUT  0.5 One-shot timer "TapCounter": 250 ms delay
4317806 - OUT  0.5 One-shot timer "TapCounter": 250 ms delay
4318056 - IN   0.6 Timer TapCounter
4318056 - RULE 0.6:1 assignment: (pp=ga) = 23
4318056 - RULE 0.6:2 assignment: (qq=gb) = 2
4318056 - RULE 0.6:3 assignment: (gb=0) = 0
4318056 - 0.6:5 Log  TapCounter cc=23, tap count=2
4318056 - RULE 0.6:7 Perform "Tap", pp,qq
4318056 - IN   0.7 Perform tap(23,2)
4318056 - 0.7:1 Log Perform tap 23, 2
4318056 - RULE 0.7:4 assignment: (rr=20) = 20
4318056 - RULE 0.7:9 Perform "focus",pp,qq,rr
4318056 - RULE 0.7 exit rules, skip Outgoing Action
4318056 - IN   0.8 Perform Focus(23,2,20)
4318056 - RULE 0.8:2 Perform "Focus-check",pp,qq,rr
4318056 - IN   0.9 Perform Focus-check(23,2,20)
4318056 - 0.9:1 Log Focuscheck being performed
4318083 - OUT  0.8 Activating app: "Cubase13.exe"
4318195 - IN   0.11 On app activated: "Cubase13.exe"
4318195 - RULE 0.11:1 assignment: (gc=1) = 1
4318195 - 0.11:2 Log Cubase is Focused gc=1
4318307 - OUT  0.9 Perform "Getfocus" with 3 parameters, delay:250 millisec
4318307 - IN   0.10 Perform Getfocus(23,2,20)
4318307 - RULE 0.10:1 assignment: (ss=gc) = 1
4318307 - 0.10:2 Log Getfocus returned 1
4318307 - RULE 0.10:16 condition satisfied: if pp==23 then Perform "Play-Pause",rr
4318307 - RULE 0.10:16 Perform "Play-Pause",rr
4318307 - RULE 0.10:17 assignment: (ga=0) = 0
4318307 - RULE 0.10 exit rules, skip Outgoing Action
4318307 - IN   1.3 Perform Play-Pause(20)
4318307 - 1.3:1 Log Play Pause, 20
4318330 - OUT  1.3 Keystrokes: Space, delay:pp millisec
4325494 - IN   0.12 On app deactivated: "Cubase13.exe"
4325494 - RULE 0.12:1 assignment: (gc=0) = 0
4325494 - 0.12:2 Log Cubase is Not Focused gc=0
4325586 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4325586 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4325586 - RULE 0.5:3 assignment: (ga=pp) = 0
4325586 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4325586 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4325586 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4325586 - RULE 0.5:3 assignment: (ga=pp) = 0
4325586 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4325586 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4325586 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4325586 - RULE 0.5:3 assignment: (ga=pp) = 0
4325586 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4325586 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4325586 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4325586 - RULE 0.5:3 assignment: (ga=pp) = 0
4325586 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4325587 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 17 7F
4325587 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=23 with any value=127
4325587 - RULE 0.5:3 assignment: (ga=pp) = 23
4325587 - RULE 0.5:8 expression: (gb=gb+1) = 1
4325587 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 00 00
4325587 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=0 with any value=0
4325587 - RULE 0.5:3 assignment: (ga=pp) = 0
4325587 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
4325587 - OUT  0.5 One-shot timer "TapCounter": 250 ms delay
4325587 - MIDI IN [Bome MIDI Translator 1 Virtual In]: B0 17 00
4325587 - IN   0.5 Control Change on ch. 1 with any CC# set 'pp' to CC#=23 with any value=0
4325587 - RULE 0.5:3 assignment: (ga=pp) = 23
4325587 - RULE 0.5:8 expression: (gb=gb+1) = 2
4325587 - OUT  0.5 One-shot timer "TapCounter": 250 ms delay
4325837 - IN   0.6 Timer TapCounter
4325837 - RULE 0.6:1 assignment: (pp=ga) = 23
4325837 - RULE 0.6:2 assignment: (qq=gb) = 2
4325837 - RULE 0.6:3 assignment: (gb=0) = 0
4325837 - 0.6:5 Log  TapCounter cc=23, tap count=2
4325837 - RULE 0.6:7 Perform "Tap", pp,qq
4325837 - IN   0.7 Perform tap(23,2)
4325837 - 0.7:1 Log Perform tap 23, 2
4325837 - RULE 0.7:4 assignment: (rr=20) = 20
4325837 - RULE 0.7:9 Perform "focus",pp,qq,rr
4325837 - RULE 0.7 exit rules, skip Outgoing Action
4325837 - IN   0.8 Perform Focus(23,2,20)
4325837 - RULE 0.8:2 Perform "Focus-check",pp,qq,rr
4325837 - IN   0.9 Perform Focus-check(23,2,20)
4325837 - 0.9:1 Log Focuscheck being performed
4325903 - OUT  0.8 Activating app: "Cubase13.exe"
4326076 - IN   0.11 On app activated: "Cubase13.exe"
4326076 - RULE 0.11:1 assignment: (gc=1) = 1
4326076 - 0.11:2 Log Cubase is Focused gc=1
4326088 - OUT  0.9 Perform "Getfocus" with 3 parameters, delay:250 millisec
4326088 - IN   0.10 Perform Getfocus(23,2,20)
4326088 - RULE 0.10:1 assignment: (ss=gc) = 1
4326088 - 0.10:2 Log Getfocus returned 1
4326088 - RULE 0.10:16 condition satisfied: if pp==23 then Perform "Play-Pause",rr
4326088 - RULE 0.10:16 Perform "Play-Pause",rr
4326088 - RULE 0.10:17 assignment: (ga=0) = 0
4326088 - RULE 0.10 exit rules, skip Outgoing Action
4326088 - IN   1.3 Perform Play-Pause(20)
4326088 - 1.3:1 Log Play Pause, 20
4326123 - OUT  1.3 Keystrokes: Space, delay:pp millisec
4328720 - IN   0.12 On app deactivated: "Cubase13.exe"
4328720 - RULE 0.12:1 assignment: (gc=0) = 0
4328720 - 0.12:2 Log Cubase is Not Focused gc=0

This new version incorporates the additional checks to make sure cubase is really focused before sending the keystroke instead of assuming we are giving enough delay.

4pedal_rec_play–gestures-sjc-2025-08-25a.bmtp (6.3 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

I tried the new version it seems it doenst send the keystrokes.

For taping button A from the iRig BlueBoard i get the log:

151585 - IN 0.11 On app activated: ‘Cubase13.exe’
151585 - RULE 0.11:1 assignment: (gc=1) = 1
151585 - 0.11:2 Log Cubase is Focused gc=1
154293 - MIDI IN [iRig Blueboard]: B0 14 7F
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=20 with any value=127
154293 - RULE 0.5:3 assignment: (ga=pp) = 20
154293 - RULE 0.5:8 expression: (gb=gb+1) = 1
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154293 - MIDI IN [iRig Blueboard]: B0 00 00
154293 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154293 - RULE 0.5:3 assignment: (ga=pp) = 0
154293 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 14 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=20 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 20
154392 - RULE 0.5:8 expression: (gb=gb+1) = 2
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154392 - MIDI IN [iRig Blueboard]: B0 00 00
154392 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
154392 - RULE 0.5:3 assignment: (ga=pp) = 0
154392 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
154642 - IN 0.6 On timer ‘TapCounter’
154642 - RULE 0.6:1 assignment: (pp=ga) = 0
154642 - RULE 0.6:2 assignment: (qq=gb) = 2
154642 - RULE 0.6:3 assignment: (gb=0) = 0
154642 - 0.6:5 Log TapCounter cc=0, tap count=2
154642 - RULE 0.6:7 Perform ‘Tap’, pp,qq
154642 - IN 0.7 Perform tap(0,2)
154642 - 0.7:1 Log Perform tap 0, 2
154642 - RULE 0.7:4 assignment: (rr=20) = 20
154642 - RULE 0.7:9 Perform ‘focus’,pp,qq,rr
154642 - RULE 0.7 exit rules, skip Outgoing Action
154642 - IN 0.8 Perform Focus(0,2,20)
154642 - RULE 0.8:2 Perform ‘Focus-check’,pp,qq,rr
154642 - RULE 0.8:3 condition satisfied: if gc==1 then exit rules, skip Outgoing Action
154642 - IN 0.9 Perform Focus-check(0,2,20)
154642 - 0.9:1 Log Focuscheck being performed
154892 - OUT 0.9 Perform ‘Getfocus’ with 3 parameters, delay:250 millisec
154892 - IN 0.10 Perform Getfocus(0,2,20)
154892 - RULE 0.10:1 assignment: (ss=gc) = 1
154892 - 0.10:2 Log Getfocus returned 1
154892 - RULE 0.10:17 assignment: (ga=0) = 0
154892 - RULE 0.10 exit rules, skip Outgoing Action
159133 - IN 0.12 On app deactivated: ‘Cubase13.exe’
159133 - RULE 0.12:1 assignment: (gc=0) = 0
159133 - 0.12:2 Log Cubase is Not Focused gc=0

Keystoke Numpad 1 is not pressed

For Button B of the Blueboard i get this:

241753 - IN 0.11 On app activated: ‘Cubase13.exe’
241753 - RULE 0.11:1 assignment: (gc=1) = 1
241753 - 0.11:2 Log Cubase is Focused gc=1
245661 - MIDI IN [iRig Blueboard]: B0 15 7F
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=21 with any value=127
245661 - RULE 0.5:3 assignment: (ga=pp) = 21
245661 - RULE 0.5:8 expression: (gb=gb+1) = 1
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - MIDI IN [iRig Blueboard]: B0 00 00
245661 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245661 - RULE 0.5:3 assignment: (ga=pp) = 0
245661 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245661 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
245758 - MIDI IN [iRig Blueboard]: B0 15 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=21 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 21
245758 - RULE 0.5:8 expression: (gb=gb+1) = 2
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
245758 - MIDI IN [iRig Blueboard]: B0 00 00
245758 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
245758 - RULE 0.5:3 assignment: (ga=pp) = 0
245758 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
246008 - IN 0.6 On timer ‘TapCounter’
246008 - RULE 0.6:1 assignment: (pp=ga) = 0
246008 - RULE 0.6:2 assignment: (qq=gb) = 2
246008 - RULE 0.6:3 assignment: (gb=0) = 0
246008 - 0.6:5 Log TapCounter cc=0, tap count=2
246008 - RULE 0.6:7 Perform ‘Tap’, pp,qq
246008 - IN 0.7 Perform tap(0,2)
246008 - 0.7:1 Log Perform tap 0, 2
246008 - RULE 0.7:4 assignment: (rr=20) = 20
246008 - RULE 0.7:9 Perform ‘focus’,pp,qq,rr
246008 - RULE 0.7 exit rules, skip Outgoing Action
246008 - IN 0.8 Perform Focus(0,2,20)
246008 - RULE 0.8:2 Perform ‘Focus-check’,pp,qq,rr
246008 - RULE 0.8:3 condition satisfied: if gc==1 then exit rules, skip Outgoing Action
246008 - IN 0.9 Perform Focus-check(0,2,20)
246008 - 0.9:1 Log Focuscheck being performed
246258 - OUT 0.9 Perform ‘Getfocus’ with 3 parameters, delay:250 millisec
246258 - IN 0.10 Perform Getfocus(0,2,20)
246258 - RULE 0.10:1 assignment: (ss=gc) = 1
246258 - 0.10:2 Log Getfocus returned 1
246258 - RULE 0.10:17 assignment: (ga=0) = 0
246258 - RULE 0.10 exit rules, skip Outgoing Action
251497 - IN 0.12 On app deactivated: ‘Cubase13.exe’
251497 - RULE 0.12:1 assignment: (gc=0) = 0
251497 - 0.12:2 Log Cubase is Not Focused gc=0

No Keystoke Numpad 2

For Button C of the Blueboard i get this :slight_smile:

295998 - MIDI IN [iRig Blueboard]: B0 16 7F
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=22 with any value=127
295998 - RULE 0.5:3 assignment: (ga=pp) = 22
295998 - RULE 0.5:8 expression: (gb=gb+1) = 1
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
295998 - MIDI IN [iRig Blueboard]: B0 00 00
295998 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
295998 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
295998 - RULE 0.5:3 assignment: (ga=pp) = 0
295998 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 16 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=22 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 22
296202 - RULE 0.5:8 expression: (gb=gb+1) = 2
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296202 - MIDI IN [iRig Blueboard]: B0 00 00
296202 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
296202 - RULE 0.5:3 assignment: (ga=pp) = 0
296202 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
296452 - IN 0.6 On timer ‘TapCounter’
296452 - RULE 0.6:1 assignment: (pp=ga) = 0
296452 - RULE 0.6:2 assignment: (qq=gb) = 2
296452 - RULE 0.6:3 assignment: (gb=0) = 0
296452 - 0.6:5 Log TapCounter cc=0, tap count=2
296452 - RULE 0.6:7 Perform ‘Tap’, pp,qq
296452 - IN 0.7 Perform tap(0,2)
296452 - 0.7:1 Log Perform tap 0, 2
296452 - RULE 0.7:4 assignment: (rr=20) = 20
296452 - RULE 0.7:9 Perform ‘focus’,pp,qq,rr
296452 - RULE 0.7 exit rules, skip Outgoing Action
296452 - IN 0.8 Perform Focus(0,2,20)
296452 - RULE 0.8:2 Perform ‘Focus-check’,pp,qq,rr
296452 - IN 0.9 Perform Focus-check(0,2,20)
296452 - 0.9:1 Log Focuscheck being performed
296462 - OUT 0.8 Activating app: ‘Cubase13.exe’
296539 - IN 0.11 On app activated: ‘Cubase13.exe’
296539 - RULE 0.11:1 assignment: (gc=1) = 1
296539 - 0.11:2 Log Cubase is Focused gc=1
296702 - OUT 0.9 Perform ‘Getfocus’ with 3 parameters, delay:250 millisec
296702 - IN 0.10 Perform Getfocus(0,2,20)
296702 - RULE 0.10:1 assignment: (ss=gc) = 1
296702 - 0.10:2 Log Getfocus returned 1
296702 - RULE 0.10:17 assignment: (ga=0) = 0
296702 - RULE 0.10 exit rules, skip Outgoing Action
298014 - IN 0.12 On app deactivated: ‘Cubase13.exe’
298014 - RULE 0.12:1 assignment: (gc=0) = 0
298014 - 0.12:2 Log Cubase is Not Focused gc=0

For pressing Button D:

332337 - MIDI IN [iRig Blueboard]: B0 17 7F
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=127
332337 - RULE 0.5:3 assignment: (ga=pp) = 23
332337 - RULE 0.5:8 expression: (gb=gb+1) = 1
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332337 - MIDI IN [iRig Blueboard]: B0 00 00
332337 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332337 - RULE 0.5:3 assignment: (ga=pp) = 0
332337 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 17 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 23
332441 - RULE 0.5:8 expression: (gb=gb+1) = 2
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332441 - MIDI IN [iRig Blueboard]: B0 00 00
332441 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
332441 - RULE 0.5:3 assignment: (ga=pp) = 0
332441 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
332691 - IN 0.6 On timer ‘TapCounter’
332691 - RULE 0.6:1 assignment: (pp=ga) = 0
332691 - RULE 0.6:2 assignment: (qq=gb) = 2
332691 - RULE 0.6:3 assignment: (gb=0) = 0
332691 - 0.6:5 Log TapCounter cc=0, tap count=2
332691 - RULE 0.6:7 Perform ‘Tap’, pp,qq
332691 - IN 0.7 Perform tap(0,2)
332691 - 0.7:1 Log Perform tap 0, 2
332691 - RULE 0.7:4 assignment: (rr=20) = 20
332691 - RULE 0.7:9 Perform ‘focus’,pp,qq,rr
332691 - RULE 0.7 exit rules, skip Outgoing Action
332691 - IN 0.8 Perform Focus(0,2,20)
332691 - RULE 0.8:2 Perform ‘Focus-check’,pp,qq,rr
332691 - IN 0.9 Perform Focus-check(0,2,20)
332691 - 0.9:1 Log Focuscheck being performed
332699 - OUT 0.8 Activating app: ‘Cubase13.exe’
332836 - IN 0.11 On app activated: ‘Cubase13.exe’
332836 - RULE 0.11:1 assignment: (gc=1) = 1
332836 - 0.11:2 Log Cubase is Focused gc=1
332941 - OUT 0.9 Perform ‘Getfocus’ with 3 parameters, delay:250 millisec
332941 - IN 0.10 Perform Getfocus(0,2,20)
332941 - RULE 0.10:1 assignment: (ss=gc) = 1
332941 - 0.10:2 Log Getfocus returned 1
332941 - RULE 0.10:17 assignment: (ga=0) = 0
332941 - RULE 0.10 exit rules, skip Outgoing Action
334702 - IN 0.12 On app deactivated: ‘Cubase13.exe’
334702 - RULE 0.12:1 assignment: (gc=0) = 0
334702 - 0.12:2 Log Cubase is Not Focused gc=0

Double tappig D from the Blueboard i got this:

555744 - IN 0.11 On app activated: ‘Cubase13.exe’
555744 - RULE 0.11:1 assignment: (gc=1) = 1
555744 - 0.11:2 Log Cubase is Focused gc=1
558016 - MIDI IN [iRig Blueboard]: B0 17 7F
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=127
558016 - RULE 0.5:3 assignment: (ga=pp) = 23
558016 - RULE 0.5:8 expression: (gb=gb+1) = 1
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558016 - MIDI IN [iRig Blueboard]: B0 00 00
558016 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558016 - RULE 0.5:3 assignment: (ga=pp) = 0
558016 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 17 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=23 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 23
558116 - RULE 0.5:8 expression: (gb=gb+1) = 2
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - OUT 0.5 One-shot timer ‘TapCounter’: 250 ms delay
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558116 - MIDI IN [iRig Blueboard]: B0 00 00
558116 - IN 0.5 Control Change on ch. 1 with any CC# set “pp” to CC#=0 with any value=0
558116 - RULE 0.5:3 assignment: (ga=pp) = 0
558116 - RULE 0.5:4 condition satisfied: if pp<20 then exit rules, skip Outgoing Action
558366 - IN 0.6 On timer ‘TapCounter’
558366 - RULE 0.6:1 assignment: (pp=ga) = 0
558366 - RULE 0.6:2 assignment: (qq=gb) = 2
558366 - RULE 0.6:3 assignment: (gb=0) = 0
558366 - 0.6:5 Log TapCounter cc=0, tap count=2
558366 - RULE 0.6:7 Perform ‘Tap’, pp,qq
558366 - IN 0.7 Perform tap(0,2)
558366 - 0.7:1 Log Perform tap 0, 2
558366 - RULE 0.7:4 assignment: (rr=20) = 20
558366 - RULE 0.7:9 Perform ‘focus’,pp,qq,rr
558366 - RULE 0.7 exit rules, skip Outgoing Action
558366 - IN 0.8 Perform Focus(0,2,20)
558366 - RULE 0.8:2 Perform ‘Focus-check’,pp,qq,rr
558366 - RULE 0.8:3 condition satisfied: if gc==1 then exit rules, skip Outgoing Action
558366 - IN 0.9 Perform Focus-check(0,2,20)
558366 - 0.9:1 Log Focuscheck being performed
558616 - OUT 0.9 Perform ‘Getfocus’ with 3 parameters, delay:250 millisec
558616 - IN 0.10 Perform Getfocus(0,2,20)
558616 - RULE 0.10:1 assignment: (ss=gc) = 1
558616 - 0.10:2 Log Getfocus returned 1
558616 - RULE 0.10:17 assignment: (ga=0) = 0
558616 - RULE 0.10 exit rules, skip Outgoing Action
562410 - IN 0.12 On app deactivated: ‘Cubase13.exe’
562410 - RULE 0.12:1 assignment: (gc=0) = 0
562410 - 0.12:2 Log Cubase is Not Focused gc=0

Try this,

This time only select "=“Incoming” , “Outgoing” and “Timestamped” in the system log

4pedal_rec_play–gestures-sjc-2025-08-25b.bmtp (6.4 KB)

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Its working now. :grinning_face:

One last question.

is it possible to map the C Button of the Blueboard to triggers Keystroke" c " and by double tapping the C Button of the Blueboard triggers keystroke ‘#’

Now I am trying to figure it out how you did it. it seems to be complicated and confusing.

Your the Best. Thank you very much :clap:

Yes, first save your working file so if you mess up, you can get back to where you were.

In the rules of translator 0.10 you need to add a rule for double tap on CC 22 here.
Give the name of the Perform meaningful to your choosing. I have ‘C’

Excerpt

// Look for double tap
if qq<2 then exit rules, skip Outgoing Action
// count of 2 for touble tap
if qq>2 then Goto "next"

if pp==20 then Perform "Start",rr
// add rule below
if pp==22 then Perform "C",rr
if pp==23 then Perform "Play-Pause",rr
ga=0
exit rules, skip Outgoing Action

Then enable translators 1.2 and change the incoming perform to match the name you gave it above (C) . Change the keystroke output to your desired keystroke.

Back to rules of 0.10 Add a rule for double tap

Excerpt

Label "next"
// count of 4 for double tap
if qq!=4 then exit rules, skip Outgoing Action
// add the rule below
if pp==22 then Perform "Hash", rr
if pp==23 then Perform "Record",rr
ga=0

Duplicate translator 1.2 and then edit the new translator so that the incoming perform trigger is ‘Hash’ and the outgoing action is keystroke “#”.

Steve Caldwell
Bome Customer Care


Also available for paid consulting services: bome@sniz.biz

Iam using the Keystroke ‘c’ for Metronome
and keystroke # for pre-count.

I just followed your Instruction. And it is working now.
Best wishes for you.

This is awesome.

Can’t thank you enough.

1 Like