Jump to content

Midi sync issue in Song Mode


tupinamba
 Share

Recommended Posts

Hello,

I noticed that I have a sync problem in song mode that doesn't exist when I play the pattern alone. My midi devices (x0xb0x, MB6582 and Jomox) are well synchronized when I play the pattern, but when I play it on Song Mode, they are not synchronized anymore! Or to be more precise : they are synchronized on the 1st pattern but the sync is slightly lost when switching to another pattern.

I noticed this because I use a rhythm box (DR-5) to give my drummer a clic, and the clic is OK at the beginning but starts to unsync when switching to another pattern. Sometimes it even starts with difficulty, doubling the first note, and in this case the clic is unsynchronized.

Any clue ?...

Thanks!

Edited by tupinamba
Link to comment
Share on other sites

Very strange!

Are you using your MBSEQ in Master or Slave mode?

And could you please give my your "system" information after it happenes:

1) play the song until it gets out-of-sync with your MIDI gear

2) open MIOS Studio and connect to your MBSEQ

3) enter "system" in the MIOS Terminal

4) post the output here

Best Regards, Thorsten.

Link to comment
Share on other sites

Tk,

The output from MIOS terminal is:

when in pause:

[7935.547] system

[7935.548] System Informations:

[7935.549] ====================

[7935.549] MIDIbox SEQ V4.058 © 2012 T. Klose

[7935.549] Operating System: MIOS32

[7935.549] Board: MBHP_CORE_LPC17

[7935.549] Chip Family: LPC17xx

[7935.549] Serial Number: 609F1111AE0225351487CCC42000005F

[7935.549] Flash Memory Size: 524288 bytes

[7935.549] RAM Size: 65536 bytes

[7935.549] Systime: 01:21:00

[7935.549] CPU Load: 59%

[7935.549] MIDI Scheduler: Alloc 0/ 19 Drops: 0

[7935.549] Stopwatch: Overrun!

[7935.550] Current Root Note (via Keyboard): C-3

[7935.550] done.

when song stopped:

[7967.539] system

[7967.541] System Informations:

[7967.541] ====================

[7967.541] MIDIbox SEQ V4.058 © 2012 T. Klose

[7967.541] Operating System: MIOS32

[7967.541] Board: MBHP_CORE_LPC17

[7967.541] Chip Family: LPC17xx

[7967.541] Serial Number: 609F1111AE0225351487CCC42000005F

[7967.541] Flash Memory Size: 524288 bytes

[7967.541] RAM Size: 65536 bytes

[7967.542] Systime: 01:21:32

[7967.542] CPU Load: 55%

[7967.542] MIDI Scheduler: Alloc 0/ 19 Drops: 0

[7967.542] Stopwatch: Overrun!

[7967.542] Current Root Note (via Keyboard): C-3

[7967.542] done.

when song playing:

[8433.955] system

[8433.956] System Informations:

[8433.958] ====================

[8433.958] MIDIbox SEQ V4.058 © 2012 T. Klose

[8433.958] Operating System: MIOS32

[8433.958] Board: MBHP_CORE_LPC17

[8433.958] Chip Family: LPC17xx

[8433.958] Serial Number: 609F1111AE0225351487CCC42000005F

[8433.958] Flash Memory Size: 524288 bytes

[8433.958] RAM Size: 65536 bytes

[8433.958] Systime: 01:29:18

[8433.958] CPU Load: 77%

[8433.958] MIDI Scheduler: Alloc 0/ 19 Drops: 0

[8433.958] Stopwatch: Overrun!

[8433.958] Current Root Note (via Keyboard): C-3

[8433.958] done.

Edited by pcbatterij
Link to comment
Share on other sites

Thorsten,

I have upgraded the frimware of my mb909 cs and I don't have the "glitch" anymore. I have also played around in the session, so I am not sure wither it's the new firmware or if there was something wrong with the session.

I will include the zipped session anyway, and below is an extract from s32 SEQ_SONG_FetchPos(u8 force_immediate_change) in the song.c file, because I have changed it (in my non-professional way) a bit for my "drum" version. (you'll also see why I asked the question about the mutes in song :-) ) I use the song screen in a different way than it was originally intended for. :blush:

this is what I get now from the MIOS Studio:

[183382.043] system

[183382.044] System Informations:

[183382.045] ====================

[183382.045] MIDIbox SEQ V4.059 © 2012 T. Klose

[183382.045] Operating System: MIOS32

[183382.045] Board: MBHP_CORE_LPC17

[183382.045] Chip Family: LPC17xx

[183382.046] Serial Number: 609F1111AE0225351487CCC42000005F

[183382.046] Flash Memory Size: 524288 bytes

[183382.046] RAM Size: 65536 bytes

[183382.047] Systime: 00:01:45

[183382.047] CPU Load: 21%

[183382.047] MIDI Scheduler: Alloc 0/ 19 Drops: 0

[183382.047] Stopwatch: 11/142 uS

[183382.047] Current Root Note (via Keyboard): C-3

[183382.047] done.

default:

if( s->action >= SEQ_SONG_ACTION_Loop1 && s->action <= SEQ_SONG_ACTION_Loop16 ) {

song_loop_ctr = 0;

song_loop_ctr_max = s->action - SEQ_SONG_ACTION_Loop1;

seq_pattern_t p;

// TODO: implement prefetching until end of step!

if( s->pattern_g1 < 0x80 ) {

p.ALL = 0;

p.pattern = s->pattern_g1;

p.bank = s->bank_g1;

seq_core_trk_muted = ~((1<< s->bank_g2) & 0x0f);

SEQ_PATTERN_Change(0, p, force_immediate_change);

}

if( s->pattern_g2 < 0x80 ) {

p.ALL = 0;

p.pattern = s->pattern_g2;

p.bank = s->bank_g2;

SEQ_PATTERN_Change(1, p, force_immediate_change);

}

/*

if( s->pattern_g3 < 0x80 ) {

p.ALL = 0;

p.pattern = s->pattern_g3;

p.bank = s->bank_g3;

SEQ_PATTERN_Change(2, p, force_immediate_change);

}

if( s->pattern_g4 < 0x80 ) {

p.ALL = 0;

p.pattern = s->pattern_g4;

p.bank = s->bank_g4;

SEQ_PATTERN_Change(3, p, force_immediate_change);

}

*/

}

}

} while( again );

return 0; // no error

}

Link to comment
Share on other sites

I think that all three issues don't belong together.

@tupinamba: I need the copy&pasted system info (right-click in terminal window, copy, paste into the forum reply).

In addition, I need your session directory.

@pcbatterij: it isn't really helpful if you are reporting issues of a modified firmware in such a thread - I can't (and won't have the time) to analyze such an issue with your modifications, it could be related to something totally different, and since your only fragmentally inform me about your changes, it makes it even more difficult to understand the backgrounds - please open your own thread and just post your observations there, I will answer if I know an immediate answer, or if I can puzzle it from your descriptions.

E.g. have you ever considered that the delays could be caused by the graphical LCD that you are using?

@sneakthief: thats (unfortunately) a known limitation: loading a pattern from BankStick takes some time. It's usually done 2..3 MIDI ticks before the next step will be played, therefore you won't notice the delay in song/chain mode. But if you are requesting a pattern change from external, MB808 obviously can't predict your intention, therefore the delay can't be prevented.

This is unrelated to the MBSEQV4 issue here, since a) in song mode the patterns are loaded some (micro)ticks before the change, in addition MBSEQV4 includes a clever preloading mechanism which should ensure 100% stable timings (therefore I really want to know, what could go wrong here)... and b) loading patterns from a SD Card is much faster compared to the BankStick

Best Regards, Thorsten.

Link to comment
Share on other sites

  • 1 month later...

Hi TK,

I'm back working with my MBSEQ and so I'm trying to fix my SYNC issue.

I'm having a hard time getting the SYSTEM output as with my macbook I cannot copy-paste the output from MIOS... I'll have to connect the MBSEQ to a PC.

I just noticed something that could be a clue:

When I start a pattern in "pattern mode", the BEAT led is perfectly synchronized to the 16 step leds... But with the very same pattern in "song mode", the 16 step led is late (this is very easy to check on step 9 as both leds are very close and I can see they aren't together anymore)

The problem seems to occur when switching from one song position to the next (pattern change).

I'm going to get the SYSTEM output very soon but this may be a start...

Thanks again TK for developing such an amazing project and for being so reactive!

Edited by tupinamba
Link to comment
Share on other sites

Hi Thorsten,

Here are finally the results of the SYSTEM query :

When stopped :

[1433.777] system

[1433.794] System Informations:

[1433.804] ====================

[1433.814] MIDIbox SEQ V4.062 © 2012 T. Klose

[1433.828] Operating System: MIOS32

[1433.839] Board: MBHP_CORE_STM32

[1433.850] Chip Family: STM32F10x

[1433.860] Serial Number: 30FF5561314B343455361743

[1433.876] Flash Memory Size: 524288 bytes

[1433.889] RAM Size: 67107840 bytes

[1433.898] Systime: 00:06:17

[1433.905] CPU Load: 40%

[1433.916] MIDI Scheduler: Alloc 0/ 11 Drops: 0

[1433.931] Stopwatch: 67/914 uS

[1433.941] Current Root Note (via Keyboard): C-3

[1433.952] done.

When playing and still synchronized :

[1972.538] system

[1972.556] System Informations:

[1972.565] ====================

[1972.576] MIDIbox SEQ V4.062 © 2012 T. Klose

[1972.590] Operating System: MIOS32

[1972.601] Board: MBHP_CORE_STM32

[1972.611] Chip Family: STM32F10x

[1972.622] Serial Number: 30FF5561314B343455361743

[1972.637] Flash Memory Size: 524288 bytes

[1972.650] RAM Size: 67107840 bytes

[1972.659] Systime: 00:15:16

[1972.667] CPU Load: 51%

[1972.677] MIDI Scheduler: Alloc 1/ 21 Drops: 0

[1972.692] Stopwatch: 250/953 uS

[1972.702] Current Root Note (via Keyboard): C-3

[1972.713] done.

or :

[1984.824] system

[1984.841] System Informations:

[1984.852] ====================

[1984.861] MIDIbox SEQ V4.062 © 2012 T. Klose

[1984.876] Operating System: MIOS32

[1984.887] Board: MBHP_CORE_STM32

[1984.897] Chip Family: STM32F10x

[1984.908] Serial Number: 30FF5561314B343455361743

[1984.924] Flash Memory Size: 524288 bytes

[1984.937] RAM Size: 67107840 bytes

[1984.945] Systime: 00:15:28

[1984.953] CPU Load: 51%

[1984.964] MIDI Scheduler: Alloc 1/ 21 Drops: 0

[1984.979] Stopwatch: 67/953 uS

[1984.989] Current Root Note (via Keyboard): C-3

[1984.998] done.

When playing but not synchronized anymore :

[2084.187] system

[2084.205] System Informations:

[2084.214] ====================

[2084.225] MIDIbox SEQ V4.062 © 2012 T. Klose

[2084.240] Operating System: MIOS32

[2084.251] Board: MBHP_CORE_STM32

[2084.261] Chip Family: STM32F10x

[2084.271] Serial Number: 30FF5561314B343455361743

[2084.286] Flash Memory Size: 524288 bytes

[2084.300] RAM Size: 67107840 bytes

[2084.309] Systime: 00:17:07

[2084.317] CPU Load: 51%

[2084.326] MIDI Scheduler: Alloc 2/ 21 Drops: 0

[2084.341] Stopwatch: 73/953 uS

[2084.352] Current Root Note (via Keyboard): C-3

[2084.363] done.

or :

[2099.308] system

[2099.325] System Informations:

[2099.335] ====================

[2099.346] MIDIbox SEQ V4.062 © 2012 T. Klose

[2099.361] Operating System: MIOS32

[2099.371] Board: MBHP_CORE_STM32

[2099.382] Chip Family: STM32F10x

[2099.392] Serial Number: 30FF5561314B343455361743

[2099.407] Flash Memory Size: 524288 bytes

[2099.420] RAM Size: 67107840 bytes

[2099.429] Systime: 00:17:23

[2099.436] CPU Load: 51%

[2099.447] MIDI Scheduler: Alloc 2/ 21 Drops: 0

[2099.462] Stopwatch: 140/953 uS

[2099.473] Current Root Note (via Keyboard): C-3

[2099.483] done.

With all those not synchronized results, the step leds are VERY obviously unsynchronized with the BEAT led...

Edited by tupinamba
Link to comment
Share on other sites

I think that what happens is that when the SEQ switches from a pattern to the next one in SONG mode, it "swallows" a bit of the former pattern.

I noticed it because the SEQ controls my s0xb0x which I programmed with notes that do not normally glide (they are all 90% in my pattern layout) but the last note of the pattern glides with the first note of the next pattern when changing pattern. And you can clearly hear that the first note of the next pattern comes too soon.

And this doesn't happen when the pattern is looped (the very same last note of the pattern doesn't glide with the first note of the same pattern)!

Weird, isn't it?...

Edited by tupinamba
Link to comment
Share on other sites

Thanks for the important detail!

I don't use the RATOPC function by myself, and therefore assumed that the glitch was introduced with the latest enhancements for the guide track...

The behaviour of RATOPC sounds faulty, I will check this as well.

Best Regards, Thorsten.

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...