kpete Posted January 25, 2014 Report Share Posted January 25, 2014 I have a project that needs to be able to record and playback SYSEX messages and I was thinking of using the MIDIO128 project software. What I want to do is connect the MidiBox to a BOSS drum machine and be able to do a SYSEX dump and record the programmed pattern to the SD card and later, play it back to reload the drum machine with the old pattern at a later time. While testing things on the MIDIO128 software, it seems like the SYSEX messages don't get recorded from the Midi ports. In looking at the code, it seems like this function hasn't been implemented. I suspect that its not included in the playback either. Would it be possible to have this added to the code as a future feature? I don't plan to have these SYSEX messages address the MidiBox parameters, just want the data passed to the selected Midi ports. Pete Knobloch Quote Link to comment Share on other sites More sharing options...
TK. Posted January 25, 2014 Report Share Posted January 25, 2014 Yes, it's on my TODO list. Only problem is that the complete SysEx stream needs to be buffered in RAM before it's stored on SD Card. Accordingly, the used core module (LPC17 or STM32F4) will limit the max size. E.g. with STM32F4 it would be possible to handle 64k dumps easily, but for LPC17 I fear that only 4..8k can be buffered. How long is the SysEx dump of your drum machine? Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
kpete Posted January 25, 2014 Author Report Share Posted January 25, 2014 I was afraid you were going to ask me this question. I wasn't sure if the entire SYSEX message needed to be formatted in one block or not. I will look into this when I go to work on Monday. Quote Link to comment Share on other sites More sharing options...
kpete Posted January 25, 2014 Author Report Share Posted January 25, 2014 I found some Midi Dump files for the BOSS drum machine and the block size including the F0 & F7 is 251 bytes in size. The header information for each block shows F0 41 09 52 12 . . . Much smaller than the 4k that MIGHT be available from your guesstimate. There must have been about 20 of these blocks. Pete. Quote Link to comment Share on other sites More sharing options...
TK. Posted January 25, 2014 Report Share Posted January 25, 2014 Ok, sounds feasible! :) I will implement this in one of the next weekends. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted January 26, 2014 Report Share Posted January 26, 2014 After reading the MIDI file spec, I found a much easier solution: it's allowed to split SysEx streams into small chunks, so that no big RAM buffer for the complete SysEx message is required. Could you please try this version: http://www.ucapps.de/mios32/midio128_v3_019_pre1.zip I tested this with MIDIbox SID and FM patches. They can be recorded and played back, and the SysEx messages are displayed correctly in Logic Studio after .mid file import. So, it seems to work at my side. :smile: Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
kpete Posted January 27, 2014 Author Report Share Posted January 27, 2014 Its been a short 2 weeks :smile: I tested the v3 019 pre1.zip and it does record and play back the SysEx data. I haven't tried it on the real hardware because the BOSS box is installed in the organ at work. Will do this but suspect it won't be any problem. Something that no one else has reported is that the files created on the Midio128 unit doesn't play on the Windows PC player. I also had problems opening the file on one of my CakeWalk utilities but this was some time ago when I tried. Should I open up a new thread or would you want to continue this here? Here are the files. REC1.MID won't read REC1mod.MID will work. This was run thru a utility that removes long blank pauses in the file. Funny thing is that it also allows Windows the understand the file and play it. These files were made some time ago on a keyboard with extremely dirty contacts as you can hear. Pete GoodAndBad.zip Quote Link to comment Share on other sites More sharing options...
TK. Posted January 27, 2014 Report Share Posted January 27, 2014 After I noticed how easy this is to implement, I couldn't resist to try it out immediately ;-) Thanks for the file! Your utility added an "End of Track" marker, and according to the spec this is mandatory (a well hidden requirement...) Please try this version: http://www.ucapps.de/mios32/midio128_v3_019_pre2.zip The marker also allows proper looping synchronized to a 4/4 bar (for those who are interested) Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
kpete Posted January 28, 2014 Author Report Share Posted January 28, 2014 I tried the 019 pre2.zip file and I as able to record a file on the Midio128 unit then move the SD card to the PC and play it thru the Windows 8.0 player. It reads the file with no problems. Something else that I noticed, before I even started any testing, my unit did have problems connecting via the USB interface. I had all 4 USB ports enabled and it had a release from about 2 months ago in the unit.. Now with the new 019 pre release 1 and 2, I haven't seen any problem with connecting MiosStudio with the MidiBox. I even tried copying a large directory from and to the SD card using the MSD function and it worked flawlessly. I don't know if its the MidiBox software or the Windows 8.0 that made thing work so well. Anyway, the changes look great and I would say its ready for a release. One happy camper here TK :smile: Thanks for the prompt response. Pete Knobloch (Tempe AZ) Quote Link to comment Share on other sites More sharing options...
TK. Posted January 28, 2014 Report Share Posted January 28, 2014 Cool - finally somebody who confirms that the "new attempt" for a workaround solves the USB MIDI issues under MIDI! :-) See also Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
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.