• Content count

  • Joined

  • Last visited

Everything posted by John_W._Couvillon

  1. MIDI merge with LPC17

    quote]If you are already using a customized version, you could just update your (complete) repository to get the latest changes under $MIOS32_PATH/mios32 - thereafter recompile your application -> done!
  2. MIDI merge with LPC17

    TK, Before I reload midio128, remember that you did a custom for me on the mode issue so i have a MAP mode for matrix setup. if I download the new version will this kill the Map feature? A new problem came up this morning while I was testing, which involves the MSD card. I customized the default.mio, renamed it ARTISAN.MIO and with the MSD enabled on the LPC transferred it to the sd card. I disabled MSD, went back to the menu on the CS, disk, found ARTISAN on the list and pressed LOAD. The message patch loaded came up. Went back to the menu selected "router", selected node 1, then set the channel for ALL. I enabled MSD again, and opened the ARTISAN.mio in the the sd card directory with notepad++. Looking down the file, the change i made to the router node 1 to add channel "all" was not changed. 5 Questions: 1. If a change is made to a parameter through the control surface is the change also made on the SD card? So if i download the .MIO file, it will be changed. 2. Is it a problem to use notepad++ in lieu of open calc. 3. In the matrix setup in the .mio file. What do you put in the string for mode, "MAP, NORM, whatever". The default has a 1? Is the mode 1n normal? 4. Same question for Router setup, What do you put in the string for CH if you want "ALL", the word, or is there a number? 5. When the LPC is energized, does it load the default.mio automatically, such tha if you want something else, you have to manually change it. Using the LPC in my organ, I don't want to have to manually load the .mio file each time I turn on the organ. Sorry about all the question, but who else can I ask. Johnc
  3. MIDI merge with LPC17

    TK, On the instructions for the control surface configuration for DOUT, The highlighted text shows USB1, OUT1, OUT2....., and at the bottom the following: "USB1..OSC4: selects the MIDI ports over which the selected DOUT pin will receive MIDI events" As I read the above, the midi event for a DOUT pin will come through the OUT1 port. Shouldn't the highlighted text say "IN1, IN2"? You send midi event message for a DIN pin out to an external device through the OUT1, OUT2 port, why not then receive a midi event message for a DOUT pin through the IN1, IN2 ports. Oh, I left off the last questions; If the ports are selected on the DOUT amd DIN configuration, is it still necessary to set up the router nodes as I discussed on my previous post to daisey chain an LPC and a core8? Lastly, On the .MIO config file, the router srcP and desP are shown as "0x10, 0X20". Which port do these represent, IN1, OUT1, IN2, OUT2. USB1, USB2,...? Johnc
  4. MIDI merge with LPC17

    TK, Still having problems getting the LPC and the pic8 core to work together. Info about the setup; an LPC (ID=0) 0working with the USB connection to the PC, running midio 128 ver. 3. The LPC responds to the mios studio, and also responds to matrix inputs. it has4 8x8 matrices, three for keyboards, one for STOP contacts. No problems there. The pic 8 core is running midio128 ver 2., its ID=1. When I connect up the LPC alone to the pc, mios studio finds it, etc. When I connect the PIC 8 to the pc through a midiman 2x2, mios studio finds it. Both units respond to DINS connected as monitored with midiox Per your post, I connected the IN1 port on the LPC to the out port on the PIC8, and the OUT1 on the LPC to the IN port on the PIC8. With the control surface, I went to the router section and set NODE 1, (srcP) USB1 , ALL, (desP) OUT1, ALL, and NODE 2, (srcP) IN1, ALL, (desP) USB1, ALL With this setup, nothing is going to or from the pic8. I also went to the global settings on the LPC (midio128), saved it to the LPC and enabled the midi merger. still nothing. with mios studio loaded and the setup as above, Mios studio finds the LPC, but not the PIC8. QUESTION: should it? Confused! Johnc
  5. Data storage with mios32 and the LPC

    Question, For an app that includes storage of a block of data equivalent to an array 48 lines by 16 bytes wide, where latency is not a problem, what is the preferable method of storage, the SD card, the on board eeprom, a bankstick? Each line represents a piston on an organ, and the 16 bytes (128 bits) in binary carry the status of a contact on 128 stop tabs. Johnc
  6. Data storage with mios32 and the LPC

    Thanks duggle That helps a lot. On. The Lpc17, is there an acceessible eeprom on the unit that is not used on the control surface? If the limit on the size of an array, 2 dim,is 246 bytes and you need larger, say 48 by 8 bytes, how iis done? Johnc
  7. Data storage with mios32 and the LPC

    Nils, If one desires to modify a known app such as midio128, ver.2, or any app for that matter, how do you know if the base program is reserving space in the internal EEPROM, or RAM, or Flash? if you want to dumnp a buffer to the EEPROM, is the starting address 0X00 or some other address? Also - I'm confused with the terminology "load and latch" the DOUT shift registers. "Load" the shift register means to shift a given number of bites into the shift register, and "latch" would transfer the loaded bits in the DOUT registers to the output pins. Is this correct? Thanks, johnc
  8. Data storage with mios32 and the LPC

    Nils, Yes I hear you, and have spent almost equal time with C. I figured that knowing and understanding the hard way would give me a greater appreciation for c. I'm not good at "black box" concepts, I want to know what is in the box! at 73, and retired, I have time to "twitel" with the "minusha". Being an organ geek, my primary interest is in midio128 and how it functions. thanks for the input. johnc
  9. Data storage with mios32 and the LPC

    Thanks Nils One more question. I have several 8 bit cores and am trying to learn a bit of asm programmming. If I write a short asm program using basic asm code and compile it. can I load into the pic and run it. I don't anticipate anything very complex, or any mios 8 related stuff. Is there any thing having to do with mios, that I would have to turn off, disable, etc. to use the basic ports on the 18F452? Johnc
  10. Midibox Organ Relay

    TK, I did not intend to imply that I expected you to teach me to program. My apology. It was not intended. My project with the LPC and midio128 ver.3 is progressing and I probably will have some questions getting it up and running. Hopefully it will go smoothly, but if not, I would appreciate some help. As for programming - I will continue to read available material and search for answers on the forum. Thanks, Johnc
  11. Midibox Organ Relay

    With the introduction of the new LPC17 core and its much expanded features (thanks to our superhero TK), midibox is one step closer to being an complete "Organ relay in a box", stealing a slogan from Artisan not intended. Right out of the box, Midio128 can encode multiple keyboards, pistons, stops, up to 1024 with the 32x32 matrix; encode pots on swell shoes, cresendo pedals, etc.; Drive midi decoders (DOUTS) for SAMS magnets, pipe magnets, LEDSs, and communicate with the outside world in multiple protocols. As a result, one can take a defunct organ console and add midification in the form of midibox devices and end up with a truly remarkable musical instrument.Thanks Thorston for your hours and hours of work, and you willingness to address the unique "nitch" of the virtual organ. in comparison with many commercial devices, midibox concepts are not only technologically ahead of, but more versitle then most, and best of all, "free". So what's next? What new midification application can stem from the capability of the LPC core? one comes to mind very quickly, and thats addition of a routine to implement a combination action. All of the programming is in place for piston and stop switch inputs, and relay drivers for SAMS magnets. the only thing missing is the "smarts" to make the devices do the job. Perhaps TK can put this application on the "wish" list for 2012. Currently, it is possible to build a midi based virtual organ with midibox encoders generating a midi stream and an Artisan sound engine to provide the conversion from midi to sound without a virtual organ program such as haupwerk, jOrgan, Miditzer. However to have a combination action, one has to rely on either a dedicated pc or a commercial smart device preprogrammed to accept the midi inputs and generate the necessary outputs to SAMS magnets. Granted the costs of SAMS at $25+ each is prohibitive to many, but if the capability were built in to the midio128 software , eliminating the dedicated pc, would free up money for thr SAMS. Anyone interested please jump in with your comments. johnc
  12. Midibox Organ Relay

    TK, now that i have the tool chain downloaded, and reviewed, I don't exactly know what I am looking at, nor do I understand what i would do with it , if I did. Foe my purposes, i need midio128, ver. 3 to provide the basic functions of my midified organ. IMHO, I need an additional alternative added to the firmware at the point where a button is pressed, and the program branches to deal with the button, encoder, etc. With 126 input pistons to deal with, The matrix feature is ideal. Perhaps, using one of the J5 IO for the SET button, to initiate the Capture. In all the tutorials, i don't find examples of write an read to the SD card for storing combinations. Comments anyone. johnc
  13. Midibox Organ Relay

    Thanks phil - it worked like a charm. I suspect you are correct, the ISP limits the duration of the download, and because of slow spped it timed out. My cable download speed seems to fluctuate with the time of day. johnc
  14. Midibox Organ Relay

    TK, No luck on the download of the mios toolchain. Tried Safari, IE and firefox on a WIN7, 3mhz pentium machine and IE and firefox on an pentium 1.6mhz XP machine, and the down load terminates anywhere from 16 mb to 22 mb of the 27.7mb file. Download speed is from 69kb/sec to 100mb/sec. Could it be timing out before the complete file is downloaded? I don't normally have a problem downloading a 27 mb file. Any other suggestions? Is the toolchain available at any other FTP site? Johnc
  15. Midibox Organ Relay

    Thanks TK!
  16. Midibox Organ Relay

    Peter,anyone, Attempts to download the mios32 tool chain for windows have failed. The 27.7mb file stops at 20+mb, and won't complete. Gave up after 3 repeats. Is win 7 OS not legal for this download, or do I have to go back to XP? Can it be downloaded from any other website, or FTP? johnc
  17. Midibox Organ Relay

    Hi Peter, To do as you suggest has passed thru my mind. Admittedly, I have read through the referenced url in addition to that for the 8 bit core,and the wiki, and have some familiarity with figuring out ASM. "c" is a different story. Perhaps you are right. I appreciate your comments and encouragement. Thanks, johnc
  18. Midibox Organ Relay

    Hi Jim, Yes, Yes, I got it! I'm not going to be-labor the ramifications of the english language. The mod would have a tremendous impact on the DIY VTO nitch in the midibox community. In addition, the hardware platform on which to test the software is pretty strait forward, all of which I have in place, including the soundengine. In addition, what programmer or knowledgable DIY guy is going to put together the hardware, in advance, just to act as a test bed. Your posts on switch matrix with Alpharo come to mind. Here in South Louisiana we call that networking, and thats really the bottom line and the real drive of the Midibox and Miditzer forums. Great stuff. Take a look at He put together what in essence is a core with dout and Din, but in different physical format, all powered by a PIC. His whole setup can be powered by an 8bit core, a couple of DINS and DOUTS. The trick would be to port his ASM code over to MIOS. Actually, using am 8x8 matrix and the code, in midio128 ver. 2. The logic could be incorporated in the same way you added the logic to create midi note numbers, and channels. Correct me if I'm mis-guided, but all the handlers for input and output are already in place, in particular in the mios 32 and midio128 Ver.3. The LPC would be a great platform since it is up to date, includes the matrix code and also the SD card which would be a perfect place for storing combinations. A "capture" function to acquire combinations and save on the SD card, and a "recall" function to read the combinations and output to SAMS. Again, I realize that there are many factors to consider in the code development, but IMHO it boils down to using already developed macros, handlers, etc. and re-arranging them to produce a different result. I know you are a busy man, but would you be interested in acting as the programmer part of a team. Maybe TK would be agreeable to work with us. Your english may fare better with him then mine! No disrespect intended, TK! Johnc
  19. Midibox Organ Relay

    TK, Hey, no problem! you presented some conditions in the form of questions, all but one of which I can meet. I'm not a programmer. If there is someone out there that is in a better position with the necessary hardware to test out the new code, sure would be nice to know who you are. In the mean time, I'll press on with my project with hopes that you will consider my post a request for consideration, and undertake the code mod in the future. I am still in awe of your work, and thank you for the many hours of enjoyment midibox has brought into my life. johnc
  20. Midibox Organ Relay

    TK, I am at your disposal. My LPC is complete and working. All the DINS and DOUTs are in place and wiring is ready to be terminated. All the Stops (SAMS) are installed and wired, both sense contacts as well as magnets. The SET and Cancel buttons are wired as are the numbered combination buttons. It would be indeed a pleasure to provide a development test bed. I will speed up wiring the SAMS, pistons., etc. Only one thing, I have more inputs then 128, including spares for additional SAMS, it takes 32 DIN pins (1 DIN4X) for the keyboards and Sams sense contacts on the horseshoe, all on the matrix , I have added an 8bit core and 4 DIN4X's for the pedal (32 ins), pistons (46 ins) and 26 pins for the sense contacts on coupler and trem SAMS, totaling 136 total din pins needed. I could add 3 DIN4X cards to the DIN4X in the matrix, but I would still be short, and would have to add another core anyway.. The intent is to daisey chain the midi out of the 8 bit core with the midi in of the LPC, and the midi out of the PLC to the midi in of the Artisan sound engine. hope this doesn't complicate things. See the attached file. I still have to add the inputs for three pots which will be on the swell and cresendo pedals. The file still has stuff which will not be needed, but still there. FYI, my SD card is a micro, 4GB Please let me know if you need any other info, pictures, whatever! johnc ARTISAN.txt
  21. Midibox Organ Relay

    TK, As regards my post below, With midio128 running on the LPC (ver.3)supporting multiple keyboards, all piston and stop inputs using a matrix, and DOUTS powering the SAMS magnets, addition of the necessary logic to support a combination action seems to be appropriate for the midio128. Midio128 already has built in, button handlers for key press, piston(switch) contacts, stop(sense) contacts on SAMS( including couplers, trems, etc.), as well as output drivers for SAMS magnets. In addition, the LPC uses the SD card with built in driver for storage. I suspect that in all the apps designed for other devices, the basic logic building blocks to support a combination action already exists. Building blocks needed: 1. The combination action has a capture function and a recall function, which allows the organist to set multiple stops on the console automatically in advance of playing,with one key piston, keypress, to recall (setting the stops) The CANCEL piston then resets the stops to off. 2. The capture function utilizes three sets of switches on the organ console. The First set has 2 switches, one switch, the SET piston and one switch the CANCEL piston. Set two, multiple swithces, combination pistons, numbered 1 thru however many is needed. Set 3 includes position sense contacts on all STOPS (SAMS) 3. The RECALL function, as implied, includes the Combination and cancel Pistons from step 2. 4. The capture logic (to be added to MIDFIO128) provides: a. The LPC is "on" scanning all DINS on the organ. To setup a combination, the SET piston is depressed which is picked up by the DINS and the LPC recognizes the switch, and awaits selection of stops accomplished by manually pushing down the desired stop (SAMS) tabs. after the desired combinatiion is selected, the organist presses one of the numbered recall pistons to which the combination is referenced and the LPC scans all stop sense contacts, and saves the combination on the SD card with the ID of the numbered piston pressed. After storeing the combination, the LPC resets the stop tabs to the off position by performing a cancel (energizing the off magnets on all SAMS) b. To recall the combination set in 1., the organist presses the combination piston set in 1 above, and the LPC recalls the combination, energising the "on" magnet on the stops assigned to that particular piston, the stop tabs go down, and the stops recalled are played. The duration of the recall cycle lasts only as long as the combination piston is held depressed. Release of the piston terminates the 12vdc drive to the magnets, but the STOP remains in the "ON" down position. The SD card should allow at least as many combinations to be stored as there are numbered pistons. Divisional and General pistons are not mentioned as any piston can be programmed to include any or all of the stops on the organ. As regards hardware: 1. Multiple DINS, one pin for SET, CANCEL, the sense contact on each atop(SAM) which closes when the stop is "on", tab down, opens when the tab is "off" , up. 2. Multiple DOUTS with driver ULN chips, or relays. Two output pins for each stop (SAM) one to energize the 12vdc "on" magnet and one for the "off" magnet. TK, if this has not already been included in the WISH list for the LPC, please include it. Any comments from other forum participants are welcome. Johnc ps: The same programming could also be used with the 8bit cores, DINS, DOUTS and banksticks.
  22. MIDIO128 V3

    TK, Thanks! I think that I am good to go for awhile. johnc
  23. MIDIO128 V3

    Ok! I accept the hand slap, but not without comment! Remember that I am using "5b"the beta ver. Why would the lowest note on an organ keyboard be 0x30? The low C on most organ keyboards is 0x24. Could be an error. Yes an answer to item 3. would be good. For those of us that lack the technical insight, we tend to think of such devices as the LPC17 as a black box, hoping that in some way it can make my "stuff" work better. So in reading a feature list as awesome as the list for the LPC it is normal to look for applications in my personal domain. I refer to item 4 above. IMHO, when I plugged the wireless adapter into my laptop, I had to run some config software to set it up. Isn't it reasonable to ask item 4, since I have no way of knowing or understanding what the firmware can do, or not do. Enough said! TK - I appreciate all your hard work and patience with my questions. Best Regards, johnc
  24. MIDIO128 V3

    since the above email, I spent a good deal of time with the CS and the LPC and answered a lot of my questions. Must admit, it is a wonderful device. Head and shoulders above the old cores, in many ways. I enjoyed just playing around with it. Other then the tedium of assembling it, should be great for newbies to get started. A couple of questions; 1. Setting the configuration for an organ is easiest done editing the default.mio file and uploading to the LPC. the operation is very similar to the old ".ini" use, and I guess thats what you had in mind. I suspect that all unused matrix templets can be deleted from a custom .MIO, keeping the default intact for record purposes. yes? what happens if you setup DINS (non-matrix) which are already used in a matrix in the lPC .MIO file? Which will take priority. The DIN or the matrix? Also if I download a custom .mio file that contains such errors, what will happen? 2. If I want to configure a matrix using the normal mode, and I want the First note # to be dec. 36, 0x24, I can accomplish this by editing the long string which now has 0x30 in it. yes? 3. I note that in the matrix setup strings, the OSC1 is checked, along with USB and IN1. what does the OSC do? 4. If I plug in my Dilink wireless USB adapter into the LPC will it communicate with my wireless router? Since my organ console is 50 feet from the computer location, midi over ethernet would be great, especially if wireless. Great work TK! johnc
  25. MIDIO128 V3

    TK, Sorry about the push for details. I spent some time with ver. 5b - very nice! I also uploaded the contents of the SD card to open office and looked at the .MIO file. WOW - there is alot of stuff there, namely i noticed 16 sets of matrix maps for 16 channels and note values. For improving my facility with the CS, i went to M8X8 on the main menu, selected map mode, then set the matrix to 1, pin 1.1 and changed the channel from 1 to 5 for pins 1.1 thru 1.8, saved it, did the shift MSD enable, pulled up the SD files on open office and found the channels on matrix 1, row 1, C1-C8 mapped to channel 5. However I also noted that while in the matrix, as I changed the pin numbers, the note value also changed, starting with C-2 which is midi note 36. when i called up the default.mio in open office, the note values started with 30 instead of 36. Should the note numbers change to what the CS displayed for the selected pins. I don't see any other way to set the note numbers. It has become evident that I can also modify the tables in the default.MIO file in open office and download to the SD card. In fact, it appears that I could set up everything in open office and download the file to the SD card. I assume that the SD card will accept the .CSV file? Looking good! johnc