Jump to content

    

Потеря навигации на MT3333

По результатам личной встречи с "contact window" Медиатек:

1. В новых версиях ПО поддерживаются спутники QZSS №194 и #195 (выйдет через пару лет), 196 и выше пока не поддерживаются, но до них ждать еще лет шесть.

2. Отключение QZSS работало и работает во всех прошивках, просто была "грамматическая" ошибка в подсчете контрольной суммы, тиражируемая в большинстве документов.

Программы, самостоятельно вычисляющие контрольные суммы, передают корректную посылку.

3. Механизм обновления данных работает по принципу "сначала фикс, потом не менее 10 спутников GPS+GLONASS, потом BEIDOU, потом SBAS и QZSS". По этой причине модуль всегда получает решение независимо от QZSS.

4. Если в старой программе виден спутник QZSS #194 - будет клинч, обновление данных спутников прекратится. Видимые спутники зайдут за горизонт, а новые не будут обработаны. Эфемериды устареют и решение потеряется.

5. ЛЮБОЙ старт (холодный, теплый, горячий, резет) заставляет модуль заново обновить информацию по основным спутникам.

6. Повторение горячего старта каждые полчаса позволяют полностью исключить проблему старой программы.

7. Перед командой выключения спутников QZSS (если это не первое включение питания и в памяти модуля что-то есть) надо стереть RAM модуля командой Полного Холодного Старта

Packet Type: 104 PMTK_CMD_FULL_COLD_START

Packet Meaning:

Full Cold Restart: It’s essentially a Cold Restart, but additionally clear system/user configurations at re-start. That is, reset the receiver to the factory status.

DataField: None

Example:

$PMTK104*37<CR><LF>

8. Механизм обновления "появляющихся из-за горизонта" спутников действительно обновлен, обещают отсутствие ступора.

9. Заменены симуляторы сигналов, на которых проверяются программы. Теперь они могут имитировать не только существующие спутники, но и перспективные.

 

Share this post


Link to post
Share on other sites

Владимир, тут как бы противоречие:

2. Отключение QZSS работало и работает во всех прошивках, просто была "грамматическая" ошибка в подсчете контрольной суммы, тиражируемая в большинстве документов.

7. Перед командой выключения спутников QZSS (если это не первое включение питания и в памяти модуля что-то есть) надо стереть RAM модуля командой Полного Холодного Старта

п. 7 нигде не в документах не описан как обязательный, поэтому склонен считать это ошибкой! Которую, как я понял, китайцы не спешат исправлять. :(

 

Как я понимаю, данная настройка сохраняется в RAM, то есть при снятии VBAT она сбрасывается. Таким образом необходимость в подаче команды Полного Холодного Старта отпадает.

А если VBAT присутствует, то разрешение работы QZSS неизвестно (и узнать нельзя!). Но, мы можем иметь необходимые данные для горячего старта, которые стирать каждый раз крайне нежелательно!

 

То есть, при питании VBAT от ионистора

1. Запретить однократно работу QZSS нельзя, это делать надо каждый раз.

2. Стирать RAM при включении нелельзя, иначе потеряем горячий старт.

 

Иными словами, ОТКЛЮЧИТЬ QZSS НЕЛЬЗЯ! Косяк....

 

 

PS: Владимир, Что за проблемы с производством ML8088? Из-за задержек с поставкой придется, похоже, ставить аналоги в таком же корпусе. :crying:

 

Share this post


Link to post
Share on other sites

Пункт 7 актуален при случае, если ДО отключения приема QZSS приемник сумел поймать сигналы этих спутников, и они зафиксировались в памяти как "активные".

Считать или не считать это ошибкой - Ваше дело, мое дело донести корректную процедуру работы. Тем более непонятна фраза "Которую, как я понял, китайцы не спешат исправлять. :(" - речь идет о манипуляциях со старыми версиями ПО модулей, которые нет возможности перешить.

 

Далее:

Как я понимаю, данная настройка сохраняется в RAM, то есть при снятии VBAT она сбрасывается. Таким образом необходимость в подаче команды Полного Холодного Старта отпадает.

А если VBAT присутствует, то разрешение работы QZSS неизвестно (и узнать нельзя!). Но, мы можем иметь необходимые данные для горячего старта, которые стирать каждый раз крайне нежелательно!

 

То есть, при питании VBAT от ионистора

1. Запретить однократно работу QZSS нельзя, это делать надо каждый раз.

2. Стирать RAM при включении нелельзя, иначе потеряем горячий старт.

 

Иными словами, ОТКЛЮЧИТЬ QZSS НЕЛЬЗЯ! Косяк....

Не понял.

Если при включении питания произвести корректную процедуру (полный холодный старт, а затем выключение QZSS), то далее все будет корректно работать. И в ОЗУ приемника будут сохраняться требуемые установки.

А уж отследить разряд ионистора несложно - время с приемника пойдет "по умолчанию" до получения данных от спутников. Программным путем "ловится" элементарно.

Добавим, что опять же речь идет о манипуляции со старыми версиями программы.

 

PS: Владимир, Что за проблемы с производством ML8088? Из-за задержек с поставкой придется, похоже, ставить аналоги в таком же корпусе. :crying:

По поставкам ML8088 - регулярно вижу письма о поступлении модулей на склад.

Вы заказывали их?

Основная проблема - крайне длительные сроки поставки навигационного чипа STA8088CFG, превышающие 20 недель. ST теперь держит такие сроки...

Share this post


Link to post
Share on other sites

>>>ST теперь держит такие сроки...

 

согласно Commercial_Newsletter_November_2017 уже от 26 до 30 недель.

Share this post


Link to post
Share on other sites
7. Перед командой выключения спутников QZSS (если это не первое включение питания и в памяти модуля что-то есть) надо стереть RAM модуля командой Полного Холодного Старта

 

Я добавлю 5 копеек. Важно, дождаться чтобы RAM полностью очистилась и после подачи $PMTK104 надо выждать 5-10 сек до того как подать $PMTK352.

"before disable QZSS we must clear all RAM data using 104, so when customer send PMTK104 please wait 5-10 seconds".

 

И еще, чтобы не путаться, решение с отключением QZSS надо разделить на два случая:

1. Vbackup запитан

2. Vbackup не запитан

 

В первом случае RAM не сбросить отключением основного питания, и сбросится RAM только по команде полного холодного рестарта. Что же тогда с настройкой 352, если она хранится в ней же, в RAM? Ответ - подавать ее ПОСЛЕ холодного рестарта. Проблема уйдет, пока будет живо питание на vbackup.

 

Во втором случае RAM можно сбросить отключив питание, команда холодного рестарта не нужна. А как же 352, если она хранится в RAM? Ответ - подавать ее при каждом включении.

 

(Ну, есть и другие решения - горячий рестарт каждые 2 часа или обновление ПО, как тут уже было сказано)

Share this post


Link to post
Share on other sites
Я добавлю 5 копеек. Важно, дождаться чтобы RAM полностью очистилась и после подачи $PMTK104 надо выждать 5-10 сек до того как подать $PMTK352.

"before disable QZSS we must clear all RAM data using 104, so when customer send PMTK104 please wait 5-10 seconds".

Отлично! В документации этого нет, поэтому - БАГ!

 

И что так долго ОЗУ стирается? Там гномики перемычки перставляют что-ли? :cranky:

 

Вопрос: в новых прошивках исправлено? Или также QZSS можно считать практически неотключаемым?

 

И еще, чтобы не путаться, решение с отключением QZSS надо разделить на два случая:

1. Vbackup запитан

2. Vbackup не запитан

Вариант

3. Vbackup запитан от ионистора.

 

Полагаться на предположение, что если сбросились часы, то и RAM сбросилась, особенно зная МТК - нельзя.

 

Про костыль, который придется городить, чтобы отключить QZSS удаленно в работающем! устройстве - я уж молчу....

Share this post


Link to post
Share on other sites

Коллеги,

 

а что слышно про наших коллег и их конкурирующий продукт ublox M8 (дешевая rom версия),

они в шоколаде, или тихо помалкивают про перепайку миллионов трэкеров ?

Share this post


Link to post
Share on other sites
Коллеги,

 

а что слышно про наших коллег и их конкурирующий продукт ublox M8 (дешевая rom версия),

они в шоколаде, или тихо помалкивают про перепайку миллионов трэкеров ?

После того как связались с китайцами, ... тихо помалкивают. Обогатились некоторые в швейцарии ... .

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

Share this post


Link to post
Share on other sites

Да, в старой прошивке есть глюк.

Да, есть масса недокументированных особенностей у любого устройства.

Как было уже сказано, мы обсуждаем "способы лечения геморроя по фотографии" прошивок, которым более полутора лет.

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

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

Вот для них-то и предлагаются разные варианты решений - запрещение QZSS, полный холодный сброс, горячие рестарты каждые ххх минут и так далее.

Да, это "костыли", но они работают, и конечные устройства с ними благополучно функционируют, выполняя свои обязанности.

Процедуру отключения QZSS в новых прошивках могу запросить, если нужно. Но подозреваю, что она не изменилась.

 

Еще, до кучи, добавлю, что в AXN5.1.1 можно включить прием сообщений Galileo RLS (Return Link Service) или RLM (Return Link Message).

Это делается через SDK.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this