Midi sync + clock issues

Home Discussions General Midi sync + clock issues

This topic contains 12 replies, has 3 voices, and was last updated by  moshang 2 years, 5 months ago.

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #2831

    bbk
    Participant

    Hello!
    First I want to say it´s a great piece of hardware and super fun and easy for music making, (multiboard, golf firmware)
    The problem I got is sync with other gear.
    When I try to sequence my OP-1 using the groovesizer as master clock and sequencer I get clock drift +- 2 bpm back and forth according to the OP-1. The reading in the first place is not even correct, if I set the bpm to 120 on the groovesizer the OP-1 gets a tempo of 118-119.
    If I use an external clock source which is relatively stable (old tr 626), the groovesizer instead refuses to respond to midi start command in a constant manner, it is on beat the very fist step and then rushes to the next step, getting out of sync immediately, it then keeps going more or less offbeat until stopped.
    Very frustrating and limits the usefulness a lot.
    Is this software related or is it a limitation in the arduino that causes this behavior?
    Otherwise it got great functionality and is loads of fun.
    /bbk

    #2832

    moshang
    Keymaster

    It’s a combination of factors – my inexperience being not the least of them! I’ve not been able to get reliable start on the Atmega328 based Groovesizers. On the faster Arduino Due based TB2, responding to start is not a problem. I think the issue with the MB and RED is that my relatively long loop and slower processor delay the response to the start command. As soon as I find time, I’ll try and make a short loop while the instrument is waiting for sync to see if that helps.

    #2833

    moshang
    Keymaster

    As for the unreliable BPM when outputting clock signals: these were my first implementations where I’m basically asking the processor to send clock signals please when it finds time and if it’s not too busy. It means other processes can have a higher priority, leading to inaccuracy in the clock. Starting with the Bravo firmware, the clock output is on an interrupt, meaning it fires exactly on time every time. I definitely need to update the clock on the Golf!

    #2844

    Tanoan
    Participant

    hello moshang,
    it would be very nice if it is possible to solve the sync and the bpm problem, then its possible to jam in sync with other machines.
    also, if the mb golf is synced to an external device and after i use the reverse pattern function the position jumps always to the first step and not to the actual step like it is when the mb is not synced externally. so it also gets out of sync.
    i like the mb concept, and its very nice to sequence the volca beats (or other drumcomputers) and make it swing.
    jonathan

    #2846

    moshang
    Keymaster

    Hi Jonathan,

    Thanks for your feedback. I’m hard at work overhauling the sequencer of the Golf firmware and it should be ready in the coming days. I’ve implemented an interrupt-based internal clock, so that Golf’s sequencer and master clock output are rock-solid.

    I’ve also implemented a short loop whilst waiting for MIDI clock so it should start reliably every time.

    I’m almost there – now I just have to see about fixing the new bugs I introduced while implementing the updated clock ;^/

    #2860

    bbk
    Participant

    Super!
    I really appreciate how you put effort in the MB although you got plenty of new projects going..
    This made my day!
    /bbk

    #2876

    moshang
    Keymaster

    Please try out the V026 firmware for the Golf. I think you’ll find it’s a big improvement.

    #2877

    bbk
    Participant

    Yay! will do ASAP when I get back from work!
    /Martin

    #2878

    Tanoan
    Participant

    hello moshang, thanks, thats great news.
    when i try to install the new firmware i get this error message:
    “This report would have more information with
    “Show verbose output during compilation”
    enabled in File > Preferences.
    Arduino: 1.0.6 (Windows 7), Board: “Arduino Mini w/ ATmega328″
    HelperFunctions.ino: In function ‘void bpmChange(byte)’:
    HelperFunctions:113: error: ‘Timer1’ was not declared in this scope
    Setup.ino: In function ‘void setup()’:
    Setup:7: error: ‘Timer1’ was not declared in this scope
    with the same sett”
    perhaps i missed something because i dont know that much about arduino.
    but with the same settings i can install the old golf version.
    jonathan

    #2879

    Tanoan
    Participant

    “‘Timer1′ was not declared in this scope” is the main error message i think.

    • This reply was modified 2 years, 5 months ago by  Tanoan.
    #2883

    moshang
    Keymaster

    Sorry, I forgot to add that you now need the Timer1 library installed for the firmware to compile. It makes it easier to work with the interrupts we need for the sequencer. I’ve reuploaded V026 with the library included in the Required Libraries folder.

    #2884

    Tanoan
    Participant

    thanks again, now its in sync. and the implemented time division is great. and even after playing a reverse pattern the sequencer jumps to the right position.

    #2885

    moshang
    Keymaster

    Great! Let me know if you run into issues.

Viewing 13 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic.