Author Topic: (Another) Programmable k/b from Maltron  (Read 3363 times)

0 Members and 1 Guest are viewing this topic.

Offline Proword

  • Thread Starter
  • Posts: 237
  • Location: Perth, Western Australia
Maltron 3D Dual Hand (x4)
Maltron 3D Single Hand (x2 - L & R)

Many people think their lifestyle comes at a cost - but they are quite cool with that as long as somebody ELSE pays it.

Offline sordna

  • Posts: 2248
Re: (Another) Programmable k/b from Maltron
« Reply #1 on: Wed, 06 February 2013, 19:12:53 »
Interesting, a Maltron with a teensy inside!
There's a relevant thread on Deskthority about it:
http://deskthority.net/news-reviews-f4/maltron-has-sold-it-s-first-programmable-keyboard-t4043.html

But I think our thread here should be moved to the ergonomics area
Kinesis Contoured Advantage & Advantage2 LF with Cherry MX Red switches / Extra keys mod / O-ring dampening mod / Dvorak layout. ErgoDox with buzzer and LED mod.
Also: Kinesis Advantage Classic, Kinesis Advantage2, Data911 TG3, Fingerworks Touchstream LP, IBM SSK (Buckling spring), Goldtouch GTU-0077 keyboard

Offline Lanx

  • Posts: 1915
Re: (Another) Programmable k/b from Maltron
« Reply #2 on: Wed, 06 February 2013, 20:46:06 »
lol picture is so small, it's like a thumbnail! even on the maltron site.

Offline sordna

  • Posts: 2248
Re: (Another) Programmable k/b from Maltron
« Reply #3 on: Wed, 06 February 2013, 20:55:22 »
Here you go:




BTW thanks to mkawa for moving this thread under ergonomics!

Note in the last photo how switches with integrated diodes are used, but left unsoldered! I wondey why !?!? Will this keyboard have ghosting issues now?
Kinesis Contoured Advantage & Advantage2 LF with Cherry MX Red switches / Extra keys mod / O-ring dampening mod / Dvorak layout. ErgoDox with buzzer and LED mod.
Also: Kinesis Advantage Classic, Kinesis Advantage2, Data911 TG3, Fingerworks Touchstream LP, IBM SSK (Buckling spring), Goldtouch GTU-0077 keyboard

Offline Lanx

  • Posts: 1915
Re: (Another) Programmable k/b from Maltron
« Reply #4 on: Wed, 06 February 2013, 23:50:10 »
eh maybe the teensy matrix just didn't use it, my first mod i used a logitech controller for all my switches and i never ghosted. heck my second mod didn't even have diodes either, it's all in the matrix i guess.

Offline Bespoke

  • Posts: 9
Re: (Another) Programmable k/b from Maltron
« Reply #5 on: Mon, 18 February 2013, 02:05:51 »
Argh, I told Stephen Hobday at Maltron about this problem March 17, 2012. It doesn't matter to me, since I already fixed my keyboard, but I'm disappointed to see they're still not fixing their new keyboards.

Lanx, without diodes, you'll always get ghosting, or have to use blocking to prevent it. You can wire the matrix such that the blocked key combinations are ones that you rarely type, so you don't run into the problem, but that doesn't eliminate the problem.

Here's my March 17 message to Maltron, which explains it:

Important recommendation for all of your keyboards
Enable the Maltron layout on one of your keyboards, then try typing the word "tan" by pressing and holding each key (so you have 3 keys pressed simultaneously when you get to "n"), then release the keys in reverse order (i.e. release "n" first). Notice that the "n" doesn't register, assuming your standard keyswitch wiring is the same as on my custom keyboard. Try the trigraphs "sta", "tio", and "sor", and any permutation of each of them (e.g. "sat", "tas", "ats"); same result: the last letter doesn't register. During fast touch-typing, it can happen that multiple keys are pressed at once, and failure to register all of the keys causes apparent typos. Properly registering all the keys is a feature called "n-key rollover", which is standard on high-quality keyboards. Your keyboards have only 2-key rollover, because in some cases (the particular cases are determined by the matrix wiring layout), such as the above trigraphs, they fail to register more than two simultaneous keys. It's important to fix this.
When the only electronic element of each key is the keyswitch itself, a keyboard scanning matrix exhibits a phenomenon called "key ghosting", whereby pressing certain combinations of 3 keys will cause a 4th key to electronically appear to be pressed, even though it isn't physically pressed. The nature of the matrix is such that the controller can't tell the difference. Registering the unpressed 4th key would obviously be a mistake, so to avoid it, the controller has a feature called "key blocking". Unfortunately, since it appears to the controller that 4 keys are pressed, it has no way to know whether 4 keys are really pressed or only 3 are, and in the latter case, it has no way to know which of the 4 apparently-pressed keys is the unpressed "ghost" key. Therefore, to avoid registering ghost keys, the controller has no choice but to block, i.e. avoid registering, the 3rd (and 4th) keys; only the first two keys are registered, because it's better to fail to register a pressed key than to register a key which isn't actually pressed. In other words, the controller implements only 2-key rollover.
The solution to this problem is to put a diode in series with each keyswitch; then the scanning matrix no longer exhibits key ghosting, so no key electronically appears to be pressed unless it actually is pressed. Since the controller can therefore always correctly see exactly how many keys are pressed, and exactly which keys are pressed, it doesn't have to perform key blocking, but instead can always register every pressed key. In other words, the controller implements n-key rollover.
The reason that cheap keyboards don't have n-key rollover is that diodes cost about one cent each, so a diode for each keyswitch would add about one dollar to the cost of the keyboard, which isn't cost effective for a $5 keyboard, since it would increase the price by 20%. But for your keyboards, which cost hundreds of dollars, one more dollar is less than 1%, which is cost effective. Ironically, the keyswitches which you used in my keyboard actually do have diodes built into them, but you left the diodes disconnected.
I recommend you implement n-key rollover in all hand-operated keyboards which you sell in the future. It's easy to do, and the added value is much more than the added cost. All you have to do is use diodes, and disable the key blocking feature in your controller.

Offline Proword

  • Thread Starter
  • Posts: 237
  • Location: Perth, Western Australia
Re: (Another) Programmable k/b from Maltron
« Reply #6 on: Tue, 19 February 2013, 01:14:14 »
I've been using Maltron since 1986 and I've never seen that happen on any of my keyboards.

Which layout are you using?  I always use Malt.

Joe
Maltron 3D Dual Hand (x4)
Maltron 3D Single Hand (x2 - L & R)

Many people think their lifestyle comes at a cost - but they are quite cool with that as long as somebody ELSE pays it.

Offline Bespoke

  • Posts: 9
Re: (Another) Programmable k/b from Maltron
« Reply #7 on: Wed, 20 February 2013, 12:14:07 »
Joe, using Malt's layout, if you press and hold "t" and "a", then press and release "n", then release "t" and "a", you get the "n"? If so, then either they wired your matrix differently than they did mine, or they included the diodes. More likely the former. Instead of "tan", try "sci" or "pan"; maybe you'll run into the problem with one of those. I chose the "tan", "sta", etc trigraphs as my examples in order to make the problem more obvious, since those are ones you're likely to press simultaneously on Malt's layout. You won't ever accidentally press "s", "c", and "i" simultaneously on Malt's layout, but try it intentionally to see if you run into the problem. The problem is a characteristic of the keyboard wiring, not of the letter layout, so, for example, if you see the problem with "pan" on Malt's layout, then you'll also see it with "was" on Qwerty.

I use my Dlyz layout now, but the examples I gave are for Malt's layout. I verified the problem using Malt's layout last March, before I fixed the problem on my keyboard.