2010年8月27日金曜日

さよなら PSP (゜ーÅ)ノシ

 PSP を使ったデータロガーを作って運用していたのですが,カーナビを Android 携帯 (HTC Desire) にしたのをきっかけに,この PSP も Desire に置き換えて PSP を引退させることにしました.
 あと車載 PSP をやめれば,ちったぁマニアック度も下がるのではないかと.

 ということで夏休みの工作として開発していた Android データロガーがやっとこさ完成しましたヽ(´ー`)ノ
 ちなみに Desire に車速等のデータを送信するのに無線 LAN ルータを車載してます.無線 LAN ルータ積んだエリは世界初かもしれないw PSP 下ろしたところでマニアック度変わらねぇwww

と思ってたらすでにこんな製品があるんですねー → PLX Kiwi Wifi


↓せっかくなんで走行中の動作動画も撮ってみました

・動画のスピード表示は正確です.当 blog は全力で法を遵守しています
・タコメータはテスト用に 2倍の回転数で表示しています
・動画がブレブレなのはすみません(;´д⊂)

2010年8月22日日曜日

Powwwwwweeeeeeeeeerrrrrrrrrr!!!!

by ジェレミー

つうわけで,Fon を車載するにあたって電源周りを何とかする必要がある.Fon は AC アダプタ駆動なので DC-AC インバータを載せる手もあるが,ゴチャゴチャするのはいやなので,車の +12V をレギュレータで 8V に落として使用することにした.

で 7808 が欲しかったのだが当然手元には無く.通販で買うのも送料がなぁ,と思いつつまったく期待せずに,rubbish! な地元の電子パーツ屋に行ってみたら,意外にも置いてあったよヽ(´ー`)ノ バカにしてごめんよぉ > パ○ス

で 7808 を Fon の基板上に貼り付けて,7808 への +12V は H8 マイコンのベース基盤から引っ張ってくることにする.これで,H8 ベース基盤へシガーライターソケットで +12V を供給するだけで,H8 と Fon に電源を供給できる.

で家での実験では,+9V 出力の AC アダプタで駆動しているのだが,Fon が謎の再起動を繰り返す(゜ーÅ)ほろり レギュレータ出力電圧はちゃんと 8V 出てるのになぁ,と思って Fon の起動ログを眺めていたら,無線 LAN が ON になったとたん落ちてリブートしてるようだ.

これって AC アダプタの電流が足りないんじゃね?
と確認してみたら,たった 300mA 出力www ( Fon 標準の AC アダプタは 1A )

結局家での実験では確認できなかったので,車につないで見たら問題なく Fon が起動した.

2010年8月16日月曜日

時代はエコ.

Desire データロガー実装も大詰めを迎え,山のようなバグを修正しつつ,実装残項目の中で一番重かった設定画面を作成.
最初は,ListView で自前でゴリゴリ作るのかと思っていたら,PreferenceActivity クラスなんてチョー便利なものがあったのね.設定項目名を適当に設定するだけで,設定のロードセーブまで自動でやってくれる設定画面ができた.結果的にめちゃ楽.

で,時代はエコなわけですよ.たとえ空気運搬してるだけの 3.5L アルファードだってエコカーだし,TV だって大画面のほうがエコポイントがいっぱい付くから,極力大画面買ったほうがよりエコな訳ですよ.
つうわけで,地球環境のことを考えるとご飯も喉を通らない俺が,サーキットユースでは世界初かもしれない,エコモードをつけてみた.

(以上,前振り終了)


で,エコモードにすると何が起こるのか.
エンジン回転数を 2倍にして表示するだけなんだけどね.ただし普通にアクセル踏んでるだけで,あたかもアクセル全開してるかのように速攻で (見かけ上の) レブリミットに達してレブリミットウォーニングが点滅するので,スピード「感」が増し増し!

あっ石 痛い痛い(ノ∀`)

2010年8月14日土曜日

なつやすみのこうさく (完結編?)

とりあえず車とつながった!!

オーバーレブしてるけど気にしちゃいけないwww
これでほとんど完成ヽ(´ー`)ノ おめでとう俺! ありがとう俺!!

と一安心してたら,なんか針がカクカクしてねぇ? というわけでログを確認してみる.ログは 16Hz で H8 マイコンから送信されるので,ファイルに記録されたログの間隔を調べてみたら,

Σ(゚д゚|||)ガーン
縦軸の 1 が 1/16秒に相当するので,6 となっているところは 5回連続でログが欠落してることを意味する… Fon も Android もマルチタスクだから,裏で何かやってる間にログの処理が間に合わずに捨てられてしまったのか?

んー,一番めんどくさいバグが出た(゜ーÅ)ほろり

----
追記: なんかデバッグ用に埋め込んだコードが悪さしてただけみたい crz 取っ払ったらまともになったみたいヽ(´ー`)ノ

2010年8月9日月曜日

冷やしデザイン,はじめました

データロガーの Android 側のメーター表示部を作成中.
慣れない言語,初めてのプラットフォームで,やりたいことが直感的にできなくて時間がかかるわ.

で,それと平行して,メーターパネルのデザインをいろいろ考えてみた.
PSP 時代のはこんな感じで,ぱっと見のデザインはアレだけど,チラ見しただけで必要な情報が得られる視認性という点では,そこそこ実用的なデザインだったと思う.



で,Desire は PSP よりも画面が小さいので,PSP のものからゴチャゴチャしたものをとっぱらって必要な情報のみを残してみたのが


…これはないな.

ならば,プロがデザインしたのを参考にしてみようということで,YouTube で LF-A のメーター (これもフル LCD だったはず) を見てみる.

おお,これはカッコイイな.(メーターもかっこいいけどエンジン音もいいね! 車のデザインはドレスダウンしたスープラみたいだけど.)

てなわけでこれを参考に作ってみたのが


なんということでしょう!
LF-A の高級感あふれるメーターが,匠の技により本格風 8bit ゲームを思わせるデザインに大変身したではありませんか!

ま俺のデザイン能力なんてこんなもんよ(;´д⊂)
とにかく,これをベースに最終的に決定したのが


まぁそこそこ見れるデザインになったかな(;´д⊂)

2010年8月5日木曜日

Android2.2 (Froyo) キタ━━━━(゚∀゚)━━━━ッ!!

公式 Android2.2 (Froyo) アップデートが来た.
root もとらず今までおとなしく使ってたのも全てこの日のため.てなわけで,早速アップデートしてみた.何度か再起動を繰り返し 15分ほどでアップデート完了.でいろいろ使ってみたので感想などを.

●Flash10.1 対応
Froyo といえば Flash10.1 というわけで,真っ先にニコニコ動画を見てみる.コメントも含めて普通にみれて感動.あと YouTube も (今まで別アプリが立ち上がっていたのが) ブラウザ内で見れるようになった.

●WiFi ルータモード
PC に USB 無線 LAN アダプタ挿して Desire を WiFi ルータモードにしたら,あっさりと繋がった.これで外出先でも,WiFi 機器をネットに接続できる.けどノーパソ全部売っちゃったからあまり意味無いんだよね(;´д⊂)
ちょっと期待と違っていたのは,Desire で VPN で家に繋ぐと,WiFi ルータモードでぶら下がっている機器も家ネットワークにアクセスできるのかと思っていたら,そうではなかった.

●SD カードインストール
今まで本体 Flash メモリにしかアプリはインストールできなかったのだが,SD カードにインストール (インストール済みのアプリは SD カードに移動) できるようになった.Desire でこれをやるには色々と手順が必要で,
USB デバイスドライバの inf ファイル修正
・USB デバイスドライバのインストール
・「adb shell pm setinstalllocation 2」コマンド実行
をやると,SD カードにインストール/移動 できるようになった.
ただ,Froyo 標準の機能ではアプリが使用するファイルの全てを SD に移動できるわけではなく,ざっくりと言って半分くらいしか SD に移せなかった.なので結局は (SD カードを大容量に変えたとしても) 本体容量にアプリインストール数が縛られてしまう.ちょっと残念.

●バッテリー消費が減った
いつも朝出勤前に 100% まで充電したら,就寝まえにちょうど 50% 位なのだが,今まだ 70% 位残ってる.某アンテナ表示みたいに「計算間違えてました!」とかでなければ,バッテリーの持ちは明らかによくなってる.

●あと小ネタ
・カメラのフラッシュライト (LED) を光らすだけのアプリが増えた.ただ光らすだけではなく,モールス信号で SOS を点滅させるモードまでついてるw
・Sleep にして 5分 (設定可能) 以内なら,Sleep から復帰したときに認証パターン入力が必要なくなった.地味に便利.
・Simeji の ContactPicker がまともになった (元々 Desire 固有のバグらしかったのだが)

ちょっと残念なのは,
・ラジオ周波数の国設定がなくなったので,聞けない放送局がでてきた.まぁ普段からラジオ使ってないし.
・b-mobileSIM 使ってるとき電波強度が表示されないのが,直ってない
・標準ブラウザ立ち上げるたびに「接続がありません」ってなポップアップが表示されて,手動でリロードする必要がある.もしかしてバッテリーの持ちがよくなったのと関連して,無線通信モジュールの電源をこまめに切ってるのかなぁ?

2010年8月4日水曜日

Serial over Ethernet 成功ヽ(´ー`)ノ

前回うまくいかなかった Fonera+ 用プログラムのコンパイルだが,mips 用のクロスコンパイル環境を構築することで,うまくコンパイルできた.

で,まずは PC (シリアル)⇔Fon (シリアル)⇔Fon (Ether)⇔PC (Ether) とつないでやってみる.
すると,Fon (シリアル)←Fon (Ether) はうまくいったのだが,Fon (シリアル)→Fon (Ether) はデータが出てこない.
そういや,シリアルポートは今はコンソールになってるんじゃ? と思って,シリアルポートとコンソールを切り離す方法をググって見つけたのがここ.てか,同じようなことしてるけっこういるなぁ(笑)
とにかく,この処置をすれば無事両方向通信できた.

お次は本命の Desire⇔データロガー の接続をテスト.接続は上の写真のとおりで,シリアル入出力を Fon で WiFi に変換して(・∀・)デムパ!! で Desire に飛ばすと.Desire 側のプログラムは未着手なので,ConnectBot という Android 用 telnet を使用する.

で,やってみたら,一発で H8 モニタープログラムのメッセージを Desire で受信できた
ヽ(´ー`)ノ
これで,後は Desire 用ソフトを書くだけ.

-----
追記: Fon 標準 FW ではなぜか無線 LAN がプチプチ切れて不安定だったので,OpenWrt を入れた.やり方はここ
本当は DD-WRT を入れたかったけど,DD-WRT はシリアルポートとコンソールの切り離しが容易には行かないらしいので.

2010年8月3日火曜日

エンディアン,嘘つかない.

プロジェクト PSP 引退 の続き.

fon ルータで動く,シリアル⇔TCP/IP データ転送プログラムをさくっと書いて,動かしてみた.このときビルドした MIPS のクロスコンパイル環境が残っていたので,さくっとコンパイル.Fonera+ も WNDR-3300 も MIPS だから,これでコンパイルしたら動くはず.

で実行してみたら,
root@OpenWrt:~# ./seri_eth_fon
./seri_eth_fon: ./seri_eth_fon: 1: Syntax error: "(" unexpected
…なんか実行ファイル (バイナリ) がシェルスクリプトと解釈されてるんですが (汗
こういうときはたいていファイルが壊れているか,CPU アーキテクチャが間違ってるかのどちらか.

んーと思って,参考にした stone の Makefile ( Fonera+ 用のビルドコマンドが記述されている ) をよく眺めてみたら,CPU アーキテクチャが
Fonera: mips
WNDR-3300: mipsel
「節子! それ mips やない! mipsel や!」

…いや,mips と mipsel って何かちがうのん? と思ってクグッてみたら,なんとエンディアンの違いだそうな.( MIPS はビック・リトルどっちでも設定できるが,OS が起動した時点でどっちかに定められる? らしい )

あー,クロスコンパイル環境からビルドしないとだめなのね crz

2010年8月1日日曜日

プロジェクト・PSP 引退

自作データロガーの PSP を Desire に置き換えて,PSP はナビもろとも引退させたいのだが,H8 マイコンからのデータを受け取る方法 (RS-232C) が Desire に無い.市販のシリアル⇔BlueTooth モジュール (BT-MOD100R とか BT-121とか) を繋げはいけるかもと思ったが,高ぇ.(¥1万近く)

で,ここでふと気づいたのだが,Fonera+ にもシリアル端子 (というかピンヘッダ) が出ていて,さらに幸いなことに,PSP⇔H8 マイコンで使用しているレベルコンバータがそのまま使えそう.というわけで,ここ見ながら Fonera+⇔レベルコンバータ 接続ケーブルを作って,PC⇔Fonera+ をシリアルで接続してみた.

結果は一発で成功ヽ(´ー`)ノ Fonera+ の起動メッセージをシリアル経由で受信できた.

これで,あとは Fonera+ 上で,H8 からのシリアルデータを適当な TCP/IP ポートに垂れ流すプログラム書けば,Android は無線 LAN 経由でデータを受け取れる.

めざせ,世界初 無線 LAN ルータ搭載エリーゼwww