[recovery mode] Добавление GPS к видеорегистратору

Уже год, как обладатель Gazer F117 — и в определенный момент понадобилось пересмотреть видео, оказалось, что сбилась дата до 2015 года — что у нас есть: видео пишется только в один файл, потому что по логике ПО перезатираются более старшие. В итоге видео нет… Это немного разозлило, и я начал искать способы решения.
image
На сайте производителя не найдено никакой прошивки к данной моделе. Супорт и соцсети тоже ничого не дали.
По чипу Novatek NT96650BG видим, что у него есть вход G11 VDD_RTC, который позволяет подключить литиевую батарею и питать встроенные часы.
bc0d40fad92a4392b620ce547e54fa2e.jpg

На плате отсутствуют посадочные места для батареи, в нужном районе есть 3 не подписаны площадки. Без рентгена не проверить их назначения.
image
Также на плате замечаем надпись CR500_650_MAIL_V01 2014/05/28. Поиск приводит к OEM производителя kome.hk, который в одинаковых корпусах предлагает две модели CR500 (Ambarella A2+OV2710) і CR500S (NT96650+AR0330).
41c7361020b2497fa8e8b175250ea1c0.jpg
Як мы видим сверху пристыковывается GPS/антирадар модуль через USB3.0 конектор.
8810b784c412424785f25a0c3e004895.jpg
Разобрав стыковочный модуль, присоединяемся к площадкам Tx и Rx.
b0755da78ff2454bb1c1dcb0e686a5b9.jpg
Есть надежда, что плата поддерживает запись координат и синхронизацию времени из GPS. Присоединяемся к SPI флеша (прищепки еще нет), чтобы иметь резервную копию прошивки. На чипе размещено загрузчик (LD96650A.bin, 16384 байт, 0×0000…0×3FFF), за ним прошивка (FW96650A.bin начиная с 0×4000).
3aae21a906a2416e8d62da85041a30b1.jpg
Тепер не страшно загружать на карту памяти прошивки от подобных регистраторов, в любой момент можно восстановить до заводской.
Методом перебора лучше всего подошла прошивка от AdvoCam-FD Black-GPS ACB47LHGC.160307.V2.zip с кучей исправлений от 2016 года. Минус — не соответствуют кнопки, но быстро привыкаешь. Также нет подсветки кнопок.
cb0512afdab4408bb9cfed2a11d3fe22.png
Тепер подаём на вход RX сигнал NMEA 0183 на разной скорости на стыковочный конектор. На скорости 9600 загорается пиктограмма 13. Значит, аппаратно и программно устройство работает. С TX никакие данные не приходят.
6fd0bc78c88a499f9eb2bae67d3ab719.png
Под рукой завалялся модуль GlobalSat ET316A и активная антена. Не подошла по висоте, а также необходимо допаять схему питания, чтобы не стирался альманах.
018f1ca550fa418eb6b0c49506ce402a.jpg
Загружаем программу SIRF Demo, и виставляем скорость 9600. В комнате не определило местоположение.
a3acb62b160a4496b8d67c88b3d8b575.png
Данные из приёмника идут такого типа, как видим есть уже дата и время:

$GPRMC,145814.82, V,3954.806, N,08202.461, W,86.3,1.82,080717,, E*75
$GPGGA,145815.82,3954.806, N,08202.461, W,0,00,,, M, M,,*69
$GPGLL,3954.806, N,08202.461, W,145816.82, V*0AJcrskmrb


Начал искать другой модуль и взял готовый GOtop GAM-3026-MTR.
5a2babccac3c43e2acc3cc2cadea752d.jpg
Модуль подключался через 30 пиновый разъём к IPhone.
a2633c432d3b49efbd330690c3f9858d.jpg
При подаче питания отправляет следующие данные:

$GPGGA,093421.088,,,0,0,,, M, M,,*45
$GPGSA, A,1,,,*1E
$GPGSV,1,1,01,29,,,24×75
$GPRMC,093420.088, V,,,0.00,0.00,160717,,, N*47


При определении позиции отправляет координаты:

$GPGGA,134012.000,4911.1111, N,02311.1111, E,1,3,6.02,331.4, M,37.1, M,,*53
$GPGSA, A,2,26,27,10,,,6.10,6.02,1.00×01
$GPGSV,3,1,12,21,67,066,,16,58,252,,18,57,145,,27,46,299,18×72
$GPGSV,3,2,12,26,44,208,19,10,35,180,11,20,27,051,,15,17,080,*7A
$GPGSV,3,3,12,08,12,298,,13,11,046,,29,10,114,,07,07,329,*74
$GPRMC,134012.000, A,4911.1111, N,02311.1111, E,2.02,273.64,160717,,, A*64


Визуализация спутников:
a3520b11b2804870a699e10b6e864f4c.png
Регистратор принимает данные:
76256c0693b942c4970a1454744fe72c.jpg
Монтируем модуль в держатель регистратора на двухсторонний скотч и изолируем электронику.
e72080f316314a078abd1e71aabd7d2b.jpg
Оптимальное питание модуля 3.3В, поэтому монтируем LDO AMS11173.3, модуль потребляет 20mA максимум, получаем 50 кратный запас.
7ca257b0248043e1b067ff3498d10a26.jpg
Собираем все вместе и едем на тест:
f697e57b4eac4a46a8e243f9796f7296.jpg
Пересматриваем в программе въюверы (Datacam Player) запись координат, скорости, расстояний.
fdec92a05d2e462589fc5cce84b6d51c.jpg
И напоследок стоп кадр в полном размере.
3c3c667246d74591b9e38632a6e145e2.jpg
Вывод: структурировано опыт, добавленоо запись координат и скорости в видео, синхронизация времени регистратора со спутниками.
Что можно сделать с прошивкой:
• изменить надпись ADVOCAM (0×001E4A0D) на свою на видео, также измениться папка сохранения. После редактирования перезаписать контрольную сумму ntkcalc -cw FW96650A.bin
• изменить перечень режимов записи через NtkMPE.jar
• распаковать прошивку через ntfwtool.exe
• изменить стартовое лого через NLogo.exe (должно быть меньшего размера, чем то что в прошивке)
• переназначить клавиши: в процессе
• найдено паскалку в прошивке (выводится эта картинка 3 июля):
c83c02d0259243d3936f06ac0ea1fcf8.jpg

© Geektimes