Garmin eTrex |
Zaurus SL-C3200 sharp |
つないでます |
パソコン 接続ケーブル |
GPS側 髭剃りのカバーです |
パソコン側 オス |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
eTrexは1日しかログを残せない。泊まりの旅行や海外などでは不便です。 検索で標高が残せないのはあったが、いいのが見つからない。 それでは自分でやりましょう |
|||||
"gpstrans" | グランドキャニオンのログは持って帰れましたが標高がない。 残念。 | ||||
"Java" | Java Runtime EnvironmentSL-C3200では動くのか動かないのか頭の中ゴチャゴチャ 通信なんてもっと難しそうで断念。 |
||||
"gcc" | クロスコンパイラ見る気もしない。 | ||||
まずはプロトコル | プロトコルを調べました。パソコンとeTrexの通信はこうなってました。 Garmin Device Interface Specficationは完全に理解するのは無理。 |
![]() |
|||
ケーブル | SHARPの"パソコン接続ケーブルCE-170TS"を購入。 eTrekとケーブル間は自作です。 配線図はここ。 | ![]() |
|||
 ターミナル | SL-C3200でLinuxを使うのに"qpe-terminal-ja_1.5.0-3_arm.ipk"をインストール。 コマンドは簡単簡単 cat, cp , echo , kill , ls , mkdir , ps , pwd , rm , rmdir , sttyは知っておくと便利。 sh と vi は結構難しい。 |
![]() |
|||
本当に動くかLinuxの コマンドを使ってみる。 |
etrexのinterfaceはTEXT OUTにしておく。 ボーレート"BAUD"は9600にしておく。 SL-C3200に適当なフォルダ"etrextest"を作っておく。 さあ、打ち込んでみよう。 bash-2.05$ stty 9600 cs8 -cstopb ボーレート9600 8ビット ストップビットなし bash-2.05$ cat ../../dev/ttyS0 > ./Documents/etrextest/gps.txt ドンドンeTrexが送ってきます。終わりません。 gps.txtを開けて見れば時間がいっぱい入ってます。 "Ctrl"と"c"を押すと終わり。 ちなみに"ttyS0"の"S"は大文字、"0"は数字のゼロです。 受信はできてます。 |
![]() |
|||
eTrexにコマンドを 送ってみる。 |
etrexのinterfaceはGARMINに戻しておく。 etrexに「機種はなんですか?」と問い合わせるコマンドを送って見ましょう。。 "sendmever.txt"をここから右ボタンで保存してフォルダ"etrextest"に入れておく。 打ち込んでみよう。 bash-2.05$ cat ../../dev/ttyS0 > ./Documents/etrextest/ver.txt & "&"はバックグラウンドで実行することです。 bash-2.05$ cat ./Documents/etrextest/sendmever.txt > ../..dev/ttyS0 "ver.txt"には「□□□□□ヨ□eTrexSoftwareVersion 〜」 となっていたらコマンド送信は成功! | ||||
失敗したとき。 なんだか分から なくなったとき。 |
コマンドpsで実行中の"cat"の番号を調べkill -KILL 1234で終らせる。 "gpstrans"を実行するのもなぜかいいみたいです。 ./Documents/etrextest/gpstrans -p/dev/ttyS0 -ix SL-C3200をリセットするのが結局早いです。頻繁にリセットしてます。 | ||||
シェルスクリプトで Trexにトラックを 要求する。 |
トラック要求コマンドを書いたファイル"comand1.lzh"をここから右ボタンで保存して 解凍した後フォルダ"etrextestに入れる。これはテキストファイルですが バイナリーで書いているため読めません。内容はプロトコルで説明したものと同じです。 "vi"を使ってシェルスクリプトを記述します。 bash-2.05$ vi ./Documents/etrextest/comment.sh 手で打ち込みましょう。 #!/bin/sh echo "sh is running !" stty 9600 cs8 -cstopb echo "rs232c" cat ../../dev/ttyS0 > ./Documents/etrextest/tr00.txt & echo "I have made troo.txt (.v.)" cat ./Documents/etrextest/comand1.txt > ../../dev/ttyS0 echo "I have send comand1.txt" cat ./Documents/etrextest/comand2.txt > ../../dev/ttyS0 cat ./Documents/etrextest/comand3.txt > ../../dev/ttyS0 cat ./Documents/etrextest/comand4.txt > ../../dev/ttyS0 count=1 while [ $count -le 2000 ]; do echo "$count" count=`expr $count + 1` cat ./Documents/etrextest/comand5.txt > ../../dev/ttyS0 done "vi"の終了は:wq 実行しよう。 /bin/sh ./Documents/etrextest/comments.sh トラックデータは"tr00.txt"に入ってます。 | ![]() ![]() |
|||
標高データが分かりません。 |
標高データがどういう計算か解析できませんので、 そのままカシミールに送って、何とか目的は達成。 どなたか教えてください。 メールはここ | ||||