DIY 14 Bit Midi
DIY 14 Bit Midi Posted on: 24.05.2010 by Toby Suttles I'm looking at designing my own midi controller and I'm interested in finding out more about 14 bit midi. Hi-resolution faders and pots for everything just sounds super sweet to me. I can see that the Vestax VCI-300 and the Xponent both use this technology - and importantly that traktor can use it - but I can't seem to find much info in terms of midi DIY kits. Can anyone help me? | |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Carletta Riemer 11.12.2011 | Pretty sure the Xponent is a 10-bit fader. Just because they update it to send 14-bit messages doesn't mean the fader itself is 14-bit. 10-bit is certainly a step up from 8-bit, though, which is useless. Think of 10-bit faders as equivalent to 45 or 60mm analog faders and 14-bit faders as equivalent to a 100mm analog fader. A 10-bit 100mm fader will not respond to the smallest movements, though, as you see on the Xponent and Versadeck that too teeny a movement won't do anything... even in Deckadance with its three decimals visible. On a true 14-bit 100mm pitch fader, even the smallest motion will register and you never need worry about it not making a difference. If it |
Keli Vandenbergh 28.05.2010 | ... Cool. Maxforlive patch planned? ... |
Diogo Dj Dragão 28.05.2010 | On SCS.1, our main focus right now is internal testing of the Windows 7 driver. But we also have several new presets in the pipe and a new DaRouter as well. |
Diogo Dj Dragão 28.05.2010 |
...but if it is encryted sysex (like APC40) or plain and can do the work... COOL!
|
Keli Vandenbergh 28.05.2010 | ... Ok guys... then I believed that NS7/V7 (or better said ITCH) work with relative interrupting trought HID but if it is encryted sysex (like APC40) or plain and can do the work... COOL! About SCS.1d I have some love/hate relationship I can try it and I'm not sure if the issues were on soft or hard side but if Nemonic said that work in is progress... well count for my support. I prefer open platforms ever. If you can share more details or what kind of help do you need I will try to bring some net research or ask my teachers (I get wrong but because I'm the madman student ). About midi fighter and protocols, the 7bits or 14bits has a "bit" detail, almost in arduino or FDTI platforms (which emulate the serial port) because these packets are truncated (the biggers) and make it a bit "laggy", test will be interesting in different scenarios (crabbs, platter scratch and so on...). Also resolution is important and 7bits maybe is not enoght for fast scratching... we could try to (anybody remembers what kind of message sends rastieri scratcher?). In the other hand (Nemonic) at Traktor support for scs.1d you have another handicap: When stanton released "the system" NI dropped the sysex 14 bits timecode support at same version... it makes me believe in market wars (maybe I'm wrong again) and this is bad for final user. Let's continue talking because I'm interested so much on contiune learning. Thanks to all! ... |
Toby Suttles 28.05.2010 | me too. Thanks again. |
Corine Kasman 27.05.2010 | Very interesting conversation. I'm learning a lot! Also looking forward to the software opening to the advances in hardware. It feels like we are only really starting to scratch the surface of what controllers will eventually be able to do. Thanks, Phil. |
robert chanda 27.05.2010 | Mudo, keep asking questions! I have no problem with that, it really is the only way to learn. So long as you decide to listen to the responses you'll be fine, which you seem to be doing! Having programmed USB/MIDI at the low level in the Midifighter, I can't really see how much faster any other system could be. For each MIDI event we essentially wrap it into a 4-byte "packet" and add it to the USB "endpoint". An endpoint in USB is a 16, 32 or 64 byte piece of memory especially set aside for the USB device to hold messages for the Host. Once the 4-byte MIDI event is in the endpoint we can either flush the endpoint (by waiting for the Host to poll it for "bytes to consume") or we can continue adding MIDI events until the endpoint is full. Every keydown, CC change or input MIDI event are just these 4-byte packets stuffed into an endpoint. No device on a USB bus can do anything other than wait for the Host to pass by and pick up the data it has in the endpoints. Hosts do everything, devices do nothing but wait (but they can influence how often a Host decides to drop by for more information...) HID works in exactly the same way except it has a different packet layout and a different subsystem listening at the Host end of the USB cable. Pretty much the only difference between USB/MIDI and HID is how the Host reads and interprets the endpoint packets. There's nothing that designing a device can do to influence how your operating system has decided to support MIDI. With custom HID drivers, you can route the information more directly to your application. Another difference is that MIDI prefers values to be unsigned integers in the range 0..127, or longer values broken into 7-bit sections whereas HID is able to represent variable length information more easily and has representations for different numeric data types. As for the speed and latency? They're exactly the same. So, open and limited to some extent (but just as fast) or closed, tied to one particular application and requires drivers that are subject to "bit rot" over time. I'd go for MIDI every time. |
Diogo Dj Dragão 27.05.2010 | Serato is writing support for both HID and MIDI in their applications, but according to everything we've seen so far, the NS7 is communicating via MIDI - NOT HID. The SCS.1 controllers were developed several years ago, before anything like them existed in the market. They weren't working with something that was already in the market, so there were no standards to work towards. MIDI was the standard and a natural choice. They had working prototypes in 2007, and showed the SCS.1 system live and working at NAMM 2008. Throughout the development, they tried to choose open standards and give developers and users a platform to work with that was easy. That's why MIDI Translator was used for example. But our mistake (in my opinion) was not to target a single app instead of choosing the more open route. It meant that while we had the potential to work with a number of different programs, we were a master of none. This is where we are right now with the platter implementation on the SCS.1d. If you look at the raw output of the SCS.1d through something like the testing VST we developed, you can see that performance is solid. But just like the NS7 and the VCI-300, the SCS.1 controllers have trouble in apps like Traktor, partially because software hasn't caught up to the leap hardware has made in the last year. The great thing right now about the NS7 is that it has a program it was made specifically to work with (Itch). Any other application support is icing on the cake. We don't have that right now. There is a LOT of development going on right now on SCS.1. We're looking at a bunch of things we can do to make the SCS.1d a more solid performer. And I would argue that the SCS.1m is easily one of the most useful controllers out there. And I fully believe that the SCS.1d will grow into it's role as a platter controller and become something cool in the near future. We just have some work to do first. |
Keli Vandenbergh 27.05.2010 | ... Thanks Nemonic, I'm not pissed off, I said that I "understood" from the old discussion and I'm not defending HID over MIDI as a closed protocol, I love MIDI but it seems that Numark has MIDI for open solutions but HID for ITCH. They argue it is better for response and (based in my own research with arduino) I could understand why they say those. In the other hand I know you are involved in SCS.1d develop... is not? Then please explain me WHY is so crappy at scratching? It is due to platter itself and nothing to protocol? When some users where discussing at Ms. Pinky community about what protocol and why use them... we were talking the same doubts... I love when Fatlimeny or you correct me (somebody has to I'm only a madman advertiser xD) because there are some facts that not are clear and my argues focus on find answers. Without my wrong argues I will never find truth, sorry. My apologizes for booth and please if you (fatlimey and/or yourself) could bring some tech info about protocols, physical connections and so on... please share them! At last, as I said before: If you use an arduino (or any micropic based in FDTI chip) you will have a funnel because it is emulating a serial port. HID "seems" more fast than the other protocols and I believes it is due to kind of interrupt/message output. About close or open (I prefer open of course), well... I'm working on it and I will share my efforts, of course. ... |
Diogo Dj Dragão 26.05.2010 | The platter and "spindle" send separate messages - the platter sending a timestamp and the spindle sending a traditional relative message. There's also a message required to turn the motor on. |
Arcelia Siebeneck 26.05.2010 | so how does the motor control work on the NS7? |
Diogo Dj Dragão 26.05.2010 |
In addition to "physical" connections you must take in consideration "protocol" itself. Midi is serial one... the way how message are send and so on.
For regular uses Midi is far enough but for "scratch" scenario (i.e again) numark uses HID because it is far speed and best resolution and DVS use timecode/timestamp because Midi couldn't afford the specs (compare scs.1d with V7).
Mudo, ALL of your arguments here are red herrings that are obviously not researched. Normally I wouldn't bother replying to stuff like this, but I felt the need to in this case, because your assumptions hurt the future of controllerisim. HID is a black box environment, and users have little control over devices that use it. In some cases, that's acceptable (especially from a developer standpoint). MIDI is open, the protocol is well supported, and it's not as limited as your posts would have people believe. It's not limited to a specific speed or transport medium, it's fast (faster than protocols like OSC because there's smaller packets and less overhead), and it's not maxed out at a 14bit word length. I'm not trying to argue that MIDI is superior to HID or OSC. Honestly, I know of situations where I can see all 3 being appropriate to use. What I am saying is that you're maligning a protocol you obviously haven't researched at any length. |
Toby Suttles 26.05.2010 | Hey thanks for all the info. I didn't realise until this thread that the high resolution midi was strictly for pitch control. I was tossing up whether to include pitch control at all in my design. Would be great if EQs and volumes had higher resolution as well. 1-127 really isn't a lot of detail. |
Keli Vandenbergh 26.05.2010 | ... @Midifidler: In addition to "physical" connections you must take in consideration "protocol" itself. Midi is serial one... the way how message are send and so on. Obviously trought usb it becomes faster in data transmission but the protocol still is serialized in comparision with OSC (i.e) which has multicast options. For regular uses Midi is far enough but for "scratch" scenario (i.e again) numark uses HID because it is far speed and best resolution and DVS use timecode/timestamp because Midi couldn't afford the specs (compare scs.1d with V7). It is a issue with protocol itself not developed for "all". At last it is a debate done around the net and my conclusions are clear: HID best for scratch. OSC best for interfacing and multicasting. MIDI (sysex included) for the rest. And take in consideration the platform because if you want to use an arduino (i.e) the FDTI chip "emulates" a serial connection and again you have a "funnel" in data transmission, not in other platforms like CUI or 18f450 pics based, arms... etc. ... |
robert chanda 25.05.2010 | We really should do something about reverse engineering that VCI firmware. We have a disassembler, we have an assembler, we have a programmer. Should just be a matter of tracing what connects to which pins, seeing if there's a recognizable ABI, breaking the code into chunks based on calls/returns, finding the USB code to ignore, finding the I/O port reads and writes, and then mapping out the remains of this large amount of assembly to find the inner loops that read switches and writes USB/MIDI packets. Not enough hours in the day to do all the fun stuff I want to do! |
Adolf Hit 25.05.2010 | MUDO USB midi is not limited by the old RS-232 data transfer speeds, only old devices which use legacy midi din plugs are limited by this - you are confusing the hardware and software protocols. Unfortunatley for now 14 bit resolution is not much help in Traktor as only pitch supports it - hopefully they upgrade the EQ line and cross faders asap. I believe for most FX especially when in chained mode 7 bit is enough As a side note any device out there which currently supports 14 bit midi on its knobs/faders will actually only really have 10 bit resolution. That is the typical adc resolution of the device used in midi controllers, yes you can buy higher resolution ADCs but they cost a lot more, and the percevable difference between 10 bit and 14 bit on a knob is going to be nill. The VCI itself could be upgraded via firmware to support 14 bit midi (once again it would only really be 10 bit ) there is no software or hardware limitation. I would say vestax have an ulterior motive for not delivering this request |
Keli Vandenbergh 25.05.2010 | ... +1 ... |
Corine Kasman 25.05.2010 | What do you want to do with a 14bit controller? Remember that Traktor can only get any 14bit benefits on the pitch fader (search the 14bit VCI-300 jog issues in Traktor). Until the software can handle it, the hardware is not much use. DJTT looked into 14bit for the VCI-100 (it would have been firmware 1.4), but we have heard little about this in a year, I am guessing, due to the software limitations. Phil. |
Keli Vandenbergh 25.05.2010 | ... 7bits is not enough resolution for all and midi is not enough "fast" neither as serial dependant protocol but it is still usefull of course. Check the web with the battle MIDI vs HID vs OSC... ... |
Chara Ravine 25.05.2010 | For something simple as volume faders or eq knobs, you dont need hi-res midi, 7-bit works just fine. The only thing that needs 14bit is the pitch fader imo. |
Toby Suttles 25.05.2010 | Hey and thanks for all the links |
Toby Suttles 25.05.2010 | Still toying with the possibilities of design. I love the simpicity of these dj mixers .... http://www.electronique-spectacle.com/ ... I want to start my design with big fat rotary dials for all the fundamental controls (and if i have that level of control I'd like high resolution). Instead of the knobs for individual EQ I want to use minisliders like this vestax mixer http://www.sounds4uentertainment.co....s/resize-1.jpg Then include a small matrix of buttons to use for cue points - similar to a monome but probably 5x5 to keep it all compact. And I'd like to try doing pitch nudge with 4 x strip controllers. I have an inkling that this would be an intuitive way of doing it. |
Keli Vandenbergh 24.05.2010 | ... http://oscvstbridge.sourceforge.net/ ... |
Keli Vandenbergh 24.05.2010 | ... The first version CUI has some features in this way... it will be interesting if somebody port to the new CUI32x... About Hid2midi/osc... well if your believeing or use it with Traktor, ITCH or maxforlive you don't need to convert: Hid is the best way but you must need to code/script. If you need 14 bits (sysex midi) then you must code... and with software I advice you pure data (for bridgering from Hid2midi). some interesting links, ok! Check down in Firmwares... OSC, MIDI and HID... http://www.create.ucsb.edu/~dano/CUI/ it is 7 bits but interesting, don't you believe? http://www.casainho.net/tiki-index.p...MIDI+turntable And at last... what are you believeing on develop? ... |
Toby Suttles 24.05.2010 | Well this chip seems to run entirely on BASIC. Which suits me as proper low-level assembler type languages are something ran running and screaming from 10+ years ago when I studied it at uni. Might it be possible/easier to convert from HID or OSC to midi at the computer level? |
Amos Gmeiner 24.05.2010 | I'm still waiting for someone to build a more precise hardware setup in a VCI-100(SE) casing. That would make such an awesome mod. I have some low-level programming skills, but lack the soldering skills, time and money to build such a thing myself. |
Latia Pfleider 24.05.2010 | With midi only having 128 positons(as far as I know) this might not help much. *edit nevermind I believe I am wrong about that... 7bit is 127 |
Toby Suttles 24.05.2010 | Ok with a little more indepth searching I believe this - http://code.google.com/p/cui32/ May actually do what I'm looking for. Seems like this particular chip can be setup to do a whole lot of things though. I am feeling a little out of my depth but it is relatively cheap and it doesn't require any usb->serial devices or anything like that get started hacking. hmmmm |
<< Back to Reviews of DJ equipment Reply