tmick0 / alesisvsysex

Python tool for configuring Alesis V-Series MIDI controllers
MIT License
14 stars 7 forks source link

Program Change as option for buttons #5

Open mheidt opened 5 years ago

mheidt commented 5 years ago

Would you think, that it is possible to have a python script, that changes the channel for a partial set? In my usecase I would like to let the python host (zynthian.org) send SYSEX commands to the V25 so that the keys, wheels and knobs would listen to a new channel.

Is it performing fast enough while playing? I have the vision, that the buttons send a Program Change (AH...that is missing as option in your tool, btw) to the host (zynthian), that is triggering a python script which changes those midi channels. But I wouldn't do it if the script would take more than a second to perform.

abridgewater commented 5 years ago

As far as reconfiguring the keyboard under script control goes, for at least the V25 the windows utility save file format (and the format for my fork of alesisvsysex) is a "raw" sysex message containing the configuration as sent to the controller. The configuration needs to be sent to the "second" MIDI channel (it's probably marked as being for "Editor" in the USB descriptors, but this doesn't seem to be reflected anywhere else), and a test can probably be done via something as simple as "cat savefile.v25 > /dev/snd/midiC2D1" (these paths likely to vary). This is unlikely to work for a VI-series controller and will not work with the save files for the windows VMini editor.