raspy135 / Qun-mk2

Manual and presets for Qun mk2 synthesizer
66 stars 3 forks source link

Sequencer (Synth) unstable Timing by syncing with MIDI Clock randomly #6

Closed artqcid closed 1 year ago

artqcid commented 1 year ago

Firmware 4.04 Midi Sync as Slave I have a Sequence playing (OSC 1 + 2 are Saw and Noise) I also have Looper playing Track A I change Scenes sometimes all 2 Bars Then sometimes the Sequencer (Seq1) is like a little behind the Clock. Stable but a little laid back. Also it sounds as the gate length from the steps feels a little unstable, but maybe this sounds this way because the steps are not played on point anymore. I do not know if it has to do with Looper Scene Changes, but i will test it further without Looper Actions. Changing the Sequence to another emtpy Sequence and back doesnt change anything. Also Stop and Run again doesnt change anything. Also reload the Bucket change dont change this behaviour. Also reload the session doesn help. If i start the Sequencer without MIDI Clock, the problems stays and the Sequencer seems to stutter a little. Like the Notes get shifted randomly a little back and forward (like random Swing) Only turn device OFF and ON and load the session helps. Then the Sequencer is in Sync with MIDI Clock again.

Sorry, once again hard to reproduce....

artqcid commented 1 year ago

By the way, i only send MIDI Clock, no other MIDI Data. So it should not be a Midi Overflow

raspy135 commented 1 year ago

Maybe sending your session files is useful to investigate it. What is sending the MIDI clock? Is it DAW or other hardware?

artqcid commented 1 year ago

Midi Clock is sending from Roland J-6. But as i say, the failure stays even if i disconnect MIDI and start the Sequencer without MIDI. I send you the whole SD Image. I use Session 001, Bucket 7 Sequence 1. There are also 4 Scences: Scene 1 only contains a empty recording over 2 bars on Track C (i did this because i use a empty Scene to Mute the Looper) Scenes 2,3 and 4 contains 2 Bar Loops on Track A where i am switching between them to make vocal fills. This is the same Session that i use when the other bug with the Loop length happens sometimes. [Uploading SD Zip.zip…]()

artqcid commented 1 year ago

Roland J-6 is connected with a TRS Cable for MIDI Sync (without DIN Adapter). J-6 only sends MIDI Clock (i deactivate MIDI TX on the J-6)

artqcid commented 1 year ago

I use a Bandpass Filter on the Synth Sequence (so you have to open the Filter to hear the Sequence, because its Saved with total closed Filter)

artqcid commented 1 year ago

i did some testing Without MIDI Sync. Only internal Clock. I start the Sequence and played around with the Looper. I also stop and start the looper again, while sequencer is running. And viola, the Sequencer becames unstabe. So i can reproduce the bug without MIDI Sync. I have to say that sometimes, if i switch the Scene, the Dispay indicates that the Loop in the next Scene is running, but i dont hear any output. i have to press Looper Play again or sometimes have to stop the looper and run again to hear the sample. With this actions, the sequencer became unstable randomly

raspy135 commented 1 year ago

I see so it could be some CPU usage issue? I'll check your session file.

raspy135 commented 1 year ago

I can't download the ZIP. Can you send me the file to info@nunomo.net?

artqcid commented 1 year ago

Sorry my last tought was wrong. Only occurs if connected to MIDI J-6. it seems that i only can choose the MIDI Channel where the J-6 send midi notes. But cannot turn this of. I have the receive channel on the Qun set to 1 and the send channel on the J-6 on 16. So it dont affect the Qun Synth. But maybe it gets the Data on Channel 16 and get weird because of that?

I will send the file to your email

raspy135 commented 1 year ago

I ran midi clock from Keystep pro for 10min + and it was quite stable with 4.04 firmware. I sent sequencer pattern and running internal sequencer at the same time. The timing is always synched.

MIDI clock is not related to MIDI channel. and small MIDI traffic should not cause the failure. In my test I send sequence message and CCs but it was fine.

I don't have J-6, but Roland's MIDI clock implementation has issue sometimes. For example MC-101 has one clock drift when it's set to slave. Do you have any other hardware can send midi clock?

raspy135 commented 1 year ago

Thanks for your file.

I think I got your issue. I don't see any sequencer delay or drifting, however looper is drifting. Looper should wait until the end of measure but I confirmed it's not waiting when it's MIDI close slave. It's a bug, I will fix it.

What BPM do you set on J-6?

artqcid commented 1 year ago

134.... The Loops should work with 134

artqcid commented 1 year ago

That should be the reason of ISSUE#5. It seemsThis ISSUE#6 dont occure since i set Revice Channel on Qun from 1 to 14. I dont know if a Unit (i have the TR-8 as Master and the J-6 sends midiclock trough) sends strange MIDI Data on Channel 1. I have to check this on MIDI OX later. But or now it seems the Sequencer stays stable. Really Strange.

By the way: since i have an empty Loop on Scene 1 (my "muting" Scene, the Loop Lengths of the other Scenes stay stable if i switch between Scene 1 to my other Scenes. But do i need this Empty Loop on Scene? Can you check what happens when we switch from all empty Scenes to filled Scenes? Mybe this was also a reason why sometimes it goes out of Sync. I know that this UseCase is not mentioned or planned. But should switching from empty Scenes to filled Scenes and Vice Versa sould work?

And thank you so much for your effort. I am also an C++ and JAVA Software Engineer and i know that a came up with strange Use Cases :)

raspy135 commented 1 year ago

I pushed v4.05 firmware includes the fix for #5. This might be also another observation of issue #5, so far I haven't seen sequencer timing issues.

raspy135 commented 1 year ago

When you selected an empty scene, the looper will stop. When you select other scenes, the looper will resume properly, with v4.05 firmware. I checked with your session 1, and it worked. BTW the voice recording is good, I added some drums on your loop and had some fun.

artqcid commented 1 year ago

Thx very much!!!!
I will observe also #5 with this Release!

artqcid commented 1 year ago

I think #5 is ok so far. I will test it further till tomorrow. But the Sync Problem of the Sequencer itself remains. After i while (Synced to MIDI Clock) the Sequencer gets weird. I have seen that the Sequencer starts to randomly change the Tempo. I will send a video where you can see that. Also (and that is more weird) the patch itself has changed (without tweaking) the LFO Rate is set from Original High speed to lowest speed. I double check if my other units send some CC, but they dont. If i disconnect MIDI Clock and start the Sequencer than the Tempo stays stable. But as far i switch to external Clock the Tempo of the Sequencer changes randomly. Only a restart of the Qun resolve this strange Clock behaviour. I tested 3 different Clock Sources as Master and it occure after a random time period on every Unit. It seem external clock Logic goes wild after a while and only restart resolve this behaviour.

I send the video mp4 with weTransfer

raspy135 commented 1 year ago

Seeing some BPM wobbling is normal. MIDI clock is not stable in general. It's possible the source of MIDI clock is too unstable for some reason.

I'm testing your session 1 and it seems stable with KeyStep Pro and Roland MC-101, with and without other MIDI messages.

artqcid commented 1 year ago

But sometimes it stops generally and also wobble to 20 Bpm..... i will try also other units as master. But why it runs smooth for a random time (like 20 Minutes) and then starts to get weird and dont go back to normal. For me it seems more that there is something happens in the midi logic and why it goes to good when i restart the unit. That seems nothing to do with the master unit, because a restart of the Qun doesnt affect the midi timing of the master unit. Looks more that the Qun became problems to calculate the midi timing randomly. It is to out much out of sync to be only a midi Signal problem. But ok, i will test it also with other Grooveboxes tommorow.

artqcid commented 1 year ago

I will test it also with different cables..... TRS and so on....

raspy135 commented 1 year ago

Oh I see it happens for the long time run more than 20 min? I can imagine this is a bug then.

artqcid commented 1 year ago

Oh I see it happens for the long time run more than 20 min? I can imagine this is a bug then.

Yes and it occurs from one second to the other. Its not going slowly out of sync. Instead after a random time its get weird from one moment to the next....

raspy135 commented 1 year ago

Let me double-check, can it be happened in first five minutes of sequencer running, or it only happens with over 20min run?

artqcid commented 1 year ago

It also happens after 5 Minutes. But mostly a little longer. It occurs while playing also with the Looper Sessions. I didnt let it run without any action from my side. I will do this now and see what happens or if it only occure when i tweak and change Looper Sections

raspy135 commented 1 year ago

I was loading scenes and changing buckets while I'm playing but it was stable. I'll try longer run

artqcid commented 1 year ago

It also happens that i stopped the sequencer and save some things (Session and so on) Then i start the master but the Sequencer doesnt start. I see the mark on the display that there is a incoming midi signal, but the sequencer never start again. i had to turn off and on the Qun and then all works as expected again

raspy135 commented 1 year ago

I haven't seen the issue in the past. It sounds like MIDI input process was messed up for some reason randomly. One possibility is that QUN receives some unexpected data, it messed up MIDI message processing. I wonder you can reproduce it with other midi devices.

artqcid commented 1 year ago

I will try it. Also i try to test with MIDI OX to look if my Units sends unexpected Data. And as i said i will try different cables etc. I will do it tommorow and give feedback. Hope its my fault ;)

raspy135 commented 1 year ago

MIDI implementation is actually not simple, it's possible QUN can't process some unexpected messages.

However the symptom sounds weird too, then it shouldn't be stable 20 min sometimes, so it could be MIDI current issue, something like J-6 doesn't have enough power to drive Qun's MIDI IN. I don't see the issue with any other devices, but If it is the case, using other device as a hub can solve the issue.

artqcid commented 1 year ago

Wouldnt suprise me because i think the current state of the J-6 or the Boutiques generaly are not really satisfactory

raspy135 commented 1 year ago

I ran your session 1 about 30 min, clocked by MC-101 and it was stable. MC-101's drum is aligned all times. MC-101 has full 5 pin DIN so J-6 might behave differently though.

raspy135 commented 1 year ago

I checked your video. Ignore BPM wobbling, it's just a snapshot of 1/48 measure. MIDI clock has a lot of jitter sometimes. but if you actually hear unstable beat this is an issue. Overall it could be electrical issue. I'd like to see the result with other devices.

artqcid commented 1 year ago

Hi i tested it with various other Gears and it seems that this issue only occurs often with the Roland J -6. I had the same issue with the Roland TR-08 only once after a very long period without any problems. It seems there IS an issue with the Midi In Part, but i cannot say when and why it occurs. I dont think that you can fix something on your side as long this Issue is not reproducable or confirmed with lots of other Gear.

raspy135 commented 1 year ago

I'll close this issue