mclagett Posted October 6, 2009 Report Posted October 6, 2009 Hi --I'm trying to decide whether to use a MidiBox as the center of my Pedal Midification project or a simpler board with a diode matrix. I envision wanting to use a 13-pedal Hammond pedalboard at first, but may be extendng to a 25-pedal board in the future, which I may split into two 17-pedal and 8-pedal pieces. So I may end with a variety of pedalboards that I would swap out as circumstances dictated. Thus the greater programmability of the MidiBox is of interest to me to support this flexibility.What I'm wondering is whether it is possible to dynamically reconfigure the midi notes and controller codes that get generated from the unit via sysex messages that are sent on the fly (say from a sequencer track). Could the setup of the pedals thereby change without having to load a sysex file per se, supporting simple swapping out of the pedal units without having to load a new sysex file with a file loading utility each time. Such a capability could also conceivabley support remapping individual pedal notes in a performance situation from song to song or permitting the pedals to control other things as individual song needs dictated. Can the unit receive such sysex messages while it is operating and reconfigure itself on the fly?Any guidance would be greatly appreciated.Thanks Quote
nILS Posted October 6, 2009 Report Posted October 6, 2009 It absolutely can, and it doesn't even have to be that complex. A single program change message could do if you write the app with full support of all the possible pedalboards you have. Quote
mclagett Posted October 6, 2009 Author Report Posted October 6, 2009 Hi --Thanks for the response. I've read the posts about not wanting noobs to have others do their work for them, but I have just a couple more orienting questions about general capabilities before I dive in.So just making sure I understand. I could write an app that would run on the MIDIBox and presumably manipulate the underlying MIDIOS dynamically in real time to reconfigure the response to pedal signals coming in from my pedal units? That's pretty cool, if I understand this correctly. Can an existing app like MIDIO128 be extended to do this? Or do I have to write an entire app that will run the whole show?Thanks.Mike Quote
nILS Posted October 6, 2009 Report Posted October 6, 2009 What you seem to want to do is definitely doable. "Writing an entire app" sounds a lot harder than it is. You don't start out at 0, but with a fully working app, with all hooks that just doesn't do a lot yet. So it's really not that big a deal :-) In most cases you can just mod an existing app but I personally prefer to statr from scratch rather than digging thorugh someone else's code ;) Quote
mclagett Posted October 6, 2009 Author Report Posted October 6, 2009 Nils --Yes I agree. Also, I've been planning for a while to port to an ARM processor a Forth-like virtual machine I've developed that is based on one of the later hardware-implemented Forth designs that Charles Moore did as he moved away from the Forth mainstream development community. This VM is based on a 32-opcode Minimal Instruction Set. So far I've implemented it only in an x86 environment working directly at the x86 processor level with a bit of help from Windows for services such as file, threading, messaging and memory management. But the register-constrained Intel enviornment has been such a royal pain in the ass and I have been salivating at a more register-rich environment like the ARM processors with more general purpose registers and multiple hardware stacks, etc. I would love to implement the instruction primitives closer to the machine than I've been able to in the Intel environment, which presumably would make working more exclusively in VM byte code feasible and reduce the need to drop down to assembler.I might like to try my hand at implementing this on top of the Cortex M3 with help from whatever OS is provided in the MIDIBox platform (which I guess would be MIOS32 and FreeRTOS?). Pursuant to that, a quick question about MIDIBox: My current VM has built on top of it a bunch of facilities, including a Forth interpreter and compiler, an Intel assembler (I would have to make this a Thumb assembler) and classes, interfaces, parameterized types, etc. This becomes particularly powerful if one can develop interactively directly on the deployment platform, as with a full-fledged OS like Windows, because of the combined interpreted/compiled enviornment. To reproduce this benefit inside the MIDIBox, one would need to connect a keyboard and video monitor. Is anybody already doing this for any other purpose and has there been any success? Or are the resource constraints too prohibitive? Or is this perhaps too exotic an idea that doesn't arise in current scenarios?Also, I'm wondering how much of the 512K Flash memory and 64K RAM do the exisitng OS facilities occupy? Any insights as to the suitability of MIDIBox for such a project would be greatly appreciated.Thanks.Mike Quote
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.