Инструменты пользователя

Инструменты сайта


sirfstar

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
sirfstar [12:53 10.01.2015]
littlesavage [Magellan Triton 200, 300, 400, 500]
sirfstar [15:36 02.07.2015] (текущий)
littlesavage [TomTom MKII]
Строка 2: Строка 2:
  
 ====== SirfStar ====== ====== SirfStar ======
 +
 +==== Прошивка GPS SirfStarIII ====
 +
 +Проще всего прошить устройство с чипом SirfStarIII используя sirfdemo и sirfflash. Устройством может быть BlueTooth/​USB GPS приемник,​ OEM модуль,​ либо GPS, у которого удалось найти последовательный порт на плате и подключиться к нему. Скачать программы можно по [[#​Ссылки|ссылкам]].
 +Прошиваем в следующем порядке.
 +
 +== Подключаемся к устройству в SirfDemo ==
 +
 +{{:​sirf:​flash:​flash-1-connect.png|}} {{:​sirf:​flash:​flash-2-connect2.png?​600|}}
 +
 +В //Debug view// видим поток NMEA сообщений от приемника.
 +
 +== Переводим приемник в режим SiRF ==
 +
 +Это можно сделать выбрав //Action — Switch to SiRF protocol//. Но в этом случае SirfDemo переключит приемник на скорость 57600. Есть небольшое количество Bluetooth устройств,​ в которых скорость фиксирована и менять её категорически нельзя,​ на таких устройствах так не делаем. ​
 +
 +{{:​sirf:​flash:​flash-3-switchtosirf.png|}}
 +
 +Другой вариант,​ чтобы переключиться в режим SiRF и при этом сохранить скорость,​ нужно отправить NMEA командну. Для этого выбираем //Action — Transmit serial message//, **тип**: //​NMEA//, ​ **текст**:​ ''​PSRF100,​0,​38400,​8,​1,​0''​. Вместо 38400 подставляем свою скорость,​ затем **Send**. Для прошивки скорость должна быть не ниже 38400.
 +
 +После переключения в //Respone View// видим поток SiRF сообщений.
 +
 +== Переключаемся в Internal boot mode ==
 +
 +Выбираем //Action — Transmit serial message//. Указываем **тип:** //SiRF//, **текст:​** //94//, затем **Send.**
 +
 +{{:​sirf:​flash:​flash-4-switch-to-internal_mode.png?​300|}}
 +
 +После этого поток сообщений прекращается.
 +
 +== Прошиваем приемник используя SirfFlash ==
 +
 +Отключаемся в SirfDemo, закрываем его и открываем SirfFlash.
 +
 +**Flash activity selection:​** //Read// — чтение прошивки с устройства,​ //Program// — прошивка.
 +
 +**Line и Baurdate:** указываем COM порт и скорость (ту, что после переключения в режим SiRF).
 +
 +**Full duplex:** В //internal boot mode// должен быть отключен. Я, обычно,​ отключаю всегда
 +
 +**Target boot mode state setting:** //​Internal//​ (так как мы сами переключились в //internal boot mode// выше).
 +
 +**Chip select:** //CSN0//; **Chip offset**: //0//
 +
 +**Programming options:** //Update//. Но если заливаете прошивку,​ в которой изменилось несколько байт, то можно указать //Erase relevant sectors only//. Так зальется быстрее и надежнее.
 +
 +**Read Settings:** Range from: //0//, To: //​0x07ffff//​
 +
 +**File selection:​** выбираете файл с прошивкой.
 +
 +Затем **Execute**.
 +
 +{{:​sirf:​flash:​flash-5-readfw.png|}}
 +
 +Появляются данные в //Flash info//, ​ //Chipset Info// и //​Progres//​. По окончанию - диалог с "​OK"​.
 +
 +Если в **Target boot mode state setting** указать //​External//,​ то SirfFlash переключит приемник в //internal boot mode// самостоятельно и делать этого вручную в SirfDemo не придется. Но практика показывает,​ что так прошивка срабатывает очень редко и все же лучше сделать это самому.
 +
 +Некоторые приемники при закрытии COM порта отключаются и режим internal boot mode не сохраняется. В этом случае режим //​External//​ — единственный возможный вариант. Определить такой приемник легко. В SirfDemo, после переключения в //internal boot mode//, поток сообщений прекращается. Нужно закрыть COM порт и открыть его снова. Если после открытия поток сообщений не возобновился,​ значит приемник по прежнему в //internal boot mode//, а если что-то есть — он сбросился в соответствующий протокол.
 +
 +   * Альтернативная инструкция:​ [[http://​gps.0xdc.ru/​static/​sirf/​doc/​SirfStar/​HOW%20TO%20DUMP%20A%20SIRF%20GPS.rtf|How To Dump a sirf GPS]].
 +   * Документация по SirfFlash: [[http://​gps.0xdc.ru/​static/​sirf/​soft/​win32/​SiRFFlash%20User%20Guide.pdf|SiRFFlash User Guide.pdf]] (подробно расписаны все параметры)
 +
 +==== Прошивка GPS SirfStarIII на Windows CE (sirfmemdump) ====
 +
 +На устройствах с Windows CE / Windows mobile для перепрошивки лучше использовать официальные программы для обновления прошивок.
 +Если с ними ничего не получается,​ то, в самом крайнем случае,​ на свой страх и риск, можно попробовать sirfmemdump ([[http://​gps.0xdc.ru/​static/​sirf/​soft/​wince/​sirfmemdump-0.3.1.exe|sirfmemdump-0.3.1.exe]]). Порядок примерно следующий:​
 + 
 +   * Ставим устройство на зарядку,​ чтобы оно не выключилось во время прошивки,​ либо нужно убедиться,​ что оно выдержит ещё минут 30 — 40.
 +   * Выбираем в приложении COM порт и скорость,​ жмем **Connect**. Если кол-во полученных SiRF или NMEA сообщений увеличивается,​ значит порт и скорость подобраны правильно,​ жмем **Done**. Иначе — пробуем другие варианты.
 +   * Открываем //Menu — Change GPS mode//. Ставим **Current GPS mode:** текущий режим (он обычно определяется верно и там уже установлен),​ ** Change to mode:** //Internal boot mode//, жмем **Change**. Приемник переключается в //internal boot mode//
 +   * Открываем //Menu — Program flash//. Выбираем файл с прошивкой,​ жмем **Program**. Запасаемся термением,​ прошиваться будет минут 20. Во время прошивки будет отображаться лог действий. По окончанию в логе будет строка "​OK"​.
 +
 +Из этой же утилиты можно попробовать восстановиться после неудачной прошивки. Перед открытием COM порта подаем V<​sub>​+</​sub>​ на BOOTSELECT pin, делаем **Change GPS mode** из //Internal boot mode// в //Internal boot mode// и прошиваем через //Menu — Program flash//.
 +
 +Чтение прошивки в утилите не реализовано,​ но можно сдампить память по адресам 0x40000000 — 0x4007ffff. Это и будет дамп прошивки.
 +
 +Режим //memdump// в sirfmemdump — это специальный режим, целью разработки которого было добавление возможности снятия дампа оперативной (либо любой другой) памяти чипа. Для этого в SiRF есть сообщение MID131, но оно никогда не работает. При переключении в режим //​memdump//,​ в устройство из режима //internal boot mode// загружается и запускается специальная микропрограмма,​ предоставляющая доступ к нужным данным. В этой же микропрограмме реализованы перепрошивка флэш памяти и получение информации о ней. Примерная последовательность снятия дампа памяти:​
 +
 +   * Открываем COM порт. Можно подождать минут 10 на открытой местности,​ чтобы в памяти осело побольше данных (если дампим оперативную память).
 +   * Открываем //Menu — Change GPS mode//, переключаемся в режим //​memdump//​.
 +   * Открываем //Menu — Dump memory//, выбираем нужный диапазон адресов,​ дампим в файл или на экран.
 +
 +Выхода из этого режима нет, нужно перезагружать чипсет (обычно,​ закрытием COM порта).
 +
 +Исходный код sirfmemdump https://​github.com/​illarionov/​sirfmemdump
 +
 +==== Восстановление после неудачной прошивки GPS SirfStarIII ====
 +
 +На чипе SirfStarIII есть pin BOOTSEL. Он позволяет восстановить устройство после неудачной перепрошивки,​ даже если оно не грузится совсем. BOOTSEL часто выведен на основную плату, например,​ он обозначен в описании [[#​GlobalSat BT-821]], [[#Mitac Mio Moov 300]] и [[#Nokia LD-3W]].
 +
 +Необходимо выключить устройство,​ подать на BOOTSEL V<​sub>​+</​sub>​ и затем включить устройство. В этом случае чип загрузится в режиме //Internal boot mode//. Дальше можно прошивать по инструкции "​[[#​Прошиваем приемник используя SirfFlash]]"​.
 +
 +На некоторых устройствах (например,​ Mitac Mio Moov 300), чип отключен,​ когда COM порт закрыт. Их можно не выключать,​ главное — добиться,​ чтобы на момент открытия COM порта (и загрузки чипа) на BOOTSEL было напряжение V<​sub>​+</​sub>​.
  
 ===== Устройства ===== ===== Устройства =====
Строка 21: Строка 115:
 | [[#​GlobalSat BU-353]] | USB | N | 3.5.0  | | [[#​GlobalSat BU-353]] | USB | N | 3.5.0  |
 | [[#HP Ipaq rx5700 rx5900]] | WM PDA | MMCX | 3.2.2  | | [[#HP Ipaq rx5700 rx5900]] | WM PDA | MMCX | 3.2.2  |
 +| [[#HTC Athena]] | WM PDA | Y | 3.1.1 |
 | [[#Intermec CN3]] | WM PDA | N | 3.5.0  | | [[#Intermec CN3]] | WM PDA | N | 3.5.0  |
 | [[#Magellan Explorist GC]] | Handheld GPS | N | 3.5.0  | | [[#Magellan Explorist GC]] | Handheld GPS | N | 3.5.0  |
Строка 168: Строка 263:
 ^ Default baudrate |  | ^ Default baudrate |  |
  
-Выложил прошивку и прошивку с фазой. ​Самого устройства нет и ничего из этого не тестировалось. Неизвестно, возможно ли залить эту ​прошивку, переключить устройство ​в режим sirf или снять ​лог.+Выложил прошивку и прошивку с фазой. 
 +Прошить ​устройство возможно, но способа получить ​SIRF данные с устройства пока никто ​не нашел.
  
 Прошивка распакована из файла GPSChipsetTypeG_300.exe. Это архив, содержащий 2 файла: updater.exe и GPSReceiverSoftware300.rgn. updater запусткается с 1 аргументом - именем файла прошивки(''​updater GPSReceiverSoftware300.rgn''​). Можно указать свой файл, либо заменить существующий. Прошивка распакована из файла GPSChipsetTypeG_300.exe. Это архив, содержащий 2 файла: updater.exe и GPSReceiverSoftware300.rgn. updater запусткается с 1 аргументом - именем файла прошивки(''​updater GPSReceiverSoftware300.rgn''​). Можно указать свой файл, либо заменить существующий.
Строка 304: Строка 400:
  
 Остальные файлы: http://​gps.0xdc.ru/​static/​sirf/​device/​HP%20iPAQ%20rx5700/​ Остальные файлы: http://​gps.0xdc.ru/​static/​sirf/​device/​HP%20iPAQ%20rx5700/​
 +
 +==== HTC Athena ====
 +[[http://​devdb.ru/​htc_advantage_x7500|{{ http://​devdb.ru/​data/​img/​img49e07d5dd01199.82859608n.jpg?​160|http://​devdb.ru/​htc_advantage_x7500}}]]
 +^ Interface / OS | WM5 phone |
 +^ Internal antenna ​ |  |
 +^ External antenna | Y |
 +^ Baseband | GSC3LTif |
 +^ Flash    |  |
 +^ Firmware | GSWLT3.0.0-SDKHT_3.1.01.00-SDKLT001P1.00a |
 +^ L1 Patch available | Y |
 +^ Default baudrate |  |
 +
 +Имеется файл прошивки и прошивка с фазой
 +
 +Файлы: http://​gps.0xdc.ru/​static/​sirf/​device/​HTC%20Athena
  
 ==== Intermec CN3 ==== ==== Intermec CN3 ====
Строка 369: Строка 480:
 ^ Flash    |  | ^ Flash    |  |
 ^ Firmware | GSW3.2.4-SDK_3.1.00.12-SDK001P1.01 | ^ Firmware | GSW3.2.4-SDK_3.1.00.12-SDK001P1.01 |
-^ L1 Patch available | |+^ L1 Patch available | |
 ^ Default baudrate | 9600 | ^ Default baudrate | 9600 |
  
Строка 375: Строка 486:
 Там же описаны проблемы,​ возникшие при попытке влить другую прошивку. Там же описаны проблемы,​ возникшие при попытке влить другую прошивку.
 Выложенные на там версии 3.2.5 - это прошивка [[#Magellan Triton 200, 300, 400, 500]], а 2.5.0 - это [[#Magellan Explorist GC]] (сверено по контрольным суммам). Заливать их, возможно,​ не стоит. Выложенные на там версии 3.2.5 - это прошивка [[#Magellan Triton 200, 300, 400, 500]], а 2.5.0 - это [[#Magellan Explorist GC]] (сверено по контрольным суммам). Заливать их, возможно,​ не стоит.
 +
 +Есть родная и пропатченная прошивка с фазой
  
 Файлы: http://​gps.0xdc.ru/​static/​sirf/​device/​Magellan%20Triton%201500%202000/​ Файлы: http://​gps.0xdc.ru/​static/​sirf/​device/​Magellan%20Triton%201500%202000/​
Строка 471: Строка 584:
 ^ External antenna | N | ^ External antenna | N |
 ^ Baseband | GSP3f | ^ Baseband | GSP3f |
-^ Flash    | GSP3f Internal ​|+^ Flash    | GSC internal (SST39VF400A) ​|
 ^ Firmware | GSW3.0.2TomTom1.1_3.0.00.03-C3P1.02b | ^ Firmware | GSW3.0.2TomTom1.1_3.0.00.03-C3P1.02b |
 ^ L1 Patch available | Factory L1 | ^ L1 Patch available | Factory L1 |
Строка 477: Строка 590:
 ^ Bluetooth | | ^ Bluetooth | |
  
-Прошивка найдена ​на просторах интернета. Дизассемблирование показало, что фаза, ​в ней не отключена. Но устройста нет, проверить ​не на нем.+Фаза ​включена. Первоначально это показало дизассемблирование прошивки, затем было проверено на устройстве, проблем не возникло.
  
 Прошивка:​ http://​gps.0xdc.ru/​static/​sirf/​device/​TomTom%20MKII/​ Прошивка:​ http://​gps.0xdc.ru/​static/​sirf/​device/​TomTom%20MKII/​
Строка 559: Строка 672:
 05476aaa06bfb6e3077eb48b4f8ef669 ​ ./HP iPAQ rx5700/​fw-carrier-phase/​GSW3.2.2_11072006.carrierphase.bin 05476aaa06bfb6e3077eb48b4f8ef669 ​ ./HP iPAQ rx5700/​fw-carrier-phase/​GSW3.2.2_11072006.carrierphase.bin
 412f2402ce83f101b2ea63ab68613c48 ​ ./HP iPAQ rx5700/​GSW3.2.2_11072006.bin 412f2402ce83f101b2ea63ab68613c48 ​ ./HP iPAQ rx5700/​GSW3.2.2_11072006.bin
 +279beb4d636c20d9652d5ee6368444a7 ​ ./HTC Athena/​fw-carrier-phase/​GSWLT3.0.0-SDKHT_3.1.01.00-SDKLT001P1.00a.bin
 +89f1b9be8b6f75953fc3a40d41987c08 ​ ./HTC Athena/​GSWLT3.0.0-SDKHT_3.1.01.00-SDKLT001P1.00a.bin
 76db0952449a94aa39e481b94066ab2a ​ ./Intermec CN3 Handheld/​fw-carrier-phase/​GSW3.5.0_3.5.00.00-C35P2.00_CN3_(57600).firmware.bin 76db0952449a94aa39e481b94066ab2a ​ ./Intermec CN3 Handheld/​fw-carrier-phase/​GSW3.5.0_3.5.00.00-C35P2.00_CN3_(57600).firmware.bin
 64e037381a35677c18b12af14395e8d9 ​ ./Intermec CN3 Handheld/​GSW3.5.0_3.5.00.00-C35P2.00_CN3_(57600).firmware.bin 64e037381a35677c18b12af14395e8d9 ​ ./Intermec CN3 Handheld/​GSW3.5.0_3.5.00.00-C35P2.00_CN3_(57600).firmware.bin
Строка 564: Строка 679:
 5bdd953609d6ed9c308d11e59c58b139 ​ ./Magellan Explorist GC/​GSW3.5.00.00-SDK-3EP2.01.bin 5bdd953609d6ed9c308d11e59c58b139 ​ ./Magellan Explorist GC/​GSW3.5.00.00-SDK-3EP2.01.bin
 5bdd953609d6ed9c308d11e59c58b139 ​ ./Magellan Explorist GC/​original.path/​COPY_GROUP_10/​update/​GPS.BIN 5bdd953609d6ed9c308d11e59c58b139 ​ ./Magellan Explorist GC/​original.path/​COPY_GROUP_10/​update/​GPS.BIN
 +32d943dc7b302ede8c4731fc563bf26b ​ ./Magellan Triton 1500 2000/​gsw3.2.4/​fw-carrier-phase/​GSW3.2.4-SDK_3.1.00.12-SDK001P1.01.bin
 c7ff1af446a075a47389441808028fa5 ​ ./Magellan Triton 1500 2000/​gsw3.2.4/​GSW3.2.4-SDK_3.1.00.12-SDK001P1.01.bin c7ff1af446a075a47389441808028fa5 ​ ./Magellan Triton 1500 2000/​gsw3.2.4/​GSW3.2.4-SDK_3.1.00.12-SDK001P1.01.bin
 +5b5ffe265b51d3d32903c04d29e80104 ​ ./Magellan Triton 200 300 400 500/​gsw3.2.5/​fw-carrier-phase/​GSW3.2.5_3.3.01.06-ADS-SDK001P1.00.bin
 f32260ccb13c5bc40d566addc61a2606 ​ ./Magellan Triton 200 300 400 500/​gsw3.2.5/​GSW3.2.5_3.3.01.06-ADS-SDK001P1.00.bin f32260ccb13c5bc40d566addc61a2606 ​ ./Magellan Triton 200 300 400 500/​gsw3.2.5/​GSW3.2.5_3.3.01.06-ADS-SDK001P1.00.bin
 e9b6843447d7aa1fe25620bca9811102 ​ ./Mio Moov 300/​fw-carrier-phase/​GSW3.2.5 PPS_3.3.01.06-SDK-3EP1.00.bin e9b6843447d7aa1fe25620bca9811102 ​ ./Mio Moov 300/​fw-carrier-phase/​GSW3.2.5 PPS_3.3.01.06-SDK-3EP1.00.bin
Строка 580: Строка 697:
 4966ecc35139d7f590dfa6f380f5168c ​ ./​Vincotech.OEM/​3.6.0/​fw-carrier-phase/​GSW3.6.0_3.6.00.00-F35P1.00.bin 4966ecc35139d7f590dfa6f380f5168c ​ ./​Vincotech.OEM/​3.6.0/​fw-carrier-phase/​GSW3.6.0_3.6.00.00-F35P1.00.bin
 adf3246d283026c02e53523752e6224c ​ ./​Vincotech.OEM/​3.6.0/​GSW3.6.0_3.6.00.00-F35P1.00.bin adf3246d283026c02e53523752e6224c ​ ./​Vincotech.OEM/​3.6.0/​GSW3.6.0_3.6.00.00-F35P1.00.bin
- 
 </​code>​ </​code>​
 ===== Ссылки ===== ===== Ссылки =====
sirfstar.1420912384.txt.gz · Последние изменения: 12:53 10.01.2015 — littlesavage