I am delighted to see a few more people using the tranzport, and also sorry that you are both having such trouble.
The problem with rapid movements of the shuttle wheel causing disconnects is presently well known. Basically, that generates too many interrupts for the current userspace driver to keep up with. (There are some things you can do to reduce the problem; I get to those in a second)
It’s not a solvable problem with the current architecture of the ardour interface, either. Ardour2 is basically using a single read/process/write loop, rather than threads for each. The symptom of having to press buttons twice is also an artifact of the single process loop.
Soo… for the past 2 months or so, in my spare time, I’ve been working on a threaded architecture, as well as Linux kernel drivers for both the tranzport and alphatrack.
Are you both using Linux? For linux, the kernel based driver for the tranzport is basically operational. It’s incredibly efficient. It never misses a keystroke or drops a wheel movement, and eats almost 0 cpu. It could use a smarter write buffer, and a less ad-hoc API - but that’s about it.
Unfortunately, the ardour2 component that interfaces to the kernel component is “not quite ready”, and even when ready, won’t work on the Mac until I get the midi interface done, which is after I get linux done…
If you would like to leap in and help in any way… I think there’s less than a week of solid effort required to solidify the tranzport interfaces for linux. I don’t have a “solid” week available, so it’s going to take longer if I keep at it alone. I’m readily available as mtaht4 on the irc.freenode.org as well as on the ardour channel.
In response to your other questions:
Re: Timecode - Presently the system displays Bars/Beats by default. When stopped, it shows a full beat display. When running, it shows a smaller one, so the meter can be bigger (and I/O can be less). Changing it to do minutes:seconds instead is a one line change in the code and a recompile… (yes, at one point soon it will be configurable) - basically change the show_bbt call to show_smpte inside of show_transport_time in lib/surfaces/tranzport/show.cc.
Re: What do you mean by “ardour hangs up”?
Re: Scrollwheel issues
There are some ways to alleviate, (not eliminate) the scrollwheel problem with the current code.
Run the usb interrupt at a high real time priority - lower than jack, and the audio interface, but higher than most everything else. For example, on my system
jack runs at 87, the usb interrupt runs at 86. If you have the tranzport on it’s own usb port, you can actually run the rt priority above jack.
Go gently on it. In many modes you don’t have to move the wheel very far to do something, speed up or slow down.
This problem is the #1 problem affecting the tranzport and it drives me bats, too, so it WILL BE FIXED… everytime I get frustrated I just spin the tranzport’s wheel madly on the box with the kernel driver, and say… “one day…”