見出し画像

「きのう」と入力してるのに「きのおう」になっちゃう・・(チャタリングを予防した話)

こんにちはこぐまです。

前回以下の記事で紹介し、購入し、現在利用しているキーボード
「Perix PERIBOARD-732B」なのですが、どうも入力がおかしい時があることに気づきました。

それは、
「きのう」と入力しているのですが、
「きのおう」と表示されてしまうことが度々ある。
というものでした。

んで、そのまま変換のためスペースキーを押すので、
「昨日」と表示してほしいはずが、「気の王」と表示されて・・
どんな王様?wと一人突っ込みを度々入れておりました。

自分はタイピングがそれほど早いわけでもないですが、「きのう」が「きのおう」となってしまうことは過去に一度もなかったので、何かおかしいのかなと思い、以下のような記事にたどり着きました。

「チャタリング」というのですね。自分では押しているつもりがないのに、短い時間で複数回の入力がされてしまっている状況です。
「きのう」はローマ字で「kinou」ですが、それが「きのおう」と表示されるということは、「kinoou」と「o」が一つ多く入力されてしまっているのですね。
ほんとにそんなことがあるのか・・?と確認するためのソフトが、上記の記事でも紹介されている「ccchattttter」というソフトです。
(開発自体は止まっているようで、だいぶ古いソフトですが、問題なく動きます)さっそくDLして、実行してみました。

とてもシンプルです。

まず、DOWN-UP-DOWNのところは、50msとしたままで、ログのところにチェックを入れます。すると以下のようにログを表示する部分が拡張されます。

そうすると、ログ左側に、自分が入力したキーボードの入力結果(PCが受信した信号)が、シーケンスに表示されていきます。
ログ右側は、あれ「チャタリングしてない?」というお知らせです。
音とかも鳴らすことができるようです。

まず、50msのままで、「きのう」を連続で入力していきます。

文字の横にある msは、前に同じ文字が入力されてからどれくらい時間がたったかを示している(ミリセカンド)ようです。つまり、msの数が小さいほど連打されたということです。ほかの文字(K,I,N,U)はほぼ一定で1秒間隔(800ms-1200ms)くらいなのに、ある瞬間、「O」だけが62msとなっている部分があります。62msということは、0.06秒です。
「きのう(kinou)」と入力する途中で、こんなに早く「o」を連打することはできません・・。何回か試しましたが、大体49ms-69msくらいで発生することが多いようでした。

今回、DOWN-UP-DOWNのところは、50msとしたので、
50ms以内に入力されたものは、「chattering!?」と通知されます。
そして対応として、
「入力としては「きのおう」だったけど、50ms以内の入力だったので、無視して「きのう」として表示するね!」ということができるようです。
確かに、表示結果しては「きのう」になってます。

47msでチャタリング発生しているけど、表示は「きのう」になっている。

つまり、チャタリングの疑いを検知するだけでなく、その疑いがある閾値以下だったとき、表示させないように予防もしてくれるというのがこのアプリのいいところですね!

あとは、DOWN-UP-DOWNの閾値を、「きのおう」と表示されないくらいの
値にしてあげればいいわけです。いったん70msにしました。

これでもう一度やってみます。

70ms以下のチャタリング検知はできていて、表示もおかしくなっていませんね!(よくみると、UのあとにOが検知されてますね・・絶対押してないのに(笑))

ちなみに、ノートパソコン側のキーボードでどうように「きのう」を
100回ほど打ち込みましたが、一度も発生しませんでした。
なので、「Perix PERIBOARD-732B」の「O」のキーがおかしいということがほぼ断定できました。

上の記事にもありますが、一般的には、チャタリングが頻発する時点で、ハードがおかしいということなので、買い替えたほうがいいようですね。。
形はとても気に入っているので、残念です・・。

どなたかの参考になれば!
読んでくださってありがとうございました!

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?