コレ。
GR-300
やや太目のUSBメモリ(笑)
でも、GPSレシーバーも小さくなったなぁ~。
一般的なGPSレシーバーは、PCから見ればシリアルポート(いわゆるCOMポート)に接続され、衛星からの情報を元に位置情報をつぶやいてくれる装置だ。
USBのGPSも同じく内部にシリアルコンバータを持っているのでシリアルポートとして見える。
ひとまず、GPSレシーバーからの情報が取得できるか試してみた。
とりあえず、USBポートに刺す。
で、コンソールから、suになって、
# dmesg | grep pl2303/dev/ttyUSB0 にGPSレシーバーが接続されている。
pl2303 1-1.4:1.0: pl2303 converter detected
usb 1-1.4: pl2303 converter now attached to ttyUSB0
pl2303はシリアル-USBコンバータチップ。
ファーム1.7.4のカーネルはpl2303をサポートしてるので同じチップのGPSレシーバーならいけるはず。
んで、GPS初期化
# stty -F /dev/ttyUSB0 4800初期化に必要な情報はGPSの説明書に書いてあるハズ。
通信速度とかパリティビットとか、必要な項目を設定する。
あぁ懐かしいアナログモデム(´・ω・`)
これで、GPSレシーバーからのつぶやきが聞こえるはず。
20行ほど読んでみる。
# head -n 20 /dev/ttyUSB0と、意味不明の文字列が表示されればおk。
$GPGGA,.............hoghog.............
$GPGSA,.............foobar.............
当たり前だけど、出るよー出るよー( ・ω・)
なーんか昔、
某GPSレシーバーを使ってNTPサーバー組んだなぁ~って思い出した罠。
んで、
ハードウェア的には問題なく認識できてるんだけど、肝心のAndroid側での接続がよくわからない。。。。
GPS関係の設定項目を出すにはどうするのだ?
あとたぶん、仮想マシン側でデバイスを接続しないといけないような気がする。
で、その方法が分からん。。。。(゜-゜)
Android1.6でGPS動いてる他のガジェットはどんな処理になってるんだろ?
いかーん、つまづいた~。