iPhoneにシリアルポート

iPhoneがシリアルコンソールになれば、色々便利かなぁ~と思いながら少し調べて見た。
意外とありそうでないのが不思議...(簡単すぎるから?) とりあえず折角なのでメモ書いてみます。

シリアルポートの利用方法はいろいろと模索されている人たちが居られて、どうやらiPhoneのドックボートに、そのままシリアルの信号が出ているようでレベルコンバータをかませたら使えそうです。

問題はターミナルソフトなのですが、これも幾つか有るようです。
最初に見つけたのがjerm(jerminal)と言うソフトで、シリアルボートをTCPボートにリダイレクトしたり出来るようで、多機能かつで使い易そうでした。そして、コンパイル済みのバイナリを置いてくれているのを見つけたのですが、私の環境ではライブラリが無いとか言われて起動出来ませんでした。
そんなわけで、結局Cydiaで入手出来るminicomを使う事にしました。

ソフトの目処がたったところで、Dockコネクタをシリアルボートに変換するケーブルが無いと始まりませんので、作って見ました。
コネクタを入手してしまえば、後は別に難しい所は無く、先人の資料などを参考に組み立てるだけです。


MAX232系(3.3Vにも対応しているSipex SP3232CPEを使いました。)のレベル変換ICを介して、Dockコネクタ側が 1.12,12,18ピン(Tx,Rx,GND,+3.3V)
D-Sub9Pin側が2,3,5(Tx,Rx,GND)に接続します。

回路的にはこんな感じ

20090911-cir.jpg

 

ICの電源はiPhoneからもらう事にしました。また先人のサイトにはあるピンにパルスを入れないといけないとか、抵抗で分圧しろみたいな記載が有りましたが、私の所では特に必要有りませんでした。(OS3.1だからかな?余り新しい情報は見当たりませんでした。)

こんな感じで、組み立てて...
20090911-1.JPG
20090911-2.JPG
D-Subコネクタ側にレベルコンバーターを押し込んでみました。

出来たケーブルは、こんな感じになりました。
20090911-3.JPG
 
20090911-4.JPG
まぁ、これぐらいなら鞄に放り込んで持って歩けるかなぁ。

さて、ソフトでの通信試験もやってみました。
20090911-5.jpg
送信に若干タイムラグが有るもののちゃんと動作しました。
ルーターなんかの初期設定なら充分かな?(って時間が!(爆 )

さて、このMinicomですが画面が狭いと起動してくれない様子。 "Your screen is too small"なんて言って動きません。ググってたらソースが転がっていて10行40桁以上のスクリーンがないと起動しない様子。Cydiaで入れたターミナルの場合、横画面ではダメで縦画面にすれば何とか動く様子。
あとは、この画面のように自分にSSH接続してTouchTermt等のターミナルソフトを使えばうまく起動しました。

クロスコンパイル環境とか有れば、Jermとかももう少し試してみたいのですが... 時間がないので(?)ここまで!?

これでちょっとはiPhoneも便利になるかな?