キーボードテスター
押したキーを表示し、効かない・固着したキーを点検
フルサイズのキーボード配列を画面に表示します。キーを押すと即座に点灯し、離すと緑色になります。効かないキー、押しっぱなしで固着したキー、同時押しの限界を目で確認できます。100%ブラウザ内で動作します。
最後のイベント:まだありません
確認のしかた
- このページのどこかを一度クリックしてフォーカスを与え、キーを一つずつ押してください。押している間は青、離すと緑に変わります。
- すべてのキーが緑になれば正常です。押しても色が変わらないキー = 効かないキー。
- 離したのに青のまま残る場合は、押し込みの固着(スティッキング・チャタリング)の可能性があります。
- 複数キーを同時に押しながらさらに押していき、「同時押しの最大数」を確認すると、Nキーロールオーバー(同時押しの限界)が分かります。ゲーミングキーボードは通常制限がありません。
- 画面上のキーをマウスでクリックすると、テスト表示のオン/オフを切り替えられます。「リセット」で全消去します。
メモ
- Fnキー、一部ノートPCのメディア・輝度キー、ブラウザやOSが占有する一部の組み合わせ(例: Ctrl/⌘ の組み合わせ、F11、PrtSc)はWebページからはHIT検出できないことがあります。
- ノートPCのキーボードは配列が少しずつ異なるため、画面の配列と完全には一致しないことがあります。重要なのは「押したキーが点灯するか」です。
- すべての処理はこのブラウザ内で完結し、サーバーには何も送信されません。
処理中…
0.0
停止していません。計算が終わると結果が表示されます。
キーボードテスターについて
画面の104キー(ANSI)配列は、キートップの文字ではなくブラウザが返す KeyboardEvent.code で点灯します。code は「物理的にどの位置のキーか」を表すので、日本語入力がオンでもオフでも、Qの位置のキーは常に KeyQ です。IMEを切り替えずにテストしてかまいません。
「同時押し最大」は、押したままブラウザに届いたキーの最大数です。キーボードのロールオーバー性能を見るためのものですが、その数字がキーボード自体の限界かどうかは、以下の仕組みを知ったうえで読む必要があります。
ゴースト現象とロールオーバー
多くのキーボードはキーごとに配線せず、行と列のマトリクスでスイッチを読み取ります。キーごとにダイオードがないと、長方形の3つの角のキーを押したとき4つ目の角も押されたように電流が流れる「ゴースト」が起きます。これを防ぐため、コントローラーはその組み合わせの入力を捨てます(ブロッキング)。3キー押した状態で4つ目が点灯しなければ、たいていこれです。
ロールオーバー(KRO)は同時に押しても全部認識されるキーの数です。修飾キー(Shift・Ctrl・Alt・Win)は別系統で読む製品が多く、組み合わせで結果が変わります。ゲームで実際に使う組み合わせ(WASD+Shift+Space など)で測るのが意味のある方法です。
6KROとNキーロールオーバー:USB規格から来る数字
USB HID のブートプロトコルのキーボードレポートは8バイトで、修飾キー8個をビットで表す1バイト、予約1バイト、通常キーのコード6枠からなります。ブートモードで動くキーボードは通常キーを最大6個(修飾キーは別)までしか送れません。これが「6KRO」です。それ以上を送るには独自のレポート形式が必要で、これが USB の全キー同時押し(NKRO)です。
このツールで最大値が「6+押した修飾キー数」(例:8)で止まるなら、6KROモードの可能性が高いでしょう。ゲーミングキーボードには NKRO を切り替えるキー操作があるものが多く、BIOS互換のため初期値が6KROの製品もあります。ノートPC内蔵キーボードでは3〜4キーで止まる組み合わせがよくあります。
Bluetooth、KVMスイッチ、USBハブ、リモートデスクトップを経由すると、途中の機器の限界が先に出ることがあります。PCに直結して測り直してください。
key と code、日本語入力中のイベント
「最後のイベント」には key と code が並びます。key はいま入力される文字や機能、code は物理位置です。W3C UI Events の規格は code がロケールで変わらないと定めています。
IMEで変換中の keydown は isComposing が true になり、key は「Process」、旧来の keyCode は229になります。MDN は、変換の最初や最後の打鍵では isComposing が false なのに keyCode が229のままの場合があると注意しています。「変換確定のEnterでチャットが送信されてしまう」というWebアプリの定番バグの原因がこれです。このツールは code だけを見るので影響を受けません。
規格ではかなキーを Lang1、英数キーを Lang2 と定義していますが必須ではなく、OSやドライバーによっては届かないこともあります。Lang1・Lang2 が届いた場合は右 Alt・右 Ctrl の枠を点灯させるので、その位置にキーがない配列でも100%まで進められます。日本語キーボードの変換(Convert)・無変換(NonConvert)・カタカナひらがな(KanaMode)、¥キー(IntlYen)、ろキー(IntlRo)はこの ANSI 配列に描かれていないため「配列外の追加キー」と表示され、進捗とは別に「+ 追加キー N個」として数えます。表示されればキー自体は動いています。
Webページから見えないキー
Fnキーはほとんどの場合キーボード内部で処理され、PCに信号が届きません。ノートPCの輝度・音量キー、Windows の PrtSc(keyup しか来ないことがあるため、ツールは keyup でも印を付けます)、Ctrl+W や ⌘+Q などのブラウザショートカットはページより先に横取りされます。ツールは Ctrl・⌘ の組み合わせをあえて止めないので、ページから出られなくなることはありません。ウィンドウからフォーカスが外れると押下表示をすべて解除します。
例
ゲーミングキーボードで8止まり
- 入力
Shift+Ctrl を押したまま Q W E R T Y U- 結果
同時押し最大:8
修飾キー2+通常キー6。ブートレポートの6枠と一致するので6KROモードと考えられます。説明書で NKRO 切り替え方法を確認します。
ノートPCで4つ目が入らない
- 入力
Q・W・A を押したまま S を追加- 結果
S が点灯しない、最大3
ゴースト防止のブロッキングです。Q・P・Z・M のように離れた組み合わせなら4以上になることがあります。
日本語入力オンで A の位置を押す
- 入力
ローマ字入力で「あ」を入力- 結果
key: Process ・ code: KeyA
変換中の keydown は文字ではなく Process を返します。code は位置なので A キーが点灯します。
使い方
- ページを一度クリックしてからキーを1つずつ押します。
- 全キーが緑になるか確認し、変わらないキーや離しても青いままのキーを控えます。
- よく使う同時押しを足していき「同時押し最大」を確認します。
よくある質問
キーが二重に入力されます(チャタリング)。わかりますか?
押すたびに表示が短く2回点滅する、離したのに再び青くなる場合は疑えます。ただ数ミリ秒の揺れはブラウザのイベントでは正確に数えにくいので、メモ帳で同じキーを連打して文字が重ならないかも確認してください。
Fnキーが反応しません。
正常です。Fnはキーボード内部で処理され、PCにはイベントが届きません。
変換キーを押すと「配列外の追加キー」と出ます。
表示はANSI配列なので変換キーが描かれていないだけです。進捗とは別に数えるので100%の妨げにはなりません。メッセージが出ればキーは動作しています。
NKRO対応なのに最大値が低いです。
Bluetooth、ハブ、KVM、リモート接続を経由していないか、NKROモードがオンかを確認してください。
出典
- W3C — UI Events KeyboardEvent code Values
- W3C — UI Events(isComposing)
- MDN — Element: keydown event(IME変換と keyCode 229)
- USB-IF — Device Class Definition for HID 1.11(Appendix B, Boot Keyboard)
基準日: