This time I will report a bug to avoid that you stumble accross the same problem… following discrepancy cannot be explained yet:
if MIDI Merger is enabled and the core receives common MIDI events (like Notes, CC, …) as well as a MIDI clock, the common events forwarded to the MIDI Out are sometimes corrupted. Sometimes means: with a propability of ca. 1% - therefore hard to reproduce.
I won’t have the time to fix this in the next days. So, if you notice such a problem, don’t use MIDI clock and MIDI Merger at the same time!
I never had luck with the midi merger inbuilt on my old MB64, things always crashed. Can’t really remember the details now. (posted them maybe 18 months ago!) I guess people could build a dedicated merger in the meantime. Simplest ucapps project, use up your old PIC16F874 or '877’s! Build easily on veroboard! (BTW, how do you get it to work on '877? I can only find the firmware for '874.
Of course, especially the MIDIbox SID gets intensively use of the Merger. Steve: therefore an external merger won’t really help here. So far as I remember, the PIC16F related problem was due to a buffer overrun (limited RAM)… but this isn’t the case anymore with the PIC18F.
I assume a really nasty bug somewhere in MIOS_MPROC or MIOS_MIDI. Although the handlers take special care for realtime events >= 0xf8 (they don’t affect the running status), there could be a problem somewhere which does happen in very rare cases.
I wrote a small test application for two core modules which stresses the MIDI lines extensively with random Note On/Off and MIDI clocks. Incoming events will be checked against the sent events. This application failed last night with 10 transmission errors within 12 hours…
It could also be an error in MIDI-Ox, or Windows, or my MIDI interfaces (I used MIDIsport 2x2 and Hammerfall DSP and not MBHP_USB just to exclude another source of errors). So, this issue is really an adventure
Best Regards, Thorsten.
P.S.: PayC: do you really chain the MIDImon with the MIDIbox SID? This is not necessary, you can also connect the monitor in parallel to the Rx line, this reduces the latency by ca. 300-500 uS. Or did you mean, that you want to chain the monitor for testing?
It seems that this issue is not caused by MIOS, but by my MIDIsport 2x2, because my merger test didn’t fail with other interfaces. I also noticed that the latency of MIDIsport is much higher than on the others, so a buffer overrun inside the M-Audio firmware could be the reason.
It occurs very rarely when the MIOS_MIDI_TxBufferPut function is interrupted by the TX buffer handler. The last part of this function must be atomic, means: interrupts have to be disabled during the execution to avoid a malfunction.
So, especially applications which are using the MIDI Merger and MIDIbox Link extensively like MIDIbox SID, but also linked MB64, MB64E, MBLC, etc… will require a bugfixed MIOS version.
I will release a new version (v1.6) in next days which will also provide some new functions especially for MIDIbox SEQ (BankStick Page Read, improved MIOS_Timer_Init, etc…)
Currently this version is under test with MIDIbox SID and MIDIbox SEQ (the sequencer plays a 16 track sequence with 255 BPM since one hour, if all 4 SIDs still run stable until tomorrow, I know if the fix was successfull or not).
I haven’t tested this version with any other application, yet…
MIOS Power user eh… im honoured - tho i think a MIOS floundering user might be more apt ;p
neway…to mios 1.6…
Loaded it up on all 3 cores, and then slapped me LC f/w’s on and fired up logic…once again logic wouldnt recognose the box (using to-comm) however, I went to the LC setup page in logic and added one manually. Still no reaction on the LCD to acknowledge this (stays in the default title screen) again tho, i can still control the faders - weird. So I then tried clicking on the ‘write firmware’ button and logic said this:
The same text was also displayed on the lcds - hoorah! if I click ‘ok’ it just keeps coming up with that message, if i click cancel all is good and working fine (track info shows up on lcd’s etc etc) only thing is, I have to repeat the process everytime I open logic…but hey we have some progress!
Still no reaction on the LCD to acknowledge this (stays in the default title screen) again tho, i can still control the faders - weird.
My LC has been doing the same, but mine is on Mios 1.5. It works fine on my other computer though, so maybe some setting has been disrupted in logic. I will do a re-install of logic, I think. Meanwhile I have to tidy my room, to even get to see the LC, and my computer! (had to move furniture around, and now I can’t find anything, so I’m on my Bro’s PC right now!)
Loaded it up on all 3 cores, and then slapped me LC f/w’s on and fired up logic…once again logic wouldnt recognose the box (using to-comm) however, I went to the LC setup page in logic and added one manually
So Dan, this means you got 3 LC’s working off one Midibox to Com? (even though you had to fiddle a bit?)
so maybe some setting has been disrupted in logic. I will do a re-install of logic, I think
This was tested on a fresh XP/logic install…
this means you got 3 LC’s working off one Midibox to Com? (even though you had to fiddle a bit?)
hehe - now that would be nice! but alas no - 1st core = main LC controls. 2nd core = extra 16x2 lcd for smpte/beats display and a pot for master fader. 3rd core = MBTV core
could it be that you are using a version older than 5.5.1?
Nope, I’m using 5.5.1 - s’all we PC logicians got left Damn u apple!!! Not that I’m bitter
Yup, u could breadbrd the max232 chip between the pic and com port or just use a LTC and leave out the HC00’s. However, I’ve tried the to-com option on my LC (which has 3 cores chained) and I cudnt get logic to behave proper with it
From this thread…
Loaded it up on all 3 cores, and then slapped me LC f/w’s on and fired up logic…once again logic wouldnt recognose the box (using to-comm) however, I went to the LC setup page in logic and added one manually
So now it does work ok? (sounds like it, but I’m just checking) I’ve run out of midi ports, and if I could put my MB LC on the com port that would save me one midiport! My second LC will go on a normal midiport.
So now it does work ok? (sounds like it, but I’m just checking) I’ve run out of midi ports, and if I could put my MB LC on the com port that would save me one midiport! My second LC will go on a normal midiport.
Ye it works - just need to keep pressing the write f/w button in logic setup page everytime u fire up the prog - least I gotta…