ХТ -туристичний форум України и велофорум Харкова

Полная версия ВходРегистрация

FAQПоиск


Пред. тема | След. тема
Страница 1 из 1 [ Сообщений: 15 ]
Начать новую тему Ответить
Версия для печати

Часы с секундами для Magellan eXplorist

Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
29.08.2015 14:16 Сообщение
В навигаторе имеются "часы" на верхней полоске экрана, но они не показывают секунды, а только часы и минуты, что неудобно при синхронизации фотоаппарата с навигатором.
Поэтому я собрал программу, которая отображает секунды рядом с родными "часами" навигатора.
Работа этих "часов" проверена на моём eXplorist 610. Думаю, будет работать также и на моделях 510 и 710.
Насчёт кнопочных эксплористов не знаю. Надо пробовать.

Установка1. Включите навигатор и подсоедините к ПК по USB в режиме "Подключение к ПК" ("Connect to PC")
2. В компьютере перейдите на встроенный флеш-диск навигатора
3. Зайдите в папку APP, найдите файл Info.xml, сделайте его резервную копию, а оригинал откройте текстовым редактором типа "Блокнот".
Между предпоследней строчкой, где написано </Application> , и последней строчкой, где написано </MagellanGPS> вставьте следующие строчки:

<Application ID="9">
<FileName>SysInfo.exe</FileName>
<Path>\HDD\APP\System</Path>
<Version>
<Major>1</Major>
<Minor>0</Minor>
<Internal>0</Internal>
<Build>0</Build>
</Version>
</Application>

Сохраните файл и закройте редактор.
4. В той же папке APP зайдите в подпапку mgnShell , найдите файл Startup.xml , сделайте его резервную копию, а оригинал откройте редактором типа "Блокнот".
Между предпоследней строчкой <Application ID="2"/> и последней строчкой </Shell> вставьте строчку

<Application ID="9"/>

Сохраните файл и закройте редактор.

4. Скопируйте файлы back.bmp, SysInfo.exe, Sysinfo.INI, SysInfoSettings.ini из этого моего архива в папку \APP\System\
5. Отключите навигатор через "Безопасное отключение устройства" и отсоедините кабель. Навигатор перезагрузится.

Использование
Дополнительных действий не требуется. Маленькая синяя панель с секундами должна появиться сразу после запуска навигатора.
На сенсорных моделях можно потом временно убрать часы, щёкнув на них двойным щелчком. При перезапуске они появятся снова.

Удаление
1. Удалить скопированные ранее файлы back.bmp, SysInfo.exe, Sysinfo.INI, SysInfoSettings.ini
из папки \APP\System
2. Файлы Info.xml и Startup.xml заменить сделанными ранее резервными копиями. Если резервные копии не сохранились, то отредактируйте эти файлы "Блокнотом"
вручную, удалив те строчки, которые были добавлены ранее (см. п. 3 и 4 раздела по установке программы)
Технические подробности о программеФайл \APP\Info.xml очевидно используется магеллановской оболочкой, и содержит сссылки на запускаемые из-под оболочки программы.
Формат файла XML, а значения строчек очевидны. Команда для запуска моей программы добавлена по образцу, номер 9 выбран произвольно.

Файл \APP\mgnShell\Startup.xml также используется оболочкой и содержит номера запускаемых программ, описанных в \APP\Info.xml

back.bmp - фоновый рисунок. Без него SysInfo работает некорректно, и под часами белый фон.
SysInfo.exe (с чёрно-жёлтой иконкой) - сама программа SystemInformation
SysInfoSettings.ini - текстовый файл. Содержит ссылку на файл с настройками
Sysinfo.INI - файл с настройками программы SystemInformation
Test.exe - программа для проверки корректности работы программы до того как запихать её в навигатор. Запускается на ПК. В навигаторе не нужна.

Подробно о файле настроек Sysinfo.INI (для любителей "кастомного моддинга" :) )

GLOBALSETTINGS - секция основных настроек
ShowMessage = 0 - отключает показ окна "О программе" после выхода
QuitOnDoubleClick = yes - выход из программы по двойному щелчку на её окне
X = 150 - местоположение окна (в пикселях от левого края экрана)
Y = 0 - местоположение окна (в пикселях от верхнего края экрана)
Width = 25 - ширина окна
Height = 21 - высота окна
Arrange = No - выравнивание иконок и кнопок. В данном случае у нас ни кнопок, ни иконок, так что смысла в этом параметре мало.
BackgroundBitmap = back.bmp - ссылка на файл с фоновой картинкой
StartUpAnimation = FlyDown - анимация при запуске программы
ShutDownAnimation = FlyUp - анимация при выходе из программы
Accelerated = no - что-то там с улучшением графики. Не нужно.
TopMost = 1 - заставляет окно программы быть всегда поверх других окон.

TIME - секция элемента "часы"
x = 0 - координаты относительно окна(?)
y = 1
Color = FFFFFF (цвет. Белый)
Size = 17 - размер шрифта
Weight = 800 - Вероятно, жирность шрифта. При значениях выше 700 получается жирный.
Format = ':'ss - формат часов (здесь используем только секунды)
CreateFont - команда "создания" шрифта
Interval = 200 - интервал обновления показаний часов в миллисекундах.

Подробнее о SystemInformation можно прочитать на http://4pna.com/forumdisplay.php?f=40 (регистрация бесплатна)

Вложения

shot00035.png
shot00035.png
[ 36.56 КБ | Просмотров: 5071 ]

shot00036.png
shot00036.png
[ 36.71 КБ | Просмотров: 5071 ]

eXplorist_SECONDS_ver5alfa.zip
[101.01 КБ]

Скачиваний: 267



Последний раз редактировалось Д. Засядько 13.05.2016 21:40, всего редактировалось 10 раз(а).
Последнее сообщение


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
29.08.2015 17:00 Сообщение
Знать бы, как войти в секретное меню у кнопочных Эксплористов...

А так я обычно фоткаю экран, когда на нём только что переключилась одна минута на следующую. В этом случае ошибка не превысит пары секунд.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
29.08.2015 17:26 Сообщение
Судя по содержимому флеш-диска Эксплориста 310, там тоже есть папка \APP\System, а в ней файлик Process_Manager.exe
Так что шанс есть.
Есть комбинация клавиш menu+left+power. По ней запускается какое-то сервисное меню. Но тут я не в курсе. Кнопочного эксплориста у меня нет. Если хочешь - приноси свой, попробую поколдовать.

Тут можно, наверное, по другому: вместо оригинального файла навигационной программы Compass2WinCE.exe подсунуть скрипт, который будет запускать сначала часы, а потом Compass2WinCE.exe. Но это надо тестировать. В теории это одно, а на реальном железе - совсем другое оказывается.

Кстати, немножко не в тему. У сенсорных эксплористов есть возможность запускать и другие навигационные программы с карточки через eXmod или что-то ещё. Эксплорист при включении запускает что угодно, лишь бы это лежало в корне карточки и называлось iBoot.exe
Но при этом невозможно регулировать громкость, яркость, включить камеру и т.д. И аппаратные кнопки не работают.
Я выяснил, что можно заставить работать кнопки камеры и верхнюю левую. Нашёл программу HotKey, выяснил коды клавиш, которые надо прописать в программу. В общем, есть возможность сделать так, что при нажатии на левую верхнюю кнопку (код 196) вылазит, к примеру, регулятор громкости. При повторном нажатии он прячется обратно.
Кнопка камеры оказалась двойной. При лёгком нажатии выдаёт код 114, а если продолжаешь давить сильнее, выдаёт код 115. Я так понял, что при лёгком нажатии происходит самофокусировка камеры, а при сильном нажатии уже сама сьёмка. Впрочем, без запуска родного софта камера не работает.
Зато работает мкрофон и динамик. И есть кое-какой софт для записи/воспроизведения звука.
К сожалению, пока не получается регулировать яркость (вообще) и повесить какю-то функцию на кнопку питания.
А также непонятно можно ли вообще использовать компас и барометр. Есть мысль попробовать OziExplorer в версии для Лоуранс Эндура или ещё каких-нибудь навигоаторов с компасом.
А ещё оказалось, что у эксплориста есть акселерометр. Его показания в сыром виде видны в сервисном меню.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
29.08.2015 17:43 Сообщение
Возможно, как-нибудь принесу, поразвлекаешься )))
Но с тем условием, что в случае чего, вернёшь всё как было.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
29.08.2015 18:24 Сообщение
Ну то понятно.

Так. Стоп. Выявилась одна проблема.
Дело в часовом поясе. Часовой пояс выставляется отдельно в навигационной программе и отдельно в системе WinCE.
По умолчанию используется какой-то часовой пояс США.

И если в сенсорных моделях можно тупо вызвать панель настройки часового пояса, то с кнопочными пока не знаю.
Есть вариант часовой пояс прописывать прямо в скрипте. Но тогда его не поменяешь в полевых условиях.
Ещё есть идея перехватывать команды от джойстика. Типа так: вызвали окно настройки часового пояса, вызвали программку hotkey и дали ей задание перехватить команды от джойстика. А потом нажатия джойстика передаём в окно настройки.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
04.04.2016 12:34 Сообщение
Хорошая новость. Проблему с часовыми поясами удалось красиво обойти. Дело в том, что независимо от часового пояса значение количества секунд будет одинаковым. :roll: Поэтому если мои часы будут отображать только секунды, то настраивать часовой пояс для них не нужно. Ну а отображать минуты и часы навигатор и без меня умеет :oops:


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
04.04.2016 13:50 Сообщение
Так на моём навигаторе как это запустить? Или тебе его притащить, как мы ранее говорили?


Re: Часы с секундами для Magellan eXplorist

- Васко да Гама
Профиль 
05.04.2016 09:11 Сообщение
Андрей Лунячек писал(а)
А так я обычно фоткаю экран, когда на нём только что переключилась одна минута на следующую. В этом случае ошибка не превысит пары секунд.


У меня задача более сложная - для синхронизации видео нужно совпадение времени камеры и навигатора с точностью до секунды.

Я делаю так - ставлю путевую точку. Время в ней будет то, которое было в навигаторе в момент нажатия кнопки "Add waypoint" (после этого навигатор еще немного "думает", но это уже не существенно). А время камеры (в момент нажатия кнопки на навигаторе) я записываю в описание путевой точки. Потом достаточно просто посмотреть файл

\Waypoints\Magellan_New_Waypoints.gpx

там описание точки будет что-то типа

Код
<wpt lat="56.826274680800" lon="60.634895789073">
      <time>2016-04-04T13:39:14Z</time>
      <name>WP1</name>
      <sym>FLAG ORANGE</sym>
      <type>Waypoint</type>
      <extensions>
         <mgn:extensions xmlns:mgn="http://www.magellangps.com/mgnext/0/2"/>
      </extensions>
   </wpt>


в тэге <time> - искомое время (UTC), если ввести описание, то будет еще тэг <descr> с текстом, который мы ввели
Или можно вводить время в качестве имени точки (тэг <name>).

А вообще сейчас улучшил способ синхронизации времени камеры и GPS. Вот тут описан подход:

https://sites.google.com/site/victorpomortseff/gps-subtitles-creator

Работает лучше, чем синхронизация по одной точке и не требует проводить запись времени каждый раз. Достаточно иногда это делать, не обязательно перед съемкой клипа.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
05.04.2016 10:52 Сообщение
Цитата
Так на моём навигаторе как это запустить?

Ну, обычно это всё запускается подменой какого-то exe-файла. В варианте с сенсорными "Эксплористами" нашёлся никому не нужный Process_Manager.exe. А у кнопочных, я полагаю, придётся подменять Compass2WinCE.exe или CompassShell.exe, что не хотелось бы делать. Кстати, там же есть папка \APP\Media, где лежат программки для камеры и фото-видео проигрывателя. Вот если бы их как-то использовать.

А так, по идее, всё просто:
Цепляем навигатор к компу, лезем в папку \APP. Переименовываем Compass2WinCE.exe в Compass2WinCE_original.exe.
Кидаем в папку \APP программу - запускалку скриптов Process_Manager.exe, переименовываем Process_Manager.exe в Compass2WinCE.exe. Потом копируем туда же файл Process_Manager.mscr, переименовываем его в Compass2WinCE.mscr, открываем его "Блокнотом", удаляем весь текст и пишем:
folder = SystemPath("ScriptPath")
Run(folder \ "SysInfo.exe")
Run(folder \ "Compass2WinCE_original.exe")
Сохраняем, закрываем "Блокнот".

Потом закидываем в папку \APP файлы MortScript.exe, back.bmp, SysInfo.exe, Sysinfo.INI, SysInfoSettings.ini
Отцепляем навигатор, запускаем, смотрим результат.



Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
05.04.2016 15:06 Сообщение
Дима, ты меня извини, но почитал я написанное тобой, и что-то лень мне стало долбаться. Я и так временно забросил все свои дела из-за того, что довольно много времени потратил, обсуждая в соседней теме, как вычислить разрешение для Магеллана, делая тестовые карты, скриншоты и вычисляя всякие косинусы. А времени-то свободного мало.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
13.05.2016 21:33 Сообщение
Переделал свои "часики". Версия 5а :)

+ Теперь запуск программы организован штатными средствами навигатора. Подмена системных запускаемых exe-файлов не нужна. МортСкрипт уже не нужен. Но придётся вручную править кое-какие текстовые конфигурационные файлы. В будущем хочу сделать инсталлятор, что ли.
Если вы ставили предыдущие версии моей программы, то удалите их вручну как написано в инструкциях к ним.

+ Теперь часы будут запускаться автоматически при запуске навигатора, без необходимости включать что-то в меню.

+ Кроме того, часы должны одинаково работать как на сенсорных, так и на кнопочных моделях.

Архив с программой качать здесь:
https://cloud.mail.ru/public/vuFx/CPE93noX7
Подробная инструкция внутри.

Хотелось бы услышать отзывы от владельцев кнопочных моделей, ибо у меня нет кнопочного Эксплориста для тестирования.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
14.05.2016 00:44 Сообщение
Попробовал на Эксплористе GC (прошивка 1.19 от 310-го). Работает. Но переключение одной минуты на другую происходит не всегда одновременно с тем, когда секунды показывают "00", а временами с запаздыванием на 0,5-1,5 секунды.


Re: Часы с секундами для Magellan eXplorist

- Афанасий Никитин
Профиль 
14.05.2016 22:48 Сообщение
Андрей Лунячек писал(а)
Попробовал на Эксплористе GC (прошивка 1.19 от 310-го). Работает. Но переключение одной минуты на другую происходит не всегда одновременно с тем, когда секунды показывают "00", а временами с запаздыванием на 0,5-1,5 секунды.
В архиве с программой Дмитрия есть файл readme.txt, в конце которого дано описание настроек Sysinfo.INI

Есть там и такая настройка:
Interval = 200 - интервал обновления показаний часов в миллисекундах.

Можно попробовать уменьшить интервал, ну скажем, до 20ms - не знаю, есть ли минимальный предел, но думаю, что 50 прерываний в секунду процессор с частотой 400MHz особо не загрузит.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль  WWW 
14.05.2016 23:12 Сообщение
Спасибо, Дима мне уже об этом в личку написал.


Re: Часы с секундами для Magellan eXplorist

- Юрий Сенкевич
Профиль 
24.11.2016 23:43 Сообщение
Народ, я приношу свои искренние извинения, но в программе, представленной выше, обнаружен баг, исключающий её нормальную работу на кнопочных эксплористах. :oops:
Суть в том, что после появления какого-нибудь всплывающего окна с сообщением, например, о низком заряде батареи или о подключенном кабеле и т.д. и последующего пропадания этого окна почему-то активным становилось моё мини-окошко с секундами. И все команды от нажатых кнопок перенаправлялись в это окно. Увы, реагировать на нажатие кнопок окошко не умеет, поэтому со стороны это выглядело как блокировка кнопок.

Поэтому после долгих разбирательств и мучений я сделал вот что:
На навигаторе запускается программка HotKey, которая следит за нажатием кнопок. Как только юзер нажмёт комбинацию Zoom- и Zoom+, и продержит их дольше 1 сек, программа запускает скрипт, который запускает панель с секундами. После повторного нажатия этой комбинации кнопок программа повторно запускает скрипт, который прибивает панель с секундами. Думаю, что синхронизировать фотокамеру нужно не так уж и часто, поэтому постоянно лицезреть панель с секундами вроде бы никому не упёрлось.

Короче, в использовании всё просто:
в любом месте меню навигатора или даже на самой карте жмём одновременно Zoom- и Zoom+ и держим пару секунд. Вылазит панель с секундами. Когда панель уже не нужна - жмём снова Zoom- и Zoom+ и держим пару секунд. Панель уходит, а управление возвращается к навигационной программе.

В общем, качать здесь:
https://cloud.mail.ru/public/6D68/y7VEvG4mF
Инструкция внутри. Перед установкой нужно удалить предыдущую версию.

Выглядит примерно так:
https://cloud.mail.ru/public/Ju3E/g5qbcWphQ
Вернуться к началу

Начать новую тему  Ответить

Страница 1 из 1 [ Сообщений: 15 ]
Пред. тема | След. тема


Найти
Перейти
 
Полная версия