Как загрузить карты в GPS навигатор Garmin не прибегая к чёрной магии


Добавлена: 2009-05-12
Автор: Александр Антонов

Краткий экскурс в историю и немного теории

Компания Garmin возникла в 1989 году. Своё название она получила от первых букв имён основателей Гари Баррелла и Мина Као. Мне кажется, что этот брэнд знают даже те, люди, которые к GPS навигации не имеют ни малейшего отношения. Линейка Garmin навигаторов очень широка.

На сегодняшний день мы имеем следующую картину:

  • Автонавигаторы (Garmin nuvi различных моделей и цветов, с разными функциями: встроенный mp3 плеер, Bluetooth Hands Free, возможность подключения к штатной автомобильной аудиосистеме и т.п., и, соответственно, разной ценой.)
  • Мотонавигаторы (модельный ряд Garmin zumo)
  • Портативные навигаоры (Oregon, Colorado, eTrex и другие)
  • Навигаторы для спорта:
    • Беговые (Garmin Forerunner)
    • Велосипедные (Garmin Edge)
  • Морские навигаторы
    • Картплоттеры (Garmin GPSMAP)
    • Эхолоты (Garmin Fishfinder и Garmin GSD)
    • Радары (Garmin GMR)

Следует отметить, что своего официального представителя Garmin в России не имеет. Продажами оборудования и разработкой карт занимается компания «Навиком», так что купленные в России навигаторы будут иметь предустановленные карты именно Навикома, а не Navteq (Navteq — является основным поставщиком картографического материала для Garmin).

Достаточно интересным, на мой взгляд, ходом был выпуск программного обеспечения Garmin Mobile XT (мультиплатформенное ПО, позволяющее использовать картографический материал Garmin на любом оборудовании, работающим под управлением Windows Mobile, UIQ, Palm и Symbian), что, как мне кажется, позволит компании расширить круг покупателей картографии (она, к сожалению, далеко недешёвая).

Предисловие

Несколько дней назад мне в руки попался Garmin nuvi200. Всё бы ничего, да вот хозяин прибора жаловался на то, что, мол, аппарат не хочет работать с картами, выкачанными из Интернета с раздела «для Garmin». Значит, сие творение картографической мысли у народа работает, а подопытный nuvi напрочь отказывается их видеть. Изрядно посмеявшись, ибо сочетание слов «навигатор Garmin не хочет работать с картами для Garmin» кроме истерического смеха, лично у меня, ни чего не вызывает. Задача стояла следующая: необходимо сохранить все, что есть в навигаторе и добавить более подробные карты некоторых городов. Этим 2 ночи подряд я и занимался. Всё оказалось далеко не так просто, как казалось. Попробовав решить проблему наскоком, я упёрся в то, что nuvi действительно относился к скачанным картам абсолютно равнодушно. Почесав затылок, начинаем задавать вопросы поисковикам. Получаем список сайтов длиной «столько не пролистать». Первую ночь пришлось посвятить установке Windows, для чистоты эксперимента, (ибо все утилиты, которые нам потребуются, работают именно под эту ОС (что лично меня не может не огорчать)). Попутно листаю инструкции, советы бывалых и почитываю по диагонали пласт форумов немалого размера.

Начинаем по порядку. Открываю 10-15 сайтов, в которых, якобы, описано решение проблемы, начинаю читать. С первых строк информация начинает раздражать, потом постепенно вводит в состояние ступора. Пишут что-то из серии: мол, для закачивания карт нужно использовать программу такую-то в связке с такой-то и накрученной на третью тулзой, позволяющей миновать терминальный режим предыдущей. После чего вы получаете то-то, вставляете туда-то, всё это компилируете и полученный результат пытаетесь подсунуть той-то программе вот так вот и не по-другому. Предварительно нужно обязательно переписать весь реестр виндовс, и счастье с вами прибудет», и мелким шрифтом приписка снизу «ах да, чуть было не забыл, если вы допустили ошибку в шаге номер 666, то все данные с навигатора будут бесследно потеряны. Прочитав и переварив всё это, нормальный человек повесится.

Двигаемся дальше. Начинаю читать отзывы на эти инструкции. Может быть, конечно, инструкции написаны и правильно, я не спорю, но лично у меня, как в прочем и у не одной тысячи других людей (судя по вопросам и жалобам) так ничего и не вышло. Люди жаждут закачать новые карты, но у них возникают проблемы на каждом шагу (у кого раньше, у кого позже). Проблемы разного характера. Я столкнулся с добрым десятком запинок, которые возникают на ровном месте. Опять же мне проще, я отработал 10 лет инженером и системным администратором (так что, хочешь — не хочешь, а каким — либо базовым знанием об устройстве компьютера всё же обладаю). Что же делать людям, которые используют компьютер для общения в Интернете, просмотров фильмов и не более того, а навигатор Garmin был ими приобретён для нужд и потребностей их работы, несвязанной с компьютером? Как нормальному человеку разобраться во всём этом потоке, зачастую не нужной ему информации, лишних, напущенных на него страхах и т.п.? Среди моих знакомых много людей, которые понятия не имеют, как работать с реестром, как рисуются карты и т.п.; им важно расширить «картографический мозг» навигатора и отправиться на рыбалку или охоту. Какой смысл забивать голову всякой ерундой, которая обычным людям (не фанатам картографии и не работникам фирм по составлению карт или сервисным инженерам Garmin) не нужна? Действительно, с гармином приходится поморочиться. Я лично за простоту! Например, ГИС Русса и Навител. Проблем в работе ноль. Скачиваем карту, кликаем на ней пальцем, после чего программа сама запускается и всё начинает работать само собой. С OziExplorer и SmartComGPS всё в 2 раза сложнее, там нужно скачать не один файл, а ДВА (первый — это сама карта, второй map — это файл привязки), в остальном всё тоже самое — проблем никаких (запустил программу, открыл карту и поехали). С гармином, к сожалению, как показала практика, такие шутки не проходят. Начитавшись всего, что послал мне Интернет, изрядно обплевавшись, начинаю разбираться, как же всё-таки закачать в Garmin новые карты. Всё, что я увидел, пощупал и протестировал, навело меня на мысль о целесообразности написания статьи по закачиванию карт (простым, человеческим языком). Постараюсь упростить объяснение процесса закачки по максимуму. Так что, товарищи фанаты и профессионалы, если что-то будет сказано грубо или непрофессионально не ругайтесь, эта статья не для вас в принципе.

Всё, что будет описано ниже, проделывалось с навигатором Garmin nuvi200, но думаю (на 99 процентов) будет то же самое и со всеми другими. Программы одни, производитель навигаторов тот же, так что проблем возникнуть не должно.

Начинаем разговор

На каждом шагу нас стращают, что при закачке новых карт старые бесследно исчезнут, это не совсем так, вернее не всегда выполняется. Почему, объясню чуть позже. Многие инструкции в один голос твердят, что нам, во что бы то ни стало, для резервного копирования данных нужна программа GPSDaemon. Ерунда! Проверено на собственной шкуре. Хватаем прибор и подключаем к компьютеру. Он определяется как диск (ну или как 2 диска, если у вас установлена ещё и флэш-карта). Идём через Мой компьютер, или Total Commander, или кто как привык на определившийся диск и копируем полностью (чтобы долго не разбираться, что за что отвечает) его содержимое в какую-нибудь папку на жёстком диске. Всё! Теперь мы можем ставить над прибором, какие хотим эксперименты и ни чего не бояться. Пусть всё меняется, стирается, портится. Плевать! Как только мы вернём предварительно скопированное содержимое на своё законное место, всё вернётся на круги своя. Вопрос — зачем же нам нужен GPSDaemon? Начинаем разбираться. Все карты, закачанные в навигатор, хранятся в одном файле (как показала практика, это не догмат, но зачастую именно так). Файл называется GMAPSUPP.IMG — это имя очень любят все утилиты, призванные закачивать карты в навигатор. Они-то, кстати, бездумно и вытирают содержимое этого файла и меняют его на новое при загрузке карт. Вот, оказывается, о чём нас все предупреждали, вот почему при загрузке нового материала старый бесследно пропадает. В моём случае было ещё веселее. На доставшемся мне nuvi этот файл имел нулевой размер и в принципе был нужен как козе баян (если его стереть, ни чего не менялось). Залитые карты «автодороги России» находились в файле gmapprom.img, посему я преспокойненько закачивал утилитками новые карты (создавался gmapsupp.img рядом с gmapprom.img), и, как ни странно, всё это прекрасно работало. По умолчанию, как я и говорил, карты находятся в файле gmapsupp.img, но бывают и нюансы. Разобраться, где все же они лежат у вас, можно, отправившись на диск, определившийся при включении приёмника; найдя все файлы с расширением img, смотрим на размер (врядли карты лежат в файле нулевого размера). Считаем, что с местом расположения карт определись. А что же нам делать, если вдруг понадобится из всего закачанного в навигатор достать одну или несколько карт (не все) и отдать, скажем, другу или закачать на какой-нибудь другой навигатор, а может вообще её удалить за ненадобностью? Именно в решении этой задачи нам и поможет программа GPSDaemon, она умеет из одного файла gmapsupp.img извлечь все входящие в него карты и сохранить их по отдельности. К сожалению, GPSDaemon не может собрать опять все карты в один файл и залить на место. Развожу руками. Ну, уж если сделали такой, мягко говоря, «чудесный» алгоритм компановки карт в один файл, почему бы не написать утилитку, которая могла бы выкачать карты, скомпановать и залить на место. Не было бы тогда такой мороки и стольких вопросов. Но, как говорится, нет так нет, работаем с тем, что есть, выбор у нас ограничен, к сожалению. Запускаем программу.

Выглядит она так:

GPSDaemon

Теперь нам нужно построить список карт. Нажимаем на заветную кнопку «Create» под надписью «Map List». И … о чудо!!! Лично у меня, короче говоря, ни чего не происходит. Давить эту кнопку можно до потери пульса. Бесполезно. Если почитать форумы, то понимаем, что проблема такая возникла не только у меня. Народ жалуется: мол, поставил GPSDaemon, а он не работает :( что делать? Без паники. Под надписью «Map Source» ставим точку напротив «File», а не напротив «GPS». После чего становится доступным выбор директории «Path to GMAPSUPP.IMG». Вот то, о чём я писал выше. Прямо с первой программы и начинаем отслеживать их любовь именно к этому файлу. Если вы определили, что карты лежат у вас в gmapsupp.img, то смело жмём «Change» и указываем на него. Если же, как в моём случае, карты лежат в другом файле, особо сильно не думая, указываем именно тот файл, из которого их и следует извлекать. Программа к этому спокойно относится. Проверено! Далее создаём папку на жёстком диске и указываем на неё в поле «Directory to save files» — это та сама папка, в которую и будет помещён продукт работы программы. Все подготовительные мероприятия проведены. Снова нажимаем «Create» под надписью «Map List». Наконец получаем список карт содержащихся в приёмнике. Выбираем нужные. Я нажал «Select all» под «Map select», ибо мне нужно было сохранить всё. После всего этого нажимаем последнюю кнопку «Start» и ждём, пока программа отработает. По завершению процесса идём в папку, которую указали в поле «Directory to save files» и смотрим, что там происходит. Видим кучку отдельных карт. Ура, радуемся, пляшем, карты извлекать научились. Не бог весть что, конечно, но уже результат. Вспоминаем о том, что многие не дошли и до такого (в доказательство тучи вопросов на форумах).

Двигаемся дальше к решению задачи. Карты из приёмника выкачали (плюс, на всякий случай, сохранили копию всего содержимого). Теперь нужно залить карты в навигатор.

Продолжаем читать форумы. Для заливки карт в навигатор есть две программы — sendMap20 и Mapsource. Начнём с sendMap20. Расписывать все кнопки не буду. Кому интересно — почитайте мануал к ней. Расскажу только то, что понадобилось мне непосредственно для закачки.

Программа sendMap20 выглядит примерно так:

sendMap20

Задача Sendmap диаметрально противоположна функциям GPSDaemon. Если демоном мы из одного файла gmapsupp.img получали пачку img карт, то Sendmap наоборот: из кучи img соберёт нам готовый к закачке gmapsupp.img. Открываем программу, нажимаем «Add maps» и в появившемся окне выбираем все файлы, полученные от работы GPSDaemon. Далее нажимаем «Create GMAPSUPP.IMG» и сохраняем в любом удобном для нас месте. Теперь его можно закачать в навигатор. Пробуем. Закачали, смотрим, что всё на своих местах, поём и пляшем. Получается, что мы научились выкачивать по отдельности карты из навигатора и, собрав их снова воедино, закачивать обратно. Какие мы молодцы, а что толку то от этого. Задача была к уже имеющимся картам добавить новые, а мы, получается, топчемся на месте. Без паники. Снова открываем Sendmap, снова добавляем туда продукты жизнедеятельности GPSDaemon и ещё одну карту (я добавлял карту Липецка). Снова жмём кнопку «Create GMAPSUPP.IMG» и полученный файл закачиваем в навигатор. Теоретически всё должно работать. Мы же слили воедино то, что у нас было, плюс ещё одну новую карту. Что казалось бы ещё нужно? Включаем навигатор, проверяем, если работает — вам повезло, лично у меня ни чего таким способом не заработало. Те карты, что извлёк демон вернулись назад как положено, а вот новой карты не вижу в упор. Хватаем навигатор и снова натравливаем на него GPSDaemon, говорим: «построй Map list». Ищем в списке добавленную карту. Я нахожу, но в столбце «Map Index» вижу нули. Делаю вывод что, то что я не вижу новой карты в навигаторе не спроста. Грусть — печаль (почему так вышло расскажу позже)! Начинаю думать дальше. Sendmap откладываю пока в сторону и решаю попробовать Mapsource. Устанавливаю, щёлкаю по создавшейся иконке и… и ничего хорошего. Программа сходу начинает ругаться. Говорит: «ни одной карты нет, добавьте их сначала, потом потолкуем». Да что ты будешь делать? В чём опять проблема-то? Когда же всё это заработает? Успокаиваемся, читаем дальше. Народ пишет, что для того чтобы скормить скачанные img карты мапсорсу, нужно произвести кучу магических действий, потом сделать поправки в реестре, и если всё пройдёт гладко, то MapSource откроется и в нём мы, наконец-то, увидим свою карту. Есть форумы, на которых во всех красках расписан данный процесс. Лично у меня с первых строк чтения начинает развиваться нервный тик. Чтобы сильно не заморачиваться в технических тонкостях я решил пойти другим путём, благо такая возможность имеется. Берём 2 программы — это cGPSmapperFree (программа для компиляции карт из польского формата в формат гармина) и волшебная тулза под названием MapSetToolKit (она-то нам и поможет без лишних напряжений головного мозга и пальцев рук подцеплять карты в MapSource). Что касаемо первой программы, она идеальная (в смысле проблем ноль, напряжений мысли нет). Берём архив с cgpsmapperFree, распаковываем в любую папку на жёстком диске, запоминаем путь к ней и ВСЁ. Далее про неё мы больше не вспоминаем, она стоит и работает без лишних вопросов (этим-то она мне и нравится). Переходим к MapSetToolKit. Вот она наша утилита — спасительница, которая позволит избежать нам кучи ручной работы и избавит от копания в реестре. Запускаем её.

MapSetToolKit

На первый взгляд всё просто. На самом деле тут реально всё просто, ни какого сарказма. Нажимаем кнопку «Select IMG» и указываем папку с нашей картой (в моём случае карта Липецка), жмём «OK». В окне «Source IMG files» появится наша карта вида 8цифр.img выделяем её и говорим «Add». Продолжаем заполнять. В поле «Mapset directory» указываем папку, в которую будет помещён результат выполнения программы. Остальные поля заполняем на ваше усмотрение (давайте имена такие, чтобы завтра не гадать, что это вы там подсоединили и т.п.). В поле «cgpsmapper» указываем папку, в которую распаковали cgpsmapperFree. Если в разделе «Options» поставить галочку напротив «Install in MapSource, то нам даже не придётся запускать полученный в результате работы утилиты reg файл, который вносит поправки в реестр. Теперь нажимаем «START». Слава Богу, что всё шаманство по компиляции и внесению поправок в реестр остаётся за кадром и не морочит нам лишний раз голову! Теперь можно запускать MapSource.

MapSource

В выпадающем списке 1 выбираем нужную карту, она появится в поле 2. выбрав инструмент 3 щёлкаем по карте, после чего появится соответствующий пункт в списке 4. Если нам требуется закачать не одну, а 2 карты, то повторяем действия по кругу, расширяя список 4. После того как мы добавили все нужные карты, отправляем их в навигатор, нажав на кнопку 5. Не забываем о том, что все программы любят файл gmapsupp.img, мапсорс не исключение. Он сформирует из выбранных карт gmapsupp.img и послушно отправит его в навигатор, попутно затерев старую версию файла со всем его содержимым. Так как у меня автодороги России почему-то лежали в другом файле, то мне эта проблема не страшна. Сформировавшийся файл аккуратненько ложится рядом с тем, что у меня уже было, и всё это прекрасно работает в связке. В случае, если карты лежали в gmapsupp.img, они будут нещадно потёрты. Тут же расскажу о проблемах, с которыми я столкнулся при работе с MapSource и не только я. Программа иногда сбоила и вылетала, отказывалась запускаться со словами: «переустанови меня и жизнь наладится». Как показала практика, через установку и удаление программ она совсем даже не горит желанием удаляться и при переустановке запускаться опять же не спешит. Ошибки такого рода могут быть вызваны, например, удалением карты источника с жёсткого диска или сменой его места жительства. Все данные о путях внесены в реестр, и вы тем самым попадаете на его редактирование. В этой проблеме поможет уже известная нам MapSetToolKit. В поле «Mapset installed» мы увидим список карт, которые установлены в мапсорс, а благодаря кнопкам снизу сможем без лишних проблем удалить карту, вызвавшую сбой. Так же столкнулся с необъяснимой пока для меня проблемой пропадания домов с карты всё того же Липецка. Кстати, программа для просмотра и редактирования карт называется GPSMapEdit. В ней, например, дома видны и в мапсорсе они видны, а при закачке в навигатор почему-то пропадают. Магия. Ну да ладно, тут уж не до жиру. В моём случае, когда карты дорог располагались в gmapprom.img, а мапсорс собрал дополнительные карты в gmapsupp.img соответственно замены не произошло ( всё легло рядышком) на проблеме расширения картографии можно ставить крест. А как же быть нам (ведь у нас всё по-людски, gmapsupp значит gmapsupp)? — спросите вы.

Продолжаем разговор. Можно попробовать все карты, вытащенные из прибора демоном, скормить мапсорсу, добавить то, чего нам не хватало и закачивать всё единым куском, но так как в процессе тестирования карт у меня набралось достаточно много, щёлкать по одной мне стало лениво (кстати, сработает этот метод или нет — не знаю, не проверял). Вот тут то я и вспомнил про отложенный в угол Sendmap. Ведь пока мы заставляли мапсорс работать, незаметно для себя, научились компилировать карты из польского формата в формат Garmin (вот почему сэндмап закачал карту, но навигатор отказался с ней работать: карта ведь в польском формате). Возвращаемся к нему. Запускаем Sendmap и добавляем то, что вытащил нам GPSDaemon (хотя можно не мучаясь выбрать файл gmapsupp.img, программа прекрасно всё поймёт) и файлы, полученные после работы MapSetToolKit. А теперь по отработанной схеме: формируем файл и закачиваем его в навигатор. Включаем, смотрим, если всё сделали правильно — счастье к нам приходит незамедлительно.

Подведём итоги

Мы узнали, каким образом можно просматривать и редактировать карты, разобрались, как выкачать и закачать их в навигатор, затронули тему конвертации из польского формата в гармин. В данной статье не рассмотрено множество тонкостей и нюансов, но это и не важно, ведь цель была рассказать каким образом добавить карты, скачанные из Интернета к уже имеющимся в навигаторе. Карты добавлены, старые данные на месте, посему считаю задачу выполненной, а кому интересно разобраться в премудростях картостроения или редактирования реестра, то это уже выходит за рамки данной статьи и остаётся на самостоятельное изучение.

P.S.

Карты для Garmin в Интернете встречаются в нескольких видах:

  • Скачанный архив содержит файлы в гармин-формате, готовые к закачиванию в навигатор с помошью Sendmap.
  • Встречаются exe-файлы. При двойном клике на такой файл автоматически вносятся все поправки в реестр, и карта появляется в программе Mapsource. Открываем её и закачиваем карту в навигатор.
  • IMG-файлы в польском формате. В данном случаем нам понадобится сконвертировать их в гармин-формат, используя cgpsmapperFree и MapSetToolKit, после чего появится возможность передать карты навигатору через Sendmap или Mapsource.

Надеюсь, данная статья пролила свет на основные вопросы, возникающие при закачивании карт в навигаторы Garmin, и в Интернете будет меньше писем из серии «Как всё это работает?» или «Где обо всём этом можно прочитать по-русски и непременно на одном листе?».