Nothing useful to add but good luck to all with this.
Nothing useful to add but good luck to all with this.
“A composer is a guy who goes around forcing his will on unsuspecting air molecules, often with the assistance of unsuspecting musicians.”
SSD Dual drive MBP, VCI100SE, 2 MF's, Audio 8, Echo Audiofire 2, 2x1200's, CDJ800s, Novation Twitch, XoneS2, X1, tons of PA Gear.
We have all been bounced into announcing far too early, so we're trying all kinds of solutions to get the results we want.
This is the "R" part of R&D. The "D" part is when you're supposed to announce...
As the Pirate Radio DJs say, "Hold Tight".
Thanks for the heads-up Fatlimey, and thanks for the project. (I'm far to lazy to start hacking something like this)
Can we expect for the tool to be extensible (even if it requires recompiling)? The idea is to try and snatch some of the S4 features.
Many photons have died to bring you this information.
i'm thinking; is there a possibility to make a hardware solution for this? Using an Arduino and usb host shield or something?!
[edit]
I have enough gear at home to do a proof of concept with my S2. If i can get the Arduino to read the data given by the S2, i know it will also work for the F1.
Last edited by steffex; 06-13-2012 at 09:47 AM. Reason: adding my idea
Im not sure you can use arduino as a bus sniffer. IMHO, software solution would do just fine, there is no need to get the hardware involved.
Many photons have died to bring you this information.
Just a quick update. I spent a couple of hours reading about HID since this is my first time using the HID APIs. Using a Kontrol F1 and a basic command line app in OS X I wrote I'm accessing the device. This is kind of the opposite of what people are trying to do here I guess, which is send messages AS-IF your an F1, but I believe understand how to interface with the F1 natively will allow me to understand how to mimic it.
I'm happy this is all possible in user-space (i.e.; not more driver stuff), so it would be pretty trivial to write an app that uses the F1 as a general controller with HID messaging instead of MIDI. I'm not sure what the benefits of this are over standard MIDI mode for a 3rd party appellation since I haven't actually played with the F1 yet except for this little project.
What I want to know is why HID? It doesn't seem like there is a damn thing being done by the F1 that couldn't be done just as well with MIDI. Better even because MIDI is universal. Does anyone else think NI choose to use HID because of it's proprietary nature? If that is the case what does that say about the company going forward?
HID isn't proprietary, it's a standard USB protocol class, and they've made no attempt to obfuscate the data.
It comes down to bandwidth and resolution. HiRes MIDI is kind of a hack and it's a pain in the ass to program with. Running status, variable message size, sys-ex that can interrupt at anytime. It's an outdated protocol.
The F1 basically sends complete status dump with every update and can do so in <1ms with high resolution (16bit vs 7) for each control.
The real issue to be possibly concerned with here is that Traktor only exposes certain parameters to the F1. Interfacing with the F1 itself is actually pretty simple and much less of a headache for the programmer than midi.
Perhaps I am ignorant. I thought HID was largely device specific, is it not?
That sounds proprietary to me.A HID mouse is universal because every manufacturer uses the same HID paramaters. But non-standard HID controllers like the F1 are only useable by applications that know how to connect to the device. Final Cut will never add the F1 into their supported device lists, for example, so no matter how hard you try you couldn't use it to help edit video.
And I believe it works the other way too. NI developed a set of functions for the F1 that can only be activated by the specific HID data created by the F1. Remix decks should be impossible to use with any other device without rewriting it to match the HID data of the F1.
I understand that HID is quicker than MIDI because HID is always "on" while MIDI requires feedback from the device. I get that HID is better than MIDI for accuracy and expression. But...
I still don't understand. Why HID? What does the F1 do that it needs a hi-res interface? It's just a couple of buttons, sliders and knobs. The Launchpad and other MIDI devices are used by thousands of controllerists who seem to do just fine.
Last edited by spencer4hire; 06-21-2012 at 04:12 PM.
A HID mouse is a HID mouse because it's a mouse and applications that want to work with HID mice will do so. HID Mouse is a subset of the larger HID standard, which NI is compliant with. If NI made a Kontrol Mouse1, I'm sure they would use the HID Mouse standards.
The standards contain pre-defined types. USB for instance has USB Audio, USB HID, USB Camera, USB Serial com., USB Keyboard/mouse, USB Composite and then you can just have generic bulk and async, data transfers at various speeds. The last USB I worked with just used bulk transfers at a very specific data rate, and it wasn't even USB bulk compliant technically by the strict definitions of the standard.
Also, the F1 does work in MIDI mode, so this argument is completely moot.
The topic is why Traktor will only expose certain features to the F1 that can't be mapped via regular MIDI controllers
There is nothing odd or unethical about the F1.
|
Bookmarks