Nikolche
(Nikola)
October 16, 2024, 9:08pm
1
Hi
I want to Convert Incomming SYSEX to note and map to Widget in Gig Performer Host.
They are 12 Note (On/Off) C to B from my External Gear which are sended as SYSEX to BMT and as Outgoing Notes C to B.
Note Off (is always the same) SYSEX:
F0 42 00 78 06 08 00 00 00 00 00 0E 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
C is: F0 42 00 78 06 08 00 00 00 00 00 0E 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
C# is: F0 42 00 78 06 08 00 00 00 00 00 0E 40 00 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
D is: F0 42 00 78 06 08 00 00 00 00 00 0E 40 00 40 00 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
and the last B is: F0 42 00 78 06 08 00 00 00 00 00 0E 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 20 00 40 00 F7
Each Note on Eternal Gear (12 Notes C-B) are maped to 12 Widgets in Gig Performer
but if are activated 2 or 3 Notes the Outgoing SYSEX message is diferent for Example:
C & C# = F0 42 00 78 06 08 00 00 00 00 00 0E 20 00 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
C & D = F0 42 00 78 06 08 00 00 00 00 00 0E 20 00 40 00 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
C & D# = F0 42 00 78 06 08 00 00 00 00 00 0E 20 00 40 00 40 00 20 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 40 00 F7
20 is Note ON
40 is Note OFF
I need a Rulles in Translators to can mapp Sending Midi Notes on Widgets in Gig Performer and they cab be combinations:
C & F
D & G & A
G
etc.
Hier my bmpt File
And hier my Gig Performer File
SteveC
(Steve)
October 16, 2024, 10:28pm
2
Something like this should work.
We set up a single SysEx incoming pattern and assign global variables to each of the note positions. Then in rules, we call perform outgoing actions where the parameters are as follows
1st - Outgoing MIDI CH 0-15
2nd - Note Number (without octave shift)
3rd - Outgoing value set by local variable qq or rr
4th - Octave Shift
That way you can change the outgoing MIDI channel and outgoing octave when you call the Perform ‘Note’.
The second translator (the perform action) takes the incoming parameters and turns them in to outgoing notes.
This is what you get with C and D pressed with an offset of 12.
1: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0C 7F
2: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0D 00
3: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0E 7F
4: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0F 00
5: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 10 00
6: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 11 00
7: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 12 00
8: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 13 00
9: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 14 00
10: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 15 00
11: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 16 00
12: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 17 00
I disabled your original preset.
I use global variables g0-g9, ga and gb in this project
Scale-sjc.bmtp (8.5 KB)
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
SteveC
(Steve)
October 17, 2024, 1:18pm
3
Also, note, that manipulating SysEx messages within Gig Performer itself is possible with gpscript. You could reach out to their community or if you want me to help there, I’ll be happy to provide paid support for that.
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
Nikolche
(Nikola)
October 17, 2024, 4:42pm
4
Thank you very much Steve.
Yes with scripting in GPmis a lot’s possible. Im Nikosound there at GP Comunity.
m
Maybe with GP is better solution for this SYSEX to midi note case.
Thank to you in BMT its working, no stuck notes hier but some crackling is happening at Rack changing mapped with msb, lsb, pc.
Maybe becouse there are a lot of midi data in this case, on patch switch.
I will try to post also on GP Comunity.
Best Regards
Nikosound
Nikolche
(Nikola)
October 17, 2024, 4:51pm
5
How much will be cost for payed support for this
GP script f.e. ?
With GP to using, without BMT?
SteveC
(Steve)
October 17, 2024, 9:12pm
6
Send me a private message or email and I will respond with my rates.
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
SteveC
(Steve)
October 18, 2024, 3:14pm
7
@Nikolche
I posted a script on the Gig Performer Forum for how it can be done in gpscript.
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
Nikolche
(Nikola)
October 18, 2024, 6:44pm
8
Hi Steve
I loaded your GP Script and renamed Midi In and Midi Out like in your Script
there are no Midi Notes On/Off
SteveC
(Steve)
October 18, 2024, 6:56pm
9
Worked for me. Your device names cannot have spaces. Maybe that is it. Also your MIDI Blocks need to be given a script name and the MIDI In block needs to be enabled for SysEX.
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
SteveC
(Steve)
October 18, 2024, 7:25pm
11
Whoops looks like it is sending stuff twice. I’ll check into it.
NVM - I had loopMIDI Port 1 input enabled in GP, so I was seeing both outgoing and incoming messages.
Also, it looks like it is never sending B.
Needed to fix this.
While plen>=0 Do
Nikolche
(Nikola)
October 18, 2024, 8:11pm
12
Note Off are mapped to Widgets but Note On are missing now
And yes is sending stuff twice.
SteveC
(Steve)
October 18, 2024, 8:54pm
13
Please take this discussion to the GP forum as it is no longer Bome related.
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
Nikolche
(Nikola)
October 20, 2024, 6:18pm
14
Hi Steve
SteveC:
We set up a single SysEx incoming pattern and assign global variables to each of the note positions. Then in rules, we call perform outgoing actions where the parameters are as follows
1st - Outgoing MIDI CH 0-15
2nd - Note Number (without octave shift)
3rd - Outgoing value set by local variable qq or rr
4th - Octave Shift
That way you can change the outgoing MIDI channel and outgoing octave when you call the Perform ‘Note’.
The second translator (the perform action) takes the incoming parameters and turns them in to outgoing notes.
This is what you get with C and D pressed with an offset of 12.
1: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0C 7F
2: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0D 00
3: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0E 7F
4: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 0F 00
5: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 10 00
6: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 11 00
7: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 12 00
8: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 13 00
9: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 14 00
10: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 15 00
11: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 16 00
12: MIDI OUT [Bome MIDI Translator 1 Virtual Out]: 90 17 00
I disabled your original preset.
I use global variables g0-g9, ga and gb in this project
Scale-sjc.bmtp (8.5 KB)
I have tryed your ,Scale Preset" for BMT and is working as it should in BMT Pro, but I need NoteOn/Note Off convert to CC, instead to Midi Note.
The Reason is that in other Host I can not mapp Notes to Hardware Controller but CC Messages are mappable to Hardware Controller and Synchronised with Host this way.
SteveC
(Steve)
October 20, 2024, 10:12pm
15
One rule change in translator
Change
oo=oo|144
to
oo=oo|176
I commented out the old rule.
Scale-sjca.bmtp (8.6 KB)
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz