計画が最後まで進むかどうかかなり怪しい。
Last Updated 2004.09.07
キーボード解析情報を追加
TrackPoint好き(タッチパッドなんて大嫌い)の自分としては、ぜひともデスクトップでThinkPadのキーボードを使いたいと考えた。SpaceSaverKeyboardIIやUSBキーボードウルトラナビ付もいいのだけど、もうちょっと薄くて小さいものが欲しい。Googleで検索してみると同じようなことに挑戦している人がいた。そこで若松通商でたまたま安く放出されていたThinkPad T30用のキーボードを買い求め、使えるかどうか解析を試みた。

89キー+Fnキーに加え、特殊キーとしてThinkPadボタン、Volume UP/Down/Muteボタン、ブラウザキー(Back/Forward)、おまけに電源ボタンまでついている。TrackPointも装備しているが、さすがにUltraNavは付いていなかった。まぁ必要ないけれど。インジケータ部は窓だけで、LEDは装備していない。

裏面。金属板はしっかりとかしめられているので外すのは難しそう。キーボードと本体を繋ぐコネクタは日本航空電子工業のKX15-40K2Dのようだ。どこかで買えるといいのだけど。JAE八紘で1個から買えるようだ。本体への固定用の真鍮製スペーサは高さがあって邪魔なのであとでなんとかする予定。
まずは小基板になっているTrackPoint部分から解析。

TrackPoint周辺のキーを外し、ネジを3本外すと裏面の小基板が外れる。裏面に見えるネジは外す必要なし。

基板表面。TPM754はPhilips製のTrackPoint専用ICで、実は80C51系マイコンに専用コードを焼いたもの。LMC6034はOPアンプ。データシートを参考に端子との対応をとったものが右の写真。PS/2入出力かと思いきやプルアップはされていない。気になるのは、これらの端子(VCC、VSSは除く)が本体とのコネクタ部に直接出てきているわけではない、という点。一筋縄ではいかない。これはそのまま本体へのコネクタに接続されている。この基板だけならちょっとした外付け回路で流用できそうなんだけどなぁ。
…というわけでこの基板にコネクタとプルアップ抵抗を追加し、PCに繋いでみた。すると標準PS/2マウスとして認識された。動作もスクロールボタンも含めほぼ問題なし。ただしこのままでは独自機能が使えないので、ドライバをTrackPoint用に入れ替えようとしたけれど、「キーボードドライバもセットです」と言われたのでとりあえず断念。
参考になりそうなページを片っ端から見ていったところ、どうもスイッチマトリクスがそのまま出力されていて、この部品上ではデコードまでは行っていない模様。そこで一つずつキーを押してはテスターを当てるという単純作業を繰り返し、以下のような対応表が得られた。形式は参考にしたページにできるだけ合わせてある。赤字の部分しか確認していないが、残りも恐らくあっているであろう。これを元にキーボードコントローラを作成する予定。
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | |
| 1 | Esc | F4 | g | h | F6 | 前候補 | : | F5 | ThinkPad (WWW Home?) |
Alt(L) | Up | |||||||
| 2 | Tab | F3 | CapsLock | t | y | [ | F7 | @ | Shift(L) | BackSpace | Volume Down | |||||||
| 3 | q | e | w | r | u | i | o | p | \ | Volume Up | NumLock | |||||||
| 4 | 半角/全角 | F2 | F1 | Ctrl(L) | 5 | 6 | ^ | F8 | - | F9 | Delete | PageUp | Insert | Home | ||||
| 5 | a | d | s | f | j | k | l | ; | Mute | |||||||||
| 6 | 1 | 3 | 2 | 4 | 7 | 8 | 9 | 0 | F10 | F11 | PrintScreen | PageDown | F12 | End | ||||
| 7 | z | c | x | Ctrl(R) | v | m | < | > | ] | Shift(R) | Enter | WWW Back | Pause | |||||
| 8 | 無変換 | b | n | \(Back Slash) | カタカナ | / | Space | Down | Alt(R) | WWW Forward | Right | Left | ||||||
| 9 | Power | |||||||||||||||||
| 10 | ||||||||||||||||||
| 11 | Fn |
(以下、調査中・・・)
参考(文中でリンクしていないもの)