(多分) AlwaysInnovating の公開している TouchBook に USB の GPS レシーバを内蔵して GSP ロガーとして使っている動画です。
公道を走っているように見えますが、PC を操作しながら、よそ見しながらは危険ですよ・・・

2010.02.05 Fri l 未分類 l コメント (0) トラックバック (0) l top
TouchBook で D02HW を使い e-mobile に接続する方法です。今のところ接続・切断はコマンドを実行する必要があります。

まず設定ファイルを作成します。ターミナルから以下のコマンドを実行してファイルを作成、編集します。
vi /etc/ppp/peers/emobile

user "em@em"
connect "/usr/sbin/chat -v -f /etc/ppp/peers/emobile_chat -T *99***1#"
/dev/ttyUSB0
115200

noipdefault
usepeerdns
defaultroute
persist
noauth


vi /etc/ppp/peers/emobile_chat

ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
ECHO ON
SAY "Connecting"
TIMEOUT 15
"" "\d\d\dat\r\dat"
TIMEOUT 5
"OK-\Kat-OK" "at"
OK "at&FE1V1X1&D2&C1S0=0"
OK "at+ipr=230400"
SAY "Let's go"
OK "atdt\T"
CONNECT ''



デフォルトではデバイスファイルが存在しないので、最初にデバイスファイルを作成します。
mknod /dev/ppp c 108 0
あとは D02HW を TouchBook に接続し、もし無線 LAN が接続済みの場合は
/etc/init.d/ai-networking stop
と実行して無線 LAN を停止します。また、なぜか DNS 設定を取得できないので パブリックな DNS サービス のアドレスを使用して名前解決をします。
cp /etc/resolve.conf /etc/resolve.conf.back
vi /etc/resolve.conf

nameserver 8.8.8.8
nameserver 8.8.4.4

これで準備は完了なので、次のコマンドで接続します。
pon emobile
と実行すれば e-mobile に接続します。切断するには
poff emobile
です。切断後は必要に応じて
/etc/init.d/ai-networking start
として無線 LAN を開始して下さい。必要なら resolve.conf も書き戻します。

GUI から接続・切断ができると便利なのですけどね。AI OS のネットワーク設定アプリは python やシェルのスクリプトなので、適切に修正すれば対応できそうな気がしますが。
一応、VERISON (だったかな?) や AT&T らしい接続の設定はされているので、そこに割り込ませればなんとか・・・と考えています。

ついでに内蔵できないかな、と思いましたが
20100203369.jpg
さすがに無理ですね。面積が足りたとしても、厚みがまったく足りません。USB スティックタイプのモデムならいけそうですが。。。
2010.02.03 Wed l TouchBook l コメント (0) トラックバック (0) l top
そろそろ使い始めて一ヶ月が経とうとする TouchBook ですが、実は到着直後から Bluetooth が認識しないという問題がありました。
lsusb コマンドなどを使ってもまったく検出されず、空いている別の USB ポートに手持ちの Bluetooth ドングルを接続してみると正常に認識されるので、内蔵のドングルに問題があるのかと思っていました。
そこで、TouchBook のオープンなハードウェアであるという特性を生かし、内蔵の Bluetooth ドングルを外して正常に認識した手持ちのドングルを接続してみたのですが、なぜか今度は認識しませんでした。

いろいろと試した結果、もともと Bluetooth ドングルの接続してあった USB ポートに問題があるという結論になりました。そのポートは USB メモリなどを接続しても反応しないので、完全にポートが動作していない状態でした。

とりあえず内部に一つ空きの USB ポートがあるので、そこに Bluetooth ドングルを挿して使っていたのですが、気が向いたので分解してよく確認してみました。すると、
usb-port.jpg
かなり見づらいですが、一番右の端子が基板に接しておらず、手前で折れ曲がってしまっています。テスターで測ったところ、やはりこの端子だけ導通がありませんでした。
無理矢理はんだを盛って端子を接続して、導通があることを確認して再び組み直したところ、このポートでも正常に Bluetooth が認識されるようになりました。
これで空き USB ポートができたので、何かデバイスを内蔵させようか検討したいと思います。

20100201361.jpg
分解したときにとった、基板の裏側です。本当にヒートシンクの類が使われていないのですね・・・PC と思って見てしまうと、ちょっと不思議な感じがしてしまいます。
ちなみに基板を固定するネジにタッピングビスが使われています。あまり何度も着脱しないほうがいいのかもしれませんね。
分解の仕方は、AlwaysInnovating の wiki に書いてありました。
2010.02.01 Mon l TouchBook l コメント (0) トラックバック (0) l top
SmartQ5 の新ファームウェアがリリースされましたね。Android 2.0 のプレビュー版のみのリリースかと思いきや、1.5 の新バージョンも同時リリースでした。本当にご苦労様です。

とりあえず、SD カードから起動できる形式でリリースされたので 2.0 から試してみます。どうやら手動でパーティションの作成、ファイルの配置をする必要があるらしく、SD カードの使える Linux PC が必要と思われます。今回は Ubuntu を使って作業します。
8GB の SD カードを使うように記述してありますが、容量的には 1GB で十分です。今回は 1GB の SD カードを使用しました。

手順としては、SD カードにパーティションを二つ作成 > それぞれをフォーマット > 必要なファイルを配置する という感じです。

パーティションの作成:
まず SD カードのデバイス名を確認します。SD カードを PC の SD カードスロットに挿入してみると、自動的にマウントされると思います。そのマウントされたデバイス名を確認すればよいと思います。ここでは /dev/sdb が SD カードのデバイス名だったとします。
(ここでは 500MB ぐらいで二つに分けていますが、ルートパーティションは 200MB 程度でも足りそう。一つ目のパーティションは Adnroid のデータドライブとしても使われるので、多めにした方がいいのではと思います)
fdisk コマンドを実行します。
sudo fdisk /dev/sdb
(もし既存のパーティションが存在する場合は、d コマンドで全て削除します)
赤文字の部分が入力する文字です。

コマンド (m でヘルプ): p

ディスク /dev/sdb: 1019 MB, 1019215872 バイト
ヘッド 14, セクタ 45, シリンダ 3159
Units = シリンダ数 of 630 * 512 = 322560 バイト
Disk identifier: 0x0007145c

デバイス ブート 始点 終点 ブロック Id システム

コマンド (m でヘルプ): n
コマンドアクション
e 拡張
p 基本領域 (1-4)
p
領域番号 (1-4): 1
最初 シリンダ (1-3159, 初期値 1): (何も入力せずに Enter)
初期値 1 を使います
Last シリンダ, +シリンダ数 or +size{K,M,G} (1-3159, 初期値 3159): +512M

コマンド (m でヘルプ): n
コマンドアクション
e 拡張
p 基本領域 (1-4)
p
領域番号 (1-4): 2
最初 シリンダ (1666-3159, 初期値 1666): (何も入力せずに Enter)
初期値 1666 を使います
Last シリンダ, +シリンダ数 or +size{K,M,G} (1666-3159, 初期値 3159): (何も入力せずに Enter)
初期値 3159 を使います

コマンド (m でヘルプ): t
領域番号 (1-4): 1
16進数コード (L コマンドでコードリスト表示): b
領域のシステムタイプを 1 から b (W95 FAT32) に変更しました

コマンド (m でヘルプ): p

ディスク /dev/sdb: 1019 MB, 1019215872 バイト
ヘッド 14, セクタ 45, シリンダ 3159
Units = シリンダ数 of 630 * 512 = 322560 バイト
Disk identifier: 0x0007145c

デバイス ブート 始点 終点 ブロック Id システム
/dev/sdb1 1 1665 524452+ b W95 FAT32
/dev/sdb2 1666 3159 470610 83 Linux

コマンド (m でヘルプ): w
領域テーブルは交換されました!

ioctl() を呼び出して領域テーブルを再読込みします。

警告: DOS 6.x 領域を作成、または変更してしまった場合は、
fdisk マニュアルの追加情報ページを参照してください。
ディスクを同期させます。



フォーマット:
以下のコマンドでパーティションをフォーマットします。
sudo mkdosfs -F 32 -n "eclair" /dev/sdb1
sudo mkfs.ext3 /dev/sdb2
(もし mkdosfs コマンドがない場合、Android 上で SD カードをフォーマットすれば同じ結果になるかもしれません)

ファイルの配置:
一度 SD カードを抜き、再び挿入します。自動的にマウントされると思うので、もし自動マウントされない場合は
sudo /dev/sdb1 /mnt
などのコマンドでマウントして下さい。その場合はマウントポイントをマウントした場所に読み替えて下さい。
自動マウントされた場合、/media/eclair に /dev/sdb1 が、/media/disk に /dev/sdb2 がマウントされると思います。(他に USB メモリなどをマウントしている場合は /media/disk-1 になったりするので、その場合はマウント先を確認して下さい。)
まず起動イメージを書き込みます。SmartQ5-2_0-Android-20100201.zip を展開したディレクトリに移動し、
tar zxvf boot.tgz -C /media/eclair
(-C は大文字の C )
と実行します。次にルートイメージを書き込みます。
sudo tar zxvf rootfs-and-eclair-100127.tgz -C /media/disk
(同じく -C は大文字の C。また、/dev/sdb2 は ext3 なので、アクセス権限の制限の関係上 root 権限が必要)

これで SD カードの作成は終了です。あとはアンマウントして SD カードを SmartQ5 に挿入して電源を入れれば、起動メニューが表示されてドロイドアイコンを選択すれば Eclair が起動します。

Eclair を起動してみたところ、
無線 LAN は動作 OK
Bluetooth をオンにできない
Market が無い
タッチパネルのキャリブレーションができない
ブラウザが、デフォルトではページ全体を縮小表示する。文字は細かくて見えづらいですが、拡大・縮小はダブルタップでできるので、見通しがよくなったかも
スリープ時などのロック画面が変わった
縦表示のときのアクセラレーションはまだ効いていない? 1.5 よりはスムーズに動くような気もしますが、横表示の動きと比べるとやはり縦表示は動きが重たいように感じます
画面表示が 1.5 の Large Screen のように拡大された表示になる

まだプレビューということですが、今後は 2.0 に重点を置くらしいですし、完成度が高まることを期待しています。
2010.02.01 Mon l SmartQ5 l コメント (0) トラックバック (0) l top
いくつか AI OS 用の ipkg を作成したので、ファイル置き場 に置いておきました。
今回置いたパッケージは、
eb、ebview:EPWING 形式の辞書を使用するためのアプリ。辞書コンテンツは別途用意して下さい。
mitter:以前紹介した、python で書かれた twitter クライアント。
quicksynergy:synergy という、別の PC とキーボード、マウスを共有するためのアプリの設定を行うための GUI フロントエンド。synergy 自体は ipkg コマンドでインストールします。
uim、libiconv:日本語入力メソッド。uim は以前紹介したバージョンではなく、スナップショット版です。anthy だけでなく、SocialIME にも対応しています。anthy を使用する場合は、ipkg コマンドで anthy、libanthy をインストールする必要があります。

UIM から SocialIME を使用する方法です。
まず上記パッケージをインストールして、環境変数 LANG に ja_JP.UTF-8 を設定します。
その後、ターミナルから
uim-pref-gtk
と実行します。UIM の設定ウィンドウが開くので、「全体設定」で「標準の入力方式を指定」にチェックを入れ、「標準の入力方式」のドロップダウンリストで「Social-IME」を選択します。
もし予測変換を使用したい場合は、左ペインの「Social-IME (高度)」を選択し、右ペインで「予測入力を有効にする」にチェックを入れます。
これで「Apply」をクリックして「OK」をクリックすればウィンドウが閉じるので、UIM を起動して文字入力を行えば、Social-IME 経由で変換が行われます。
もし UIM のツールバーを表示している場合、変換エンジンのアイコンをクリックすれば変換エンジンの一覧が表示されるので、そこから Social-IME を選択しても可能です。(しかし、この場合は再起動したりすることでデフォルトの変換エンジンに戻ってしまうと思います)
uim-engine_list.png

予測変換をオンにすると、ローマ字入力でもキーを一つ押す度に変換候補が更新されるので、TouchBook だともたつく感じがあります。予測変換をオフにして、通常の変換操作であればほとんど違和感はありません。ただ、インターネットに接続していないと使えないでしょうけども。
Anthy よりも変換辞書が多い (その分不要な変換候補も多いですが) ので、使い方によっては便利かもしれませんね。
2010.01.31 Sun l TouchBook l コメント (2) トラックバック (0) l top