FantomXR Posted January 11, 2020 Report Share Posted January 11, 2020 Hey people, my DAW sends a bunch of sysex strings at once to my midibox. The content of the sysex strings I'd like to display on my OLEDs. In my DAW there is a mixer. The DAW sends the values of the faders via sysex. I have one OLED that should show those value. So if I select channel 1 on my midibox it shows the first value, channel 2 the second. This is not working at the moment because the DAW sends those values of all channels at once and if I switch on my midibox from one channel to another I need to again dump the sysex strings to the midibox to receive the correct value. So I'd need to somehow save those received values inside the midibox and recall them. Any idea? Thanks, Chris Quote Link to comment Share on other sites More sharing options...
TK. Posted January 11, 2020 Report Share Posted January 11, 2020 Hi Chris, you could just define multiple EVENT_RECEIVERs, listening to incoming SysEx, matching on certain bytes which indicate which channel is addressed, and then store the value into ^val E.g.: EVENT_RECEIVER id= 1 type=SysEx stream="0xf0 0x11 0x22 0x33 0x00 ^val" EVENT_RECEIVER id= 2 type=SysEx stream="0xf0 0x11 0x22 0x33 0x01 ^val" EVENT_RECEIVER id= 3 type=SysEx stream="0xf0 0x11 0x22 0x33 0x02 ^val" EVENT_RECEIVER id= 4 type=SysEx stream="0xf0 0x11 0x22 0x33 0x03 ^val" In a NGR script you can access the received values with (id)RECEIVER:1 ... (id)RECEIVER:4 Which means for your NGR script: if you switch to another channel, just take the corresponding value from the receiver and display it. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
FantomXR Posted January 11, 2020 Author Report Share Posted January 11, 2020 (edited) Thanks for the reply. I think I've tested this already but for some reason it was not working. But I'll give this a new try early next week and report back! Edit: I remember. The reason why it wasn't working was I don't receive "values" from the DAW but ASCII / text strings instead. And it seems such strings can't be stored... Edited January 11, 2020 by FantomXR Quote Link to comment Share on other sites More sharing options...
ssp Posted January 11, 2020 Report Share Posted January 11, 2020 (edited) i use presonus studio one, the track names are spat out as asci converted to hex, its in my one thread. I have been meaning to test the code i have written but forgot about it as I was soucing parts and building. I will give it a try tonight see if i can get it to work on mine. S1 output per channel F0 00 01 06 16 12 00 00 00 73 74 72 69 6E 67 73 F7 this hex is an example ascii for the track name "strings": 73 74 72 69 6E 67 73 this changes as you either tab over channels or bank swap as you would expect for more than 8 channels. thread start from here: http://midibox.org/forums/topic/21235-understanding-the-ngc-code/?page=2 there was also this comment that had been previously made that i needed to find to link into the thread for throsten to look at http://midibox.org/forums/topic/17498-midibox-ng-release-feedback/?do=findComment&comment=185392 Edited January 11, 2020 by ssp Quote Link to comment Share on other sites More sharing options...
TK. Posted January 11, 2020 Report Share Posted January 11, 2020 I think that this could be somehow solved by using ^dump in combination with sysex_pos for individual dummy events which collect the characters - the characters then have to be print out conditionally, e.g. based on another dummy event which stores the selected channel. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
FantomXR Posted January 11, 2020 Author Report Share Posted January 11, 2020 Hm, do you have a quick example how this could work? Quote Link to comment Share on other sites More sharing options...
TK. Posted January 12, 2020 Report Share Posted January 12, 2020 Here the example: NGC: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/runscr6.ngc NGR: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/runscr6.ngr Since in the NGR script the new "range" feature is used, you've to try it with the latest MBNG version Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
FantomXR Posted January 12, 2020 Author Report Share Posted January 12, 2020 Alright! Looks good. I need to test it in my environment. I'll report back. Thank you! Quote Link to comment Share on other sites More sharing options...
ssp Posted January 12, 2020 Report Share Posted January 12, 2020 4 hours ago, TK. said: Here the example: NGC: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/runscr6.ngc NGR: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/runscr6.ngr Since in the NGR script the new "range" feature is used, you've to try it with the latest MBNG version Best Regards, Thorsten. Puts hand up... quite freely admits that I dont understand how to do this. Sorry really not smart enough. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.