geekhack

geekhack Community => Keyboards => Topic started by: bhtooefr on Mon, 01 February 2010, 13:29:44

Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: bhtooefr on Mon, 01 February 2010, 13:29:44
http://www.engadget.com/2010/02/01/microsoft-busts-out-sidewinder-x4-anti-ghosting-keyboard/

Quote
The Applied Sciences Group, an interdisciplinary research and development team that works across the Microsoft Entertainment & Devices Division doing applied research for Microsoft Hardware, Microsoft Surface and Xbox 360, developed the anti-ghosting technology with gamers in mind. The advanced technology takes anti-ghosting to the next level by allowing gamers to press up to 26 keys at once. Because each key is scanned independently by the keyboard hardware, each key press is correctly detected regardless of how many other keys are being pressed at the same time. The SideWinder X4 Keyboard excels where other keyboards fail, letting users execute key combinations and taking full advantage of their skill and speed.


Of course, it'll be rubber dome...
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: ch_123 on Mon, 01 February 2010, 13:32:27
Great job Microsoft. You've sort of managed to accomplish what IBM did by accident in the 70s.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Mental Hobbit on Mon, 01 February 2010, 13:53:06
Maybe this will put some pressure on other manufacturers to research that groundbreaking brand-new technology too.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: In Stereo! on Mon, 01 February 2010, 13:53:37
Quote from: ripster;155355

This is gonna put pressure on Logitech which is a good thing.



Oh yeah, so they won't have crap anymore ... but aggressively priced crap.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: itlnstln on Mon, 01 February 2010, 14:20:33
They are too busy with the on-screen display.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: didjamatic on Mon, 01 February 2010, 14:21:17
That board looks pretty clean for a gaming board, and I like how the F keys are smaller to shrink the board, but aren't so small that you have to look to use them.

(http://www.blogcdn.com/www.engadget.com/media/2010/02/microsoftkeyboardfeb2010.jpg)
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: D-EJ915 on Mon, 01 February 2010, 14:31:04
I like what sun did with the type 7, they got rid of the huge space in-between the F keys and regular ones but kept them the normal size.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: keyb_gr on Mon, 01 February 2010, 19:59:23
Now I only hope that reliability will be a tad better than with the X6... *cough* failing keys *cough*
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Xuan on Mon, 01 February 2010, 20:07:43
Quote from: webwit;155509
Sounds like you are coughing up keys. What did you do, eat them like soup?


It's the Keycap Pox
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: msiegel on Mon, 01 February 2010, 20:33:20
i'll bet they "cheated"... maybe attaching different resistances to the columns, or something like that :)
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: bhtooefr on Mon, 01 February 2010, 20:39:23
Remember, the Das III has 12KRO on USB... when it works...
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Mr.6502 on Mon, 01 February 2010, 21:28:54
Looks a rehashed Razer keyboard.  Wonder what the odds are they just reskinned a Tarantula?

Those could do more than 20+ keys at a time over USB using generic MS USB HID drivers.  And they had the other macro junk the press release refers to.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: bhtooefr on Mon, 01 February 2010, 21:43:25
Microsoft owns Razer now, so it's certainly plausible.

And, there's a way MS USB HID drivers could do it.

MS writes the drivers. 26KRO on their drivers, 6KRO for everyone else?
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Rajagra on Mon, 01 February 2010, 21:57:34
If it literally works the way they state - "each key is scanned independently by the keyboard hardware" - then that's about as simple as it gets. A separate input port for each key. I'm surprised it took an entire interdisciplinary research and development team to come up with that brilliant concept. Of course Microsoft doesn't talk literally to it's customers, it does everything possible to obfuscate what it is really trying to say. We're just stupid users, after all. So who knows what they really mean?
Quote from: bhtooefr;155531
And, there's a way MS USB HID drivers could do it.
MS writes the drivers. 26KRO on their drivers, 6KRO for everyone else?

We can only hope so. Once a new standard is set you can be sure it will be copied faster than you can say "reverse engineering".
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: bhtooefr on Mon, 01 February 2010, 22:15:19
Right, but I'd think a 104-pin (plus USB and power pins) microcontroller would be horrendously expensive, compared to just adding diodes. I'd be damn surprised if they weren't using row-column scanning.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Rajagra on Mon, 01 February 2010, 22:39:27
There could be multiple 8-bit buffers, and a simple microcontroller could output an address to determine which buffer is being read at a given time, or something like that. But yes, that would be more expensive than using a bunch of diodes.

The real problem is, does it use a membrane switches? If so there is no easy way to put the diodes in the right places. And by easy I mean cheap, which is the whole point of membrane switches.

Maybe it's a development of the analogue keyboard they showed off before? I'm still not convinced that can work reliably for normal typing.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: msiegel on Mon, 01 February 2010, 22:52:50
Quote from: Rajagra;155542
Maybe it's a development of the analogue keyboard they showed off before?

yeah, that's the ticket. they re-used that analog resistance technique to prevent the ghosting: a different fixed resistance for each key, maybe in a tiling pattern...

where's quadibloc (mr. combinatorics) to debunk this theory :)
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: ricercar on Tue, 02 February 2010, 00:14:49
Quote from: ripster;155511
I'm still curious how they get 26 keys with a USB limit


It's not a USB limit. It's a USB HID Keyboard driver limit. With a custom driver, the sky's the limit.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: kriminal on Tue, 02 February 2010, 06:03:16
my G15 didnt have nkro as far as im concerned... piece of crap imho
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: itlnstln on Tue, 02 February 2010, 07:57:43
Quote from: ricercar;155550
It's not a USB limit. It's a USB HID Keyboard driver limit. With a custom driver, the sky's the limit.

This.  Remember, this is a gaming 'board, so MS probably wrote some custom drivers and software for it, so it would seem plausable that the custom driver would allow the 26KRO.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Mr.6502 on Tue, 02 February 2010, 08:28:02
Quote from: bhtooefr;155531
Microsoft owns Razer now, so it's certainly plausible.

And, there's a way MS USB HID drivers could do it.

MS writes the drivers. 26KRO on their drivers, 6KRO for everyone else?


Ahh, didn't realize MS owns them.  That makes sense then.  As far as I can tell the Tarantula behaves like any other USB keyboard on other systems.  But on Windows XP through 7 using standard MS USB HID drivers it acts like the Razer software that it came with is installed.  I guess they integrated support for it with the standard drivers.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: keyb_gr on Tue, 02 February 2010, 11:04:45
Quote from: Rajagra;155534
If it literally works the way they state - "each key is scanned independently by the keyboard hardware" - then that's about as simple as it gets. A separate input port for each key. I'm surprised it took an entire interdisciplinary research and development team to come up with that brilliant concept.

Actually that kind of concept was already patented like 20 years ago. It would probably be a mess to route. If anything, the resistance-based key discrimination (US Patent 6577250) would be more likely.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: microsoft windows on Tue, 02 February 2010, 20:35:31
I bet that keyboard feels terrible.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: quadibloc on Tue, 02 February 2010, 20:50:43
Since many keyboards have custom drivers for their multimedia keys, including extra rollover - presumably triggered by a signal from the driver software, so the keyboard would follow the HID standard on bootup to be able to talk to the BIOS - is not hard.

I don't know how they will do it. Resistances, so that ghost keys are below a threshhold, are certainly possible; this would work, in practice, a lot like capacitance keyboards do.

You could have four membranes under the keys, with two different layouts, so that if you press enough keys to make ghost keys, the ghost keys would be different in the two cases.

Putting 104 pins on a chip isn't that impractical. Unlike trying to solder diodes to a membrane.

Of course, back in the old days, they used copper oxide to make diodes. One could print even very poor quality diodes on a memberane somehow, and make use of a small voltage drop to eliminate the ghost keys. There are many possibilities.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: bhtooefr on Tue, 02 February 2010, 21:02:35
For that matter, I have an IBM mouse that can run in two modes - boots up in IntelliMouse mode, but there's a driver that sends a command to make it run in full ScrollPoint mode, where the mouse sends raw TrackPoint data, and lets the host computer make sense of it.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Rajagra on Tue, 02 February 2010, 21:06:36
The doubt I have about Microsoft's resistive method is this. You have a complex network of many variable resistances connected together, hooked up to a small number of inputs and outputs. You can treat the data you read as a big simultaneous equation. Mathematically speaking, it may not be difficult to calculate which keys are being pressed and how hard. But from a practical viewpoint, the readings must be phenomenally accurate to get good results. Detecting one keypress is easy. Detecting two keys slightly more unreliable, but doable. But by the time you have 6, 12, or 26 keys down, the results become increasingly uncertain.

Hence: very easy to give a convincing product demonstration (as they did), very hard to make it work with fast typing where multiple keys are being pressed in rolling motions, where the order is important.

It's a bit like claiming a blurry photo can be perfectly sharpened if you know how out of focus it was originally taken. Mathematically, you can. In practice the accuracy and bit depth isn't sufficient to allow it.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: msiegel on Tue, 02 February 2010, 21:21:32
en... enhance?
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: sethstorm on Tue, 02 February 2010, 21:22:38
None.  The diodes are put in by overworked Chinese workers overseen by a corrupt Party official. Meitai, anyone?
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Megaweapon on Tue, 02 February 2010, 21:42:51
Quote from: msiegel;155789
en... enhance?


> type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340">[/youtube]
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Rajagra on Tue, 02 February 2010, 21:54:22
Quote from: msiegel;155789
en... enhance?


Tricks like unsharp mask are just an illusion, making the viewer perceive a level of sharpness without actually restoring detail.

Consider this picture of Albert Einstein:



I blurred it by applying a Gaussian blur of radius 12:



Looks a bit like Marilyn Monroe, doesn't it? This is how beer goggles work. You can get the same effect by squinting at picture 1.

If I try to 'enhance' the image by using unsharp mask with radius 12 strength 1 (not that these values are particularly relevant) I get this:



It looks a bit sharper and contrasty, but she won't be discovering new laws of physics any time soon.

Even though you know exactly how I made picture 2, you cannot recreate image 1 from it, because the file simply does not contain enough accurate information.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Bullveyr on Wed, 03 February 2010, 02:54:25
Hi guys!

I read geekhack occasionally for quite some time but as it seems nobody has posted this info yet (I'm dissapointed :D) I had the need to make an account.

Quote
The SideWinder X4 Keyboard is different because a small amount of carbon is printed at each switch site to prevent the key contacts from completely shorting rows to columns (see picture on left, below). Resistive multi-touch circuitry can then decode each key press independently. Because this is a relatively small change to the standard keyboard manufacturing process, Microsoft can offer true anti-ghosting at an unprecedented price point.


Source (with picture): MS Fact Sheets (http://www.microsoft.com/presspass/download/hardware/MSX4KeyboardFS.doc)

PS: I have no typing skills but I love me Filco tenkeyless linear for gaming (mainly because it's more compact than my 7G). :)
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Rajagra on Wed, 03 February 2010, 03:02:18
Thanks for the link. Confirms my suspicions, and my concerns in post 33 seem valid. I wonder how well these will work after a year or so of heavy use? Don't even think about liquid spills.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: JBert on Wed, 03 February 2010, 15:30:33
Quote from: Rajagra;155785
The doubt I have about Microsoft's resistive method is this. You have a complex network of many variable resistances connected together, hooked up to a small number of inputs and outputs. You can treat the data you read as a big simultaneous equation. Mathematically speaking, it may not be difficult to calculate which keys are being pressed and how hard. But from a practical viewpoint, the readings must be phenomenally accurate to get good results. Detecting one keypress is easy. Detecting two keys slightly more unreliable, but doable. But by the time you have 6, 12, or 26 keys down, the results become increasingly uncertain.

Hence: very easy to give a convincing product demonstration (as they did), very hard to make it work with fast typing where multiple keys are being pressed in rolling motions, where the order is important.

It's a bit like claiming a blurry photo can be perfectly sharpened if you know how out of focus it was originally taken. Mathematically, you can. In practice the accuracy and bit depth isn't sufficient to allow it.
Well, in their design a group of keys is scanned by measuring the voltage level over that group compared to ground.
If you print enough carbon traces on your membrane so that each resistor has an exponential value, you could use a standard ADC and treat the number you get from your ADC as a binary number: each bit of the resulting number corresponds with a certain key being pressed.

The larger the number of keys in a group, the smaller the measuring voltage tolerance is and thus the harder it becomes to measure the voltage accurately. But I'm sure they worked something out to do this, e.g. wire 4-6 keys to each circuit.

Multiple key presses are no problem as long as you get the scanrate right. ADCs can be selected at lots of rates so I don't see why it couldn't be done.
Title: $60 26KRO, or, how many Microsoft engineers does it take to put diodes in a keyboard?
Post by: Shuki on Wed, 03 February 2010, 15:31:50
Razer Tarantula can do over 10 keys rollover Turbo mode so this is nothing new.

Looks a nice layout, some mechanical switches and it could be a winner!