たらのブログ

備後エリアでオン、オフバイクに乗っています

暖かい2024年の幕開けです!

Garmin GPSの罠

今回はちょっと趣向を変えて、Garminの罠にはまり、復旧するまでの顛末です。

 

 昨年くらいからGarminGPSにおいて、日本語正規版のハード、地図ソフト以外への締め出しが厳しくなってきました。このような変更が新製品だけじゃなく、旧製品のファームのアップデートでも行われています。日本語だけでなく各国のローカル言語でも同じ状況らしいですね。

これによってどんな影響を受けるかというと、

・ファームのアップデートを機に地図を認識しない

日本語表示が出来ない

といったトラブルにつながるようです。

じゃあファームをもとへ戻せばいいのでは? となるのですが、GarminのHPにも以前はあった旧バージョンのファームが公開されなくなったので、戻すことも出来なくなっています。

 

 こういった対策は、英語版本体 + プロテクトを外した海賊版Garmin地図 という闇仕様を排除する目的で行わられているらしいですね。

まあそれは仕方のないことですが、おかげで英語版本体 + 正規版の地図 の商品も締め出されてしまうのが残念。(本当はこちらも締め出したかったという事情もあるのでしょう。何といっても売値で半額近かったりするし…)

もちろんすべてのカスタム地図を締めだしたわけじゃなくて、標準アプリのBaseCampや、カシミール3Dなどを使ってユーザーが地図を作る余地は残してあるのですが、使い勝手の良いものを作るには手間がかかります。

 

 こんな状況の中、私が使っている日本語正規版のetrex30J, etrex touch35J,英語版のGPSMAP 64sの3台の内、この半年で次々にトラブルに見舞われたのが、英語版の64sです。

 

 最近のGarminGarmin Expressという専用のアプリでファームの更新を行うようになっています。日本語正規品を常に最新化して使うには便利になりましたが、このアプリ、デフォルトは自動起動Garminディバイスをつなぐと最新になるように同期させてきます。これによって思わずファームがアップデートされてしまうというケースも発生。私はこれで64Sのファームをうっかりアップデートして2回もトラブルを誘発してしまいました。

 

1回目:

 2020年末ファームのアップデートにより、日本語表記が出来なくなるトラブル発生。この時はまだ地図の認識は出来ていました。

このアップデートにより、本体Garminフォルダ内の、ファーム以外の部分にあるファイルまで書き換えられるようで、フォントファイルが英語版のオリジナルに戻っていました。これはファイルサイズが思いっきり違うのですぐに気が付き、35Jの日本語ファイルを64Sに使いまわすことで復旧しました。残念ながら64sのオリジナルファイルをバックアップはしていなかったのです。こういうのを見ると、GPSを買ったら使う前にオリジナルファイルをPCにバックアップしておくことは必須ですよね。

 

2回目:

 2021.3月これが重傷で、再び日本語表記が出来なくなるだけでなく、地図の認識も出来なくなりました。この時にファームをダウングレードしようとしてファイルが手に入らないことに気が付き、最初に書いたGarminの思惑に気が付いたわけです。

 実は発売元であるロックピットさんの取説にはご丁寧に、ファームのアップデートはやっちゃダメ! Garmin Expressは使うな!と書いてあったのですけどね。またロックピットさんに送り返せば有償ですが元に戻すサービスもあるとか。

 とはいえ、最悪修復をお願いするにしても、何とか自力で復旧できないものかと調査を開始。

でもどうやっても、もともと入っていた純正Garminの日本詳細地図を使うことは難しそうと諦めました。地図だけ正規品を再購入してインストールするにしても、いいお値段だし、それが英語版本体でちゃんと使える保証がなくリスクが大きい。そこはあきらめて、日本語OSMを使う方向で再調査。OSMはフリーのマップなのでそこまで意地悪されることは無かろう。最終的には英語版本体でUTF-8版の日本語OSMを使えるように出来れば、日本語表記も含めてうまくいくはず。

と思ったのですが、UTF-8版、Shift-JIS版のどちらをいれても動いてくれません。いろんなケースでエラーメッセージを観ながら途方に暮れていたら、いくつかのルールが見えてきました。日本語表示のトラブルも重なるのでちょっと判別しにくかったのですが、

Garmin本体は、起動時に保存されている地図の有効性をチェックしており、その後にシステムが起動する。

・ 地図のファイル名はgmapsupp.imgとなっており、ファイルサイズもチェック項目の一つらしい。このファイルは本体メモリもしくは追加SDカードのGarminフォルダの直下に置く必要がある。つまり本体とSDカードでそれぞれ1つずつ、同時に2つのマップを置くことができる様子。

・ 本体起動時のチェック後に地図ファイルに情報を書き込んでいる様子はなく、認証情報は本体の地図ファイル以外に保存されるらしい。

・ 地図データの構成は、ベクトルデータと大量のイメージデータで、それぞれにエンコードしたコード情報が含まれている。

・ 地図ごとのエラー状況は、

英語版本体+UTF-8地図 → 地図認識できず ,

英語版本体 + Shift-JIS地図 → 最初のエラーメッセージ、

挙動が異なるが、完全認識はできない様子。 

このあたりの挙動とWEBの情報を探ってみると同じようなことを考えている人がいることを発見。UTF-8地図のマップコードだけをShift-JISに書き換え、誤認識させた上でUTF-8の正規ファイルに差し替える。という手法を使うことで行ける!というケースがあるらしい。

でやってみると、英語版64Sで、日本語OSMを、日本語表記で使えるようになりました。


この手法は地図がアップデートされると都度実施する必要があります。が、私の使い方では山の中でのルート確認が主目的で、変更頻度が高い一般道や街中の情報は必要ないので、しばらくアップデートせずにこのまま使います。

オリジナルGarmin地図が使えるようになったわけではないので、修復できたとはいいがたいのですが、地図表示できずに埋もれるよりはマシということで。

 

 GPSMAP 64sくらいになると結構枯れたハードで動作も安定しているため、ファームのアップデータなしでも問題なく使えると思います。でもetrex touch35Jでは走行中に表示がハングしたりの不具合があったので積極的にアップデートする必要がありました。こういった機種の英語版をお持ちの方は今後も悩むことが続きそうです。

 

 追伸:日本語OSMを今回初めて林道ツーで使ってみましたが、視認性も良く使う上で問題になるようなことはありません。というかBaseCamp上での見栄えは確かにごちゃごちゃ感があって扱いづらく感じますが、GPS上で使うには純正Mapよりも使いやすいのでは?と思えるくらいでした。