Jump to content

mapping buttons to change MIDI channel


cimo
 Share

Recommended Posts

hi all

i want to map 7 buttons of a mb64e to change the channel of the MIDI data output, as to say button 1 = channel 1, button 2 = channel 2, etc.

but i don t use menu buttons or lcd on my prject so i can t program the banks/groups

i have

12 encoders

24 buttons

16 pots

any idea?

thanks

simone

Link to comment
Share on other sites

Hi Simone,

you could create Meta Events in mb64e_meta.inc, which set the global MIDI channel, e.g.:

MB64E_META_Handler_00

  ;; set global channel to the second byte of a F0 xx meta event

  movff MB64E_GLOBAL_CHANNEL, MIDI_EVNT1

  return

Meta Event F0 01 assigned to a button will set the channel to #1

Meta Event F0 02 assigned to a button will set the channel to #2

Meta Event F0 03 assigned to a button will set the channel to #3

etc...

F0 00 will disable the global channel feature (MIDI events are sent via the programmed channel)

Best Regards, Thorsten.

Link to comment
Share on other sites

what about setting buttons to switch among different banks? can i program banks without lcd and menu buttons?

btw i am also on the construction of a controller specifically built for ableton i will update picture and schematics soon (what soon means ...yeah.. you know that)

regards simone

Link to comment
Share on other sites

  • 1 month later...

hi all

ok so far i ve added that meta event 00 to mb64e_meta.inc as described

i have tried

1 to create a .ini file with a few buttons assigned to F0 01 (02,03, etc) 7F (is this correct? i tried also 00) on/off (is this correct?)

2 to use vmidibox to change the buttons as Meta Event with Meta ID = 1, byte 0 = 240, Nr. = 1 (2,3 etc), i tried all the different modes

apparently the buttons send a syx so they have been configured but there is no channel change

where is the bug??

thanks

simone

Link to comment
Share on other sites

ok

i ve made my way throught my new osx system and now i have all the needed tools to change/upload the application

anyway i can t get my problem solved

i repeat the steps i took:

1 upload a customised mb64e application

2 swap the default  MB64E_META_Handler_00 with the one you (Thorsten) posted

  i didn t change anything else

3 re assemble main.asm and upload the application again

4 download the mk_syx, modify the midibox64e.ini for my application

5 convert to a syx file

6 upload the new syx

results

in midi monitor i can see that now those buttons are sending a syx and not a note

but no midi channel change!! i assume that somehow the meta handler is not active

questions

is it possible that when i upload the new midibox64e.syx file i am overwriting the  meta handler?

how will the midibox "listen" to the buttons sending the F0 00 (01 02 etc) event? is it an internal process?

thanks

best regards

simone

Link to comment
Share on other sites

Whenever you are pressing a button which is assigned to a Fx event (Exception: FF), or when you are turning a pot which is assigned to a Fx event, the application will branch to the meta handler in mb64e_meta.inc - so, if you do see other MIDI events as expected, the problem must be inside the meta handler, and nowhere else.

No, a midibox64e.syx file only overwrites the configuration data, it doesn't overwrite any code

Best Regards, Thorsten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...