Newton keyboard
Newton keyboardは、Newton MessagePad用の小さなキーボードです。
絶妙なデザインの製品。インターフェースは、特殊なのでそのままでは、PCにつながりません。
USBコンバータを自作する人とかもいます。
Arduinoで変換するのを見つけたのですが、キーリピートができないとかカスタマイズを自分でいろいろコードを書かないといけないというのがありました。でも、最近、TMK keyboardに対応しているTMK Keyboard for Apple Newtonのを見つけました。これなら、QMK対応もできるのではないか、そうすればRemapに対応できると便利になると思い、QMK対応にチャレンジです。
参考にしたサイト
要約
ここにソースコード、Newton keyboard USBコンバータのソース、ファームウェア、Remap用のjsonファイルを置きました
必要なもの
- Apple Newton keyboard (X0044)
- Pro micro 5V/16MHz
- PHR-6 コネクターハウジングと、Pro microとつなぐワイヤー
- Pro microとPCをつなぐUSB ケーブル
- はんだ付け版に必要なだ道具や、ワイヤーをストリップするための道具など
QMKをコンパイルする環境も必要ですが、ここでは省略させてください。
PHR-6 コネクターハウジングは、aitendoで買いました。
ファイル構成
最低限必要なファイルは、QMKのファイルとremapにキーボード情報を渡すjsonファイルです。
QMKのNewton keyboadのUSBコンバーター
QMKに必要な最低限のファイルは以下になります。それ以外に自分ようにカスタマイズしたファイルとかあります。
newton_usb
├── config.h
├── info.json
├── keymaps
│ ├── default
│ │ └── keymap.c
│ └── via
│ ├── config.h
│ ├── keymap.c
│ └── rules.mk
├── matrix.c
├── readme.md
└── rules.mk
- config.h: マトリックスのサイズを定義しています
- info.json: キーのマトリックスを定義しています
- matrix.c: Newton keyboardから送られてくるキーコードをマトリックスに変換しています
- readme.md: これはドキュメント
- rules.mk: コンパイルの定義ファイルです
- keymaps/default/keymap.c: マトリックスに対応するキーを定義しています
- keymaps/via: via/remapに対応するための定義です。keymaps/defaultをベースにvia/remapに対応に必要な設定を入れています
remap用のjsonファイル
newton_usb.json
- newton_usb.json: viaやremapで使うファイルです。キーボードのマトリックスとレイアウトが書かれています
コンパイル
コンパイルするにはいろいろ準備が必要ですが、ここでは省略させてください。
remapに対応するためviaのキーマップを利用します。via用のコンパイルは以下のような感じです。
qmk compile -kb converter/newton_usb -km via
または
make converter/newton_usb:via
できたファームウェアの書き込み
Pro Micro Web Updaterをありがたく使わさせていただいています
ハード構成
私は、Newton keyboardの内部にPro microを入れました。その時の情報です
Newton keyboard PCB/PHR-6 | Pro micro board |
---|---|
6 GND | GND |
5 5V | VCC |
3 DATA | RXI |
Newton keyboard PCB
-------.
| Pro micro board
|
PHR-6 connector .---|USB|---.
.------| | |
|6 GND +-----------------------------------.
|5 5V +-----------------------------------|-.
|4 | | | | |
|3 DATA+--------------------+RXI GND+-' |
|2 | | | |
|1 | | VCC+---'
`------| | |
| | |
| | |
FPC connector | |
.------| | |
| | `-----------'
VCCとか配線が間違っていないか確認します。間違っていると壊れてしまいます。念には念を入れて確認してください。
PCとの接続
PCにつなぐとUSBキーボードとして認識されキー入力ができるようになります
Remapによるキーマップの変更
Remapにアクセスします
「CUSTOMIZE YOUR KEYBOARD]をクリックして進むと「Connect your keyboard supporting the VIA feature to this PC.」と表示されます。
今回、USB対応Newton keyboardを接続します。
「+KEYBOARD」をクリックして進めてください。
ここも省略させてください。
さいごに
動いたのがうれしくて、丁寧に記事が書けてなくて申し訳ないです。