Author Topic: Key ghosting with Dvorak layout  (Read 549 times)

cge

  • Newbie
  • *
  • Posts: 5
    • View Profile
Key ghosting with Dvorak layout
« on: April 12, 2020, 05:37:58 pm »
I was quite happy when I purchased the Cosmo to see that it was advertised as supporting the Dvorak layout, but in using the layout, there appear to be significant key ghosting problems that make typing at speed (somewhat the point of the device) practically infeasible.

In particular, "the" registers as "thoe", which happens quite frequently, while "ing" registers as "in<UP>g", which is extremely problematic as it disrupts typing flow rather than just resulting in a fixable typo.  I'm willing to devote some time to fixing this, as the usability of the Cosmo is significantly hindered for me without a usable Dvorak layout, and I'd prefer to have a working device rather than having the purchase be a waste because advertised features are broken.  This problem seems like it is something that could be reasonably addressed in firmware, depending upon how key jamming is implemented.

Does anyone know the accessibility of firmware here?  Is this a situation where we are reliant on PC, or worse, the keyboard manufacturer?  I've let PC know about the bug through their bug reporting form, but was wondering if anyone here might know about the openness of the firmware, or other approaches to handling this.

Vistaus

  • Full Member
  • ***
  • Posts: 136
    • View Profile
Key ghosting with Dvorak layout
« Reply #1 on: April 13, 2020, 05:48:10 am »
I don't have any of your ghosting issues on my Dvorak Cosmo. The only issue I have is that keyboard shortcuts and long-presses for special characters are mapped to the QWERTY layout, which I reported to Planet a few months ago but they have yet to fix it...
« Last Edit: April 13, 2020, 05:49:14 am by Vistaus »

cge

  • Newbie
  • *
  • Posts: 5
    • View Profile
Key ghosting with Dvorak layout
« Reply #2 on: April 13, 2020, 03:09:53 pm »
Quote from: Vistaus
I don't have any of your ghosting issues on my Dvorak Cosmo. The only issue I have is that keyboard shortcuts and long-presses for special characters are mapped to the QWERTY layout, which I reported to Planet a few months ago but they have yet to fix it...

Hmm... if you try to create as bad of a situation as possible, and press t, h, and e at the same time, does an o register?  It may be that I am used to somewhat slurring my typing more than most people; if am very careful to separate my keystrokes, as though I am typing on a typewriter and need to avoid jams, I don't have the problem, but that slows me down considerably.

It would actually be somewhat encouraging if this is a problem specific to my device.  My Cosmo was not originally Dvorak (actually, PC shipped me a different keyboard layout, and potentially different model, than the one I ordered...) but they've assured me that all the keyboard layouts should be supported on it.

Vistaus

  • Full Member
  • ***
  • Posts: 136
    • View Profile
Key ghosting with Dvorak layout
« Reply #3 on: April 13, 2020, 04:27:35 pm »
Even if I type very fast or badly, the o registers just fine. So I think it's an issue with your device.

TapamN

  • Newbie
  • *
  • Posts: 1
    • View Profile
Key ghosting with Dvorak layout
« Reply #4 on: April 29, 2020, 03:49:58 pm »
Problems with typing fast seems to be inherent to the keyboard. It actually happens when multiple keys are pressed, maybe because you're typing so fast that the keys don't have time to fully raise.

On the UK/Psion 5 keyboard layout, I discovered these key presses generate extra keys when typed extremely rapidly or pressed at the same time:

Right Shift+TE -> TE[Shift+Up]
Right Shift+LT -> LRT
Right Shift+RL -> RLT
Left Shift+() -> ( C ) (Ignore the spaces between characters. It generates a left parenthesis, a capital C, then a right parenthesis with no spaces in between. The forum turns it into a copyright symbol if I try to type that without spaces)
tdf -> tdwf
Right Shift+SF -> S~F

I've tested on both a Gemini and a Cosmo (same layout), and they both do the same thing for all of these, so it doesn't seem to be a one-off device problem, but an issue inherit to the keyboard's driver, firmware, design, or something. I tried different keyboard and autocorrect settings, but they don't seem to have any effect.

I do coding on my device, so typing some of these are really common for me, like typing "()" for a function call with no parameters, and a C library I use prefixes all functions with TE. It's really annoying.

There's also a problem with tab activating caps lock, even when Fn isn't being held. If you just tap and release Fn, and the next key press is tab, caps lock will turn on even though Fn isn't being held. It can also happen as part of a key combination. Pressing Fn+Left Arrow to generate a home key press, then pressing tab to try to indent will instead turn on caps lock without registering a tab. This is another common key sequence when programming.

There seems to be a slight difference in the way caps lock registers when doing this. In Termux, if I press Fn+Tab to turn on caps lock, caps lock turns on and Termux brings up a menu, but if I press Fn, release it, then press tab, caps lock turns on without Termux opening the menu.

One issue I noticed the Gemini had that was fixed in the Cosmo is Alt+Tab turning on caps lock.

I don't know if this happens in Linux, I've only tried Android.

I wrote about these to the Cosmo tech support page about two weeks ago, so Planet Computers should know about this, but haven't I received a reply from them. Maybe this should be posted to the Astro Slide Indiegogo to encourage them to fix these problems?

Vistaus

  • Full Member
  • ***
  • Posts: 136
    • View Profile
Key ghosting with Dvorak layout
« Reply #5 on: April 29, 2020, 07:06:00 pm »
@TapamN I do have the issue of Alt+Tab activating caps lock on my Cosmo.
« Last Edit: April 29, 2020, 07:06:15 pm by Vistaus »

cge

  • Newbie
  • *
  • Posts: 5
    • View Profile
Key ghosting with Dvorak layout
« Reply #6 on: June 24, 2020, 12:17:18 am »
TapamT, did you ever hear back from support (I haven't)?  If the key ghosting problem is showing up even with commonly-sequential keys in qwerty layouts, like (), that's disappointing.

This type of problem is caused by poor/cheap keyboard matrix design, and then poor firmware/software mitigation.  It's baffling that a device whose key feature is supposed to be an excellent keyboard would have this problem, and that questions about it would receive no response.
« Last Edit: June 24, 2020, 12:29:55 am by cge »

abliss

  • Newbie
  • *
  • Posts: 18
    • View Profile
Re: Key ghosting with Dvorak layout
« Reply #7 on: September 01, 2020, 08:24:40 pm »
I had the same problem on Gemini, but this kernel patch fixed it entirely for me: https://github.com/gemian/gemini-linux-kernel-3.18/pull/2

abliss

  • Newbie
  • *
  • Posts: 18
    • View Profile
Re: Key ghosting with Dvorak layout
« Reply #8 on: September 10, 2020, 08:57:54 pm »
Good news! I have cherry-picked the anti-ghosting patch atop the 4.4 kernel here:
https://github.com/deadman96385/android_kernel_planet_mt6771/pull/1/commits/a95a8ddf71ed4806748a4809066a283b5436f3d2

And following the excellent instructions of drbytes [ https://www.oesf.org/forum/index.php?topic=36338.msg296577#msg296577 ], I was able to flash it on my cosmo. It works! The ghosting is gone, so now it's possible to type "the" in dvorak.