First off, thanks for all the responses! This list really seems to be working day and night!
In response to Ben Wheeler, > There are almost as many ways of encoding wheel motion as there are > controllers, but all of them (that I've ever encountered) agree on > this principle: One controller, one number (key or CC#). If you use > different numbers for different directions, your driver will not work > for the vast majority of software, including mixxx, without some > significant changes. > > IMO it is not the job of a kernel driver to interpret incoming > messages, only to translate them. Therefore I'd caution against > using some time-period logic to determine the velocity of the > wheel. It'd generally be better to simply translate whatever > messages come from the DM2 into MIDI, and let individual software > decide what they mean (and be able to tweak things like the time > period resolution, if the desired "meaning" in a particular piece of > software is "how fast was the wheel spun" -- bearing in mind that > in some other piece of software, the desired meaning might be > "how *far* was the wheel spun", or even some exotic combination > of the two.) > > That said, the sort of scheme you are talking about (what you > call "pulsed keypress" is widely used in other MIDI controllers, > but (a) it's generally a CC, not a keypress, and (b) values >64 > indicate clockwise, <62 anti-clockwise, 63 stop, and the distance > from 63 indicates velocity, rather than the frequency with which > pulses arrive. This is implemented as "spread64" midioption in mixxx > and has the advantage of configurable sensitivity. > Thanks very much for the explanation, and apologies for not having researched this better. I'll catch up on that. Of course, implementing the jogwheels in a standard way is what I'm after, so I'll do it this way. >> - Can this be integrated into Mixxx (by having a MIDI key run the cursor >> down or up in the playlist, and two more keys load the song into the >> left or right turntable >> > > No I don't think you can control playlist scroll or song loading from MIDI. > And in response to Adam Davison: >> > No I don't think you can control playlist scroll or song loading >> from MIDI. >> > > You can't at the moment. But it doesn't sound terribly painful to > implement once the midi messages are there. > Sounds encouraging, but it'll have to wait until the driver is stable. Anyway I believe that being able to load songs into the decks via MIDI would be a nice feature for many users, so maybe someone with better knowledge of the event handling in Mixxx might find the time..? In response to Alex and Albert Santoni: > I'll leave all the MIDI/jog wheel comments up to Ben and others because > I'm not familiar with it, but I will say that Andre Roth has already > been working on an ALSA MIDI driver for the DM2. The last time we spoke > he sent me this link to the latest version of his driver: > http://prophet.homelinux.org/~lynx/usbdm2/usbdm2-2007-10-15.tar.gz > > If you'd like to get in contact with him, email me off-list and I'll > send you his email. Alternatively, if Andre's reading the list, maybe he > can comment? > I should have said that I experimented with both Andre Roth's and Paul Bonser's drivers. Both seem to be dormant and unfinished. Andre's driver seems to have a memory leak, because it successfully froze my machine when testing, so I looked deeper into Paul's version first. So I've only deployed an email at Paul's and haven't yet contacted Andre, but that'll be next. Both drivers do not implement inner states of the controller. I feel that you need many CCs to control any useful application and the device should be able to "shift" the wheels into several different CCs to get the most out of it. The device can even notify on the current state by lighting LEDs under the buttons, so it should be quite nice. I agree with the view that a driver should only pass information through and not do too much interpretation, so state keeping and translating one CC into another might better be done by a user space MIDI translator. Regarding this, I have another question to all you MIDI equipment experts: - Is there any standard MIDI message to tell a device to turn lights on or off? I know there are several device specific MIDI messages but, again, I don't want to stray too far from the usual "way to do it". And in response to Alex again: If you could compile Paul's and Andre's drivers, and see if they manage to turn on the LEDs in *your* DM2, please pass me a message, because so far *my* DM2 did its best to keep me from seeing any sort of light... - Ján ------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4 _______________________________________________ Mixxx-devel mailing list Mixxx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mixxx-devel