スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Date: --.--.-- Category: スポンサー広告   

手書き文字認識

TouchBook に手書き文字認識のアプリを入れてみました。使用したのは Tegaki Project
認識エンジンとして zinnia を使用しており、なかなか軽快な動作で認識されます。



このままでは直接他のアプリに入力した文字を渡せません。入力ウィンドウ右上のアイコンをクリックすると、手書き入力した文字列がクリップボードにコピーされるので、アプリで貼り付けをする必要があります。(SCIM と連携する機能はあるようですが、現状 TouchBook で SCIM を動かせていないので tegaki を単独で動作させています)
動画中で誤認識されている文字がありますが、その文字をタッチすれば他の候補が表示されます。20100225.png
もしこの中にも正しく認識した文字がない場合、左下のアイコンをクリックするとこの文字を再入力することができます。

長文を入力するには面倒な気もしますが、検索ワードを入力したりする分には使えそうな感じです。貼り付け操作ではなく、直接入力できれば言うことはないのですが。。。

インストールするには・・・ちょっと一手間必要です。TouchBook の AI OS にインストールされている python は gzip や bz2 が有効になっていません。これがないと tegaki が動作しないので、gzip は python スクリプトなのでソースからコピーし、bz2 は python の再ビルドが必要そうだったので、tegaki のスクリプトを修正して bz2 を使わないようにしました。
また、zinnia のモジュールを再ビルドする必要があったりと少々面倒だったので、これも ファイル置き場 にパッケージを置いておきます。
tegaki 本体とは別に、手書き文字モデルを上記 Tegaki project のサイトからダウンロードして配置する必要があります。今回は zinnia - Japanese (all, light) のモデルを使用しました。light では無い方が認識精度は高いようですが、TouchBook の性能を考えて軽い方がいいかと思いました。
モデルをダウンロードし展開すると、いくつかのファイルがあるので、その中から hardwriting-ja.meta と hardwriting-ja.model の二つのファイルを /usr/share/tegaki/models/zinnia というディレクトリの下 (このディレクトリが無ければ作成します) にコピーします。
あとはターミナルから
tegaki-recognize
と実行します。
スポンサーサイト
Date: 2010.02.25 Category: TouchBook  Comments (0) Trackbacks (0)

Ubuntu9.10

そうとうに今さらな話題ですが、Ubuntu9.10 で SC3 へのインストールが (多少) 楽になっています。
元々 SC3 は grub からの起動に問題があり、grub を MBR にインストールしても OS を起動することができませんでした。そのため、Windows のブートローダーを利用したりする手間が必要でした。

しかし、Ubuntu9.10 で標準のブートローダーに採用された grub2 は、そのような問題がありません。そのまま MBR にインストールすれば、OS を起動することができるようになります。
もちろん、標準の HDD を使う場合は、MBR を書き換えてしまうとリカバリするのに CD 等からブートする必要があったりするので、あまりメリットはありませんが、HDD を交換して Ubuntu をインストールする場合などにはこれでかなり便利になると思います。

ちなみに、Ubuntu9.10 でも US15W のドライバは存在するみたいです。また、compiz の whitelist もドライバのインストール中に書き換えてくれるので、3D デスクトップも有効になります (Ubuntu WIKI を参照)
ただ、セキュリティアップデートなどでカーネルが更新された場合はその都度
sudo dpkg-reconfigure psb-kernel-source
を実行する必要があります。カーネルをアップデートした後に再起動すると X が起動しないですし、できることなら自動的にカーネルモジュールはビルドして欲しい所です。というか、カーネルに統合されてくれればベターなのですけどねぇ。。。

上記の手順で psb ドライバをインストールすると、再生支援を有効にした mplayer と adobe flash 10.1beta (こちらは Linux 環境では再生支援が効かないはずですが) もインストールされます。
しかし、mplayer は依存関係を無視しているので、そのままでは起動しない可能性があります。
その場合は、
sudo apt-get install libsvga1 libxvidcore4 liblzo2-2 libaudio2 libopenal1 libfaac0 libmp3lame0
と必要なパッケージをインストールすれば使えると思います。

adobe flash も dpkg などでインストールしたパッケージを削除してしまうので、flash のアップデートに注意する必要があります。今のところ Linux 版は 10.1 のメリットもあまり無いような気がしますし、あえてインストールする必要も無いように思うのですけどね。
Date: 2010.02.22 Category: SC3  Comments (0) Trackbacks (0)

コネクタ

middle-part.jpg
TouchBook の上部パーツと下部パーツを接続するコネクタですが、ヒンジ部分のカバーを外すと写真のようになっています。上に向いているコネクタが上部パーツに接続して、その左下から下部パーツへ向かうケーブルが接続されています。
で、AlwaysInnovating のサイト にはこのコネクターのピン配列が記載されています。
写真の右から
1. USB 5V
2. USB D-
3. USB D+
4. Common ground
5. 5V-shifted I2C SCL (GPIO_184 of the OMAP3530)
6. 5V-shifted I2C SDA (GPIO_185 of the OMAP3530)
7. V+ from the bottom battery
8. 5V from the bottom DC jack
となるようです。DC ジャックと USB ハブを内蔵するドックなんかを自作できそうな気がしてきます。

ただ、わからないのがこのコネクタの名称。どこかで一個や二個といった単位で買えるのでしょうか?
コネクタの規格名みたいなものでもわかれば、探しようもありそうなのですが。。。
ノート PC のバッテリーを接続するコネクタと形状は同じなので、探せばあると思いますが。
Date: 2010.02.20 Category: TouchBook  Comments (0) Trackbacks (0)

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

Date: 2010.02.05 Category: 未分類  Comments (0) Trackbacks (0)

AI OS で D02HW

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 スティックタイプのモデムならいけそうですが。。。
Date: 2010.02.03 Category: TouchBook  Comments (0) Trackbacks (0)

TouchBook を修理

そろそろ使い始めて一ヶ月が経とうとする TouchBook ですが、実は到着直後から Bluetooth が認識しないという問題がありました。
lsusb コマンドなどを使ってもまったく検出されず、空いている別の USB ポートに手持ちの Bluetooth ドングルを接続してみると正常に認識されるので、内蔵のドングルに問題があるのかと思っていました。
そこで、TouchBook のオープンなハードウェアであるという特性を生かし、内蔵の Bluetooth ドングルを外して正常に認識した手持ちのドングルを接続してみたのですが、なぜか今度は認識しませんでした。

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

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

20100201361.jpg
分解したときにとった、基板の裏側です。本当にヒートシンクの類が使われていないのですね・・・PC と思って見てしまうと、ちょっと不思議な感じがしてしまいます。
ちなみに基板を固定するネジにタッピングビスが使われています。あまり何度も着脱しないほうがいいのかもしれませんね。
分解の仕方は、AlwaysInnovating の wiki に書いてありました。
Date: 2010.02.01 Category: TouchBook  Comments (0) Trackbacks (0)

Eclair プレビュー版

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 に重点を置くらしいですし、完成度が高まることを期待しています。
Date: 2010.02.01 Category: SmartQ5  Comments (0) Trackbacks (0)
最新記事
最新コメント
ウィジェット
月別アーカイブ
カテゴリ
プロフィール

Author:SC3WO06A
FC2ブログへようこそ!


検索フォーム
RSSリンクの表示
リンク
このブログをリンクに追加する
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
最新トラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。