[ardour-dev] Re: [Alsa-devel] Tascam US-224/428 MMC: Work in progress...

Sampo Savolainen v2 at iki.fi
Wed Jul 28 10:10:04 PDT 2004

I have wondered about the MMC locate feedback problem. I've come across
it with sxpress (my input device MMC controller software).

I have come up with this fix (? maybe?) to the problem:
 1) The controller keeps track of the most recent MMC-locate positions
    it has sent. Let's say within a second.
 2) If the controller receives a locate which is identical to a recent
    locate command, it ignores it. 

I haven't implemented this yet, what do you think? It is a bit kludgy.

A variation of the fix would be to keep the previous location in memory,
and ignore locates to that position. 

Can someone fill the gaps?


On Wed, 2004-07-28 at 19:24, Rui Nuno Capela wrote:
> I guess that's most likely due to something as a race condition between
> ardour and us428control: by turning the jog wheel a MMC-Locate command is
> sent to ardour, based on an internal absolute wheel position; then ardour
> updates its playhead and sends its own MMC-Locate back to us428control,
> which updates that very same wheel position accordingly.
> The problem is obvious: sometimes you turn the jog wheel quite faster then
> ardour's MMC-Locate feedback, causing some stumbling on the playhead
> cursor behaviour.
> Gotta solve this race but can't figure how right now. Any suggestion?
> Of course this happens only if ardour and us428control are wired as a
> MIDI-MMC closed loop, which will be perfectly normal IMO.

More information about the Ardour-Dev mailing list