にやにや製作:GoogleMapとGPSを自転車で使う

お気楽・ごくらく ( ・∀・)ニヤニヤ
     
製作 かるかる

USBマスストレージに対応したガーミンGPSの動作を解析した No.2

2008年05月15日 20時28分02秒 | Hacks
解析対象は Garmin Colorado 300

以前解説したカシミール3Dに格納された「ウェイポイント」「ルート」をGrminのGPSであるコロラドで利用する カシミール3Dでガーミン コロラド用データを用意する方法を探る の続き

前回はウェイポイントやルートの入ったGPXファイルを
本体/garmin/GPX/****.GPXとして用意すれば
GPSが再起動時に 本体/garmin/GPX/Cureent/Current.gpx に追加処理が行われる」事が判明してColoradoでwaypointとrouteの使用に不便はなくなった。

今回はあらかじめPC上で用意したトラックをGPS上で表示させる方法と、
読込みの終わった 本体/garmin/GPX/****.GPX ファイルの処理についてまとめた。
前回と同じく、壊れても誰も責任を取らないので、自己責任で作業を行うことになる。


[PC上で用意したトラック(軌跡)をGPSで表示させる]

あらかじめ道順をALPSLAB routeなどで用意することはよくあります。地図が表示できるGPSでそれを表示させない手はありません。

方法:
1.トラック情報の入ったGPXファイルを本体/garmin/GPX/****.GPXとして用意する。これはWayPointやRouteの場合と同じ。
2.GPSの再起動

Where to GO?での検索時に表示されるトラックのリストは、GPXファイルのタグ内である<trk><name>トラックのルート名 </name></trk>
の内容が表示されます。
たとえば、来年林道が貫通する時山から五僧峠の島津越え県道139なら、SHIMAZUGOE-139等のわかりやすい名前を<trk><name>SHIMAZUGOE-139</name></trk>とすればよいでしょう。
57
またタグでnameが指定されていない場合は、ファイル名がそののまま「ファイル名.gpx」として表示されることになります。
Where to GO? の検索で表示されるタグnameの最大文字数は20文字

正常に読み込まれると以下のように表示される(紫のライン)
392


[読込みの終わったファイルの整理]

ウェイポイントやルートとして用意したGPXファイルは、一度読み込まれれば必要なくなるため削除してよい。
注意: 本体/garmin/GPX/Current/Current.gpxは削除しないこと

------------------
前回と今回で、トラック/ウェイポイント/ルートの3つを管理する方法が判明しました。
これを元にGMM2.exeで直接扱えるようコーディング中です。進捗状況はこちら


参考:
ALPSLAB route:島津越え・岐阜県道・滋賀県道139号上石津多賀線
カシミール3Dでガーミン コロラド用データを用意する方法を探る
コメント (0) | 

カシミール3Dでガーミン コロラド用データを用意する方法を探る

2008年04月23日 06時36分29秒 | Hacks
カシミール3Dが対応しとらんので解析してみた


困っているのは、GPSへのウェイポイントとルートの転送が「カシミール3D」で行えないこと

現在のカシミール3Dでは新しく手に入れたガーミンのGPSであるコロラド300に対応していないためGPSへの転送作業が出来ません。
カシミール3DがColoradoシリーズに対応するまで待ってられないため解析君を発動して対応を探ってみた。

最後に対応方法を載せましたが作業者の自己責任と言うことで。


調査方法

1.MapSourseからコロラドへデータを送り、GPS内のファイルの変化を観察して関連するファイルを推定

2.GPSの操作でWayPoint等のデータを削除・追加してファイルの変化を調査

3.GPS内のファイルをいじって動作の確認


調査結果

1.GPSをマスストレージモードにして MapSourse から GPS へWayPointを転送すると本体/garmin/GPX/Temp.GPX としてファイルが作成される。

Temp.GPXは使い回しで、転送の度にクリアされて新しい情報が上書きされる名前通りのテンポラリ
内蔵メモリ内のXMLファイル群(GPXも含む)は、改行の無い読みにくいデータで収まっているが、MapSourseの生成するこのファイルは改行とインデントが入って読みやすい。

2.GPSをマスストレージから解放し電源を入れると、
本体/garmin/GPX/*.GPXのデータを元に
本体/garmin/GPX/Cureent/Current.gpx に新しい情報が追記される

Current.gpx は、トラック/ウェイポイント/ルートが XML形式で格納されているGPXファイル
GPSの操作でトラックをアーカイブすると Current.gpx からトラック部分のみ別ファイルとして抜き出される模様

3.GPSの操作で、登録したウェイポイントの編集(削除等)をすると Current.gpx のみ内容の変化が見られた。

4.本体/garmin/GPX/Cureent/Position.gpx は現在地座標を保存している。
本体/garmin/Profiles/現在のプロファイル(ex.Fitness.gpf)(xml形式)も変化があるがトラック関係の更新には無関係の模様(未調査)


まとめ

1. 2. 3.の結果から、GPS内の編集可能なトラック/ウェイポイント/ルートのデータは 本体/garmin/GPX/Cureent/Current.gpx に記録されている

データの追加:
本体/garmin/GPX/Temp.GPXに追加するデータを用意すれば
GPSが再起動時に 本体/garmin/GPX/Cureent/Current.gpx に追加処理を行う
(補足:Temp.Gpxに固定されているわけではなくGPX形式ファイルなら別のファイル名でも可)

データの編集:
本体/garmin/GPX/Cureent/Current.gpxを直接いじる


既存ソフトでの対応方法

以下の作業は自己責任です。Garminのマニュアルにもカシミール3Dにもこの方法は載っておりません。
以下の作業はGPSが二度と動かなくなる事もあり得ます。
私を含めて誰も責任を取りませんので作業者の責任で行ってください。


「カシミール3D」や「GMM2.exe」で用意したウェイポイント、ルートをGPSに反映させる方法
両ソフトとも方法は同じで、ウェイポイントやルートをGPX形式で保存してGPSの特定のディレクトリへ放り込むだけ。

カシミール3DでウェイポイントやルートをColoradoへ転送する方法
カシミール3D ルート出力

1.[ポイント名]をアルファベットにする
2.Temp.GPXとして保存しGPS本体/garmin/GPX/Temp.GPXにコピー
補足.[GPSでの名前]は反映されないため入れる必要はない
3.GPSの再起動

GMM2.exe でウェイポイントやルートをColoradoへ転送する方法
GMM2の場合

1.GPS地名をアルファベットにする
2.Temp.GPXとして保存しGPS本体/garmin/GPX/Temp.GPXにコピー
3.GPSの再起動

CIMG6264

転送と更新がうまくいくと問題なく動作しますが、仕様に沿ったGPXファイルを用意しないと
Waypointやrouteの選択時に電源断します。


参考:
Garmin GPS Colorado 300 をしばらく使ってみた
TigerGPSでColoradoを注文した全行程をさらしてみる
GPSMAP 60CsxとColoradoの比較列挙wikiを見て なんだかコロラドが欲しくなった
コメント (0) | 

AppleのワイヤレスキーボードをWindows機で使う方法

2007年03月04日 09時38分04秒 | Hacks
半年ほど前にキーボードとマウスのワイヤレス化を図って今まで使ってきたのですが
先日OSを再インストールした際に発生した問題(すっかり忘れていた)と解決方法をまとめた備簿録
メインのOSはいまどきWindows2000です

今現在Windows機にApple Wireless KeyboardM9270J/A を使っています。
特にMACを使っていたとかではなく、ただ条件があったキーボードがこれだけだっただけです。
APPLEKB
このキーボードを普通に認識させると、2つ(XPは1つ)の問題が発生します。

1. かな漢字変換キーやControl,Capsキーが使えない
ネットで調べると有料のソフトを使って対応させる方法が一般的なようですが、
私は、フリーウェアAppleKbWin を使っています。
1の問題については、AppleKbWinで解決できており、入れたそのままの設定で使っています。

(XPでは以下の設定は必要ないWin2000のみ)
2. " や_の配置が違う
キーボードのタイプを101KEYと認識してしていることから起こっているようです。
レイアウト的に日本語106キーと同じはず(似ている)なので、レジストリをいじって対応させます。

修正する文字は1文字ですが、レジストリを変更するのであくまでも自己責任
具体的にはレジストリエディタで
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/i8042pr/Parametersを下記のように変更します。(エンマークが表示できないので/にしてます)

値の名前:LayerDriver JPN 値のデータ kbd101.dll から
値の名前:LayerDriver JPN 値のデータ kbd106.dll へ変更
before

after
これだけで、CapsやControlキーなどの特殊キーが使用可能になり、
キートップに表示されているキーの入力に支障がなくなります。
またプラスしてAppleKbWinのちょっとした機能が追加されます。

------------------------------------------
Windows機でAppleキーボードを使う人も少ないでしょうが、ここからもっと少数派へ
私はかな入力なので、入力時に日本語/英数入力を完全に分ける必要があることから
以下のような設定にしています。

Appleキーボードの問題をほとんど解決してくれるAppleKbWinが
日本語への切り替えとしている「キー」は
「かな」キーで日本語、「英数」キーで英数字
「英数」キーで日本語、英数字の交互切り替え
□「command」+「space」日本語、英数字の交互切り替えの3種類が用意されています。

漢字の確定は「return」(106キーでいうところのENTERキー:一番でかいキー)であり、
確定を機に英数切り替えを行う場合が多いので、日本語入力の切り替えを
「RETURN(Enter)」と「CONTROL(Ctrl)」をコンビで押すことで動作させるようにしています。

あと常用しているエディタのサクラエディタが「CTRL」+「ENTER」の組み合わせ定義がされているので、
サクラエディタの設定→共通設定で「CTRL」+「ENTER」を未定義に変更として、動作を停止させています。

---------------
Apple Wireless Keyboard M9270J/A
ワイヤレス化を図る際の条件が、Bluetooth接続、フルキーボード(10キー付き)、コンパクトサイズの3つであり
ちょうどこれに当てはまってデザインもよかったこれにしました。
ただ条件にあっただけで特に他の理由はありません、使っていくうちにデザインと電池のもちは気に入りました。
所々キーが引っかかるのが気になりますが。
コメント (2) |