Rikaline-GPS-6010-Firmware-Fix
Обновленная прошивка для старой Rikaline GPS-6010 Sirfstariie/LP Serial GPS Mouse и обновленного чипсов. Версия прошивки SIRF Patched была SW версия 231.000.000.
Проблема
Старый рикалин GPS, который я обнаружил, приобретал спутники, давая правильные исправления положения, загружая альманахи, которые можно сбросить с помощью утилиты Sirfdemo, но обнаружили, что альманаки не сохранялись, чтобы вспыхивать после первого действительного исправления позиции. Это привело к очень долгому времени для всех исходных исправлений положения. Установленная фабрика, поставляемое альманаком, использовался при каждом стартапе. Заменил батарею резервного копирования памяти - без эффекта - хотя, по крайней мере, мои конфигурации Sirfdemo теперь сохранялись в SRAM.
Был получен 2-й рикалин GPS-6010 и обнаружил, что у него такая же проблема.
Зацепка
При попытке прочитать изображение двоичного прошивки, я также обнаружил случаи, когда утилита Sirfflash либо не смогла распознать часть Flash, либо распознать часть Flash, но GPS не смог совершить загруженный Almanac для флеш -памяти после успешного исправления. Подозревал здесь некоторое соединение.
Решение
- Определил, какие части вспышки фактически использовались мышами GPS. Это была флэш -память Fujitsu MBM29LV400BC в одном блоке и Macronix MX29LV400B в другом блоке.
- Можно ли исправить Sirfflash? Да, оказывается, что параметры программирования флэш -программирования определяются файлом Sirfflash "wiplist.txt". Добавлена спецификация устройства в Chiplist.txt. Это можно найти в каталоге установки Sirfdemo. Двоичное изображение GPS может быть успешно сброшено и сохранено.
- Просмотрите двоичное изображение, используя HXD для подсказок для вспышки устройств в коде. К счастью, выяснилось, что производитель попытался принять во внимание, что различные компоненты флэш -памяти могут быть использованы во время производства. Большая помощь заключалась в том, что имена поставщиков и номера поставщиков флэш -устройства были сохранены в ASCII на изображении GPS прошивки. Обнаружил, что поддержка этих флеш -деталей отсутствовала.
- Прошивка, вероятно, была первоначально составлена в C, поэтому пошел в поисках того, что может быть бинарным представлением структурного массива или чего -то подобного. Обратный спроектировал двоичное изображение, чтобы найти указатели на флэш -детали и строки поставщика. Расположенный структуры параметров программирования флэш -программирования. Определил двоичные данные были аналогичны двоичному представлению параметров программирования флэш -программирования, наблюдаемых в файле wiplist.txt.
- Заменили существующие, но неиспользованные устройства AMD и Toshiba Flash на изображении с правильными параметрами для частей Fujitsu MBM29LV400BC и Macronix MX29LV400B. Обновленное имя производителя, имя устройства, параметры программирования флэшта и различные указатели. Необходимо соблюдать осторожность, чтобы сменить строки и указатели, чтобы названия производителя и номеры деталей могли вписаться в пространство существующего списка строк.
- Используйте Sirfflash, чтобы загрузить новую прошивку на устройство.
- Подтверждено, что Альманак загружался и правильно сохранен в флэш -памяти после первоначальной допустимой исправления позиции, а затем питание на велосипеде по GPS. Sirfdemo может быть использован для загрузки Almanac в устройство, чтобы подтвердить это. Быстрое время, чтобы сначала исправить на последующих взлетах. На этот раз повезло - успех!
Как оригинальное немодифицированное изображение прошивки, так и исправленное изображение были предоставлены, чтобы вы могли сравнить изображения, чтобы увидеть, какие изменения были внесены. Используйте HXD для этого.
Я предполагал, что производитель мог создать эту мышь GPS с несколькими различными частями флэш -памяти с течением времени, и часть моей конкретной мыши GPS была изготовлена, с которой не было указана в прошивке. Хотя GPS, должно быть, работал, на фабрике не было осознается, что Альманак был выброшен после каждого выключения. Ошибка не была поймана во время оригинального тестирования продукта и выпуска.
Фиксированное изображение и GPS успешно использовались в трекере APRS в последние несколько лет. Изображение также успешно использовалось для обновления 2-й серийной мыши Rikaline GPS-6010 от SIRF Persdware версии 2.2.0 до 2.3.1, исправляя проблему вспышки.
Инструменты используются
Sirfflash и Sirfdemo* - https://web.archive.org/web/20190831163705/https://www.falcom.de/support/software-tools/sirf
Hxd - https://mh-nexus.de/en/hxd/
Rikaline GPS-6010 Руководство-https://www.manualslib.com/manual/261000/rikaline-gps-6010.html
(*) Оригинальный Falcom ссылается на Sirfflash и Sirfdemo, по -видимому, дольше активен.