I've been finding that I run out of sliders very quickly. There are two ways I can think of to solve the problem: 1) Create a second preset with channels 9-16. Which I've done, seems to work OK. Although I had to assign channel 2 to all the control change buttons for 9-16. 2) Use the "controllers only" (factory preset #1) and duplicate it up to 16 times with ascending channel numbers. And maybe tweak it a little to make sure the MMC buttons stay as MMC. I figure that certain apps that use the predefined midi control channel numbers (Rosegarden springs to mind) will prefer 1), whereas something like ardour which doesn't really care could work with 2). I don't know midi very well - is there something obvious that I've overlooked here? NRPNs? And in a setup like this where there are several presets to handle all the channels, what's a good way to handle the master channel - put it on the same position on every preset, or have a preset specifically for the master channel and monitoring and things like that? I've been working with the former, but I'm starting to lean towards the latter. Oh, and in the process of figuring all this out, I discovered that the text file written by the BCEdit java app is a ; delimited file containing the content of the sysex messages, excluding some header bytes. So I threw together 2 scripts, one (read.pl) that converts a file containing the sysex messages to a text format (same as the BCEdit format except with \n instead of ;) and another (write.pl) that takes a text format file produced by read.pl and writes the sysex binary format so that it can be piped directly to /dev/snd/midiCxDy. It works with a BCF2000 only right now, but a probably minor change will work with the BCR2000 as well. Thank to Pieter Palmers for bcx2000edit from which I borrowed that piece of information. Maybe someone will find these useful. And I've attached some samples. bye John
<<attachment: bcf-read-write.zip>>