One more patch switching / patch banks question


#1

i'm using patch switching via MIDI program change messages.

MIDI program change messages allow addressing 128 patches.

so, the question: is it possible to address more than 128 patches via MIDI in current Axoloti implementation?

on other MIDI-aware devices, patches are commonly organized in banks, up to 128 patches per bank. but i've hever heard anything about bank switching in conext of Axoloti...

thanks in advance.

EDIT: i can see that adding a kind of bank withching functionality to the controller/pgmchange object (i.e. teaching it to react also to CC0 / CC32 messages) can be done even by my crooked hands :jack_o_lantern: :skull_and_crossbones:
but is it the only way, and is it proper?


#2

It pretty common to change bank with a combo of cc 0/32.

Thats also how I do it from Pure Data to Blofeld. Micro Q, etc:


#3

yes, and that's according to MIDI specifications.

but the question is about implementing something like this in Axoloti for storing more than 128 patches on microSD and selecting them in standalone mode via MIDI.

current implementation of controller/pgmchange object does not handle any other type of messages than ProgramChange, and Program Change messages range is limited to 0–127 (and always was). that's why the banks of 128 patches and bank switching were invented in the mid 1980s.

what is unclear is how to implement some kind of bank switching in a standalone mode.


#4

Ahh yes, sorry, I might have misundestodd it.

I havent used program change on Axoloti so can't go into the specifics.

Hope you find your way :slight_smile:


#5

is an example of how to load patches, using patch/load

you can create your own that use patch/load i , where i = (cc 0 * 128) + pgm


#6

after several hours of digging these forums and thinking on search results, i've came to nearly the same conclusion, just needed someone experienced to say that it's a right way to go.

so, it will take some time to experiment, and then i'll share the result here.


#7

I know there are many MIDI standards implementing such a thing, but have you thought something that might be a little simpler, create a patch purely for selecting patches from, you will only need one cc to get to it, then you can access 128 patches from that patch, and if you have more then 128, create a second patch to access via a second cc which you can access a second lot of 128 patches. This is how I have mine setup, I actually don't have many patches at all, but this setup means that it can easily grow to accommodate it all.
:grin:


#8

yes, i thought about something like that.
but technically, the disctinction is negligible, because, according to MIDI specs, bank change message is anyway a CC with certain number.
(actually, two CCs — one for MSB & another for LSB, but can be done with just one of them, assuming another is always constant, because i doubt i'll ever have more than 128 banks, which are 16384 patches totally, on a single Axoloti, even for FM sounds :grinning: )

a start patch is needed anyway. my start patch does MIDI thru, so i'll just add patch selecting function to it.

EDIT:

actually, why not?
i can have two versions of every patch — with custom Launchpad Pro note layout embedded into the patch and without it. since LP Pro is my primary input device, and sometimes i want one Axoloti to do it all — MIDI & audio — it will be convenient.