Jump to content

    

SIM68M - не выдет ГЛОНАСС

Дошли руки до этого модуля.

 

Вот пусть представители СимКома не обижаются, но документация отвратительная.

 

Подал питание, посыпались сообщения. На скорости 9600, хотя документация обещает скорость по умолчанию 19200. Ладно, проглотили. Вижу кучу сообщений $GP и $GL, ни одного $GN (я так догадываюсь, что это должны быть сообщения ГЛОНАСС, хотя нигде в документации этого явно не сказано).

Курю документацию (MT3333 Platform NMEA Message Specification For GPS+GLONASS), нахожу команду "$PMTK353,1,1*37 : Search GPS and GLONASS satellites", посылаю, получаю "Valid command / packet, and action succeeded", но в выводе ничего не меняется - сообщений $GN по-прежнему нет. Вопрос первый - что я делаю не так и как мне получить информацию от ГЛОНАСС?

 

Едем дальше. Читаем единственный документ именно про SIM68M: "SIM68M_Hardware Design_V1.04". Находим строку "Max NMEA update rate up to10 Hz (2), (2)Default is 1 Hz.". Отлично. То, что нужно. Это одна из причин, по которой в конструкцию заложили этот модуль. Хочу 10 Герц. Но как? Открываем документацию... имеем:

команда $PMTK220 (220 PMTK_SET_POS_FIX) Interval, msec - Position fix interval, Must be larger than 200. Стоп, но 200 мС - это 5 Гц. А как же обещанные 10?

ладно, читаем дальше:

команда $PMTK300 (300 PMTK_API_SET_FIX_CTL) Fixinterval, milliseconds - Range: [100 ~ 10000]. Уже лучше. К этой команде даже описание есть "Set Fix interval."

читаем еще дальше:

опа, команда $PMTK500(500 PMTK_DT_FIX_CTL) FixInterval, msec - Position fix interval [ >= 200]. Во-первых, снова 200 мС. А во вторых - где, блин, написано, что посылки с _DT_ в названии - это ответы на команды? "Догадайся, мол, сама". И на какие команды эти ответы - тоже сама догадывайся.

Короче: на одну из этих трех корманд модуль отвечает "Unsupported command / packet type", на две другие при попытке задать FiInterval меньше секунды получаю ответ "Valid command / packet, but action failed". Где обещанные 10 Гц??? Как пользоваться этими командами? У писателей этой документации руки отсохли бы, если бы они описали команды чуть подробнее?

 

Вертит Очками так и сяк:

То к темю их прижмет, то их на хвост нанижет,

То их понюхает, то их полижет;

Очки не действуют никак.

Это я в 4 утра пытаюсь получить обещаное от SIM68M три часа внимательно читая документацию. Причем модуль мне отвечает то ожидаемыми сообщениями $PMTK001 "001 PMTK_ACK", то $PMTK010 "010 PMTK_SYS_MSG". Я предполагаю, что вторые сообщения он мне шлет если я шлю свои слишком рано после включения. Где в документации написано, когда уже можно слать те или иные сообщения???

 

Короче, коллеги, выручайте:

1) Как его заставить выдавать координаты 10 раз в секунду?

2) Как из него вытянуть координаты от ГЛОНАСС?

3) может есть какая-то более другая документация?

 

P.S. До этого я думал, что самая плохая документация у STM32 на модуль USB.

Share this post


Link to post
Share on other sites

Если с нуля то желательно начинать с кита например SIM68M EVB Kit и софта к нему, NMEA желательно уже знать.

Share this post


Link to post
Share on other sites
Если с нуля то желательно начинать с кита например SIM68M EVB Kit и софта к нему
У меня изделие единичное и кит - непозволительная роскошь. Да и каким образом кит поможет? Он заменяет документацию?

NMEA желательно уже знать.
Все попадавшиеся мне описания NMEA сводились в описанию формата сообщений GGA, GLL, GSA, GSV, RMC и подобных. Эти сообщения разгребать я умею. Меня интересует только RMC. Что еще надо знать о NMEA?

Share this post


Link to post
Share on other sites

Если есть GN то значит глонасс поймался. С пакетами $Gх там полная неразбериха. Рекомендую руководствоваться глазами и терминалкой, доки мягко говоря могут не соответствовать прошивке.

 

По поводу невозможности поменять настройки. Часто команда не срабатывает потому что бодрейта нехватает чтобы пропустить данные в том режиме на который приемник перейдет после настройки. Т.е. сначала нужно повысить скорость а потом уже давать команду. Это теория - сам не пробовал, в документации про это нигде не сказано (ни на один приемник на МТК!), информация получена от поддержки одного из производителей.

Share this post


Link to post
Share on other sites
Хорошо, версию прошивки я сегодня вечером как-нибудь добуду ($PMTK605?), "и можно сюда" - это писать в указанный там адрес техподдержки? Потому что приведенную там документацию я читал, легче не стало.

 

 

Часто команда не срабатывает потому что бодрейта нехватает чтобы пропустить данные в том режиме на который приемник перейдет после настройки.
О, спасибо. Попробую поднять скорость.

 

 

Если есть GN то значит глонасс поймался.
То есть пока он не поймается, пакетов не будет? Если это так, то дельное замечание. Но почему этого нет в документации (вопрос скорее риторический)?

 

Share this post


Link to post
Share on other sites
То есть пока он не поймается, пакетов не будет? Если это так, то дельное замечание. Но почему этого нет в документации (вопрос скорее риторический)?

Пока есть только GPS то идут GPRMC. Как только появляется и (или) глонасс то идут GNRMC. Возможно бывает еще и GLRMC если настроить "глонасс онли". Но это только пробовать, докам верить в этом вопросе нельзя

Share this post


Link to post
Share on other sites
Пока есть только GPS то идут GPRMC. Как только появляется и (или) глонасс то идут GNRMC.
Ага, спасибо еще раз. Правильно ли я понимаю, что если у меня пошли GNRMC, то на GPRMC я могу не обращать внимания, т.к. в сообщениях GNRMC точность будет выше за счет совместного использования данных обоих систем, в то время как GPRMC будет содержать данные только от обработки GPS?

 

P.S. Смутило, что GP идут даже если GPS не видит ни одного спутника. Думал, GN будут идти аналогично, пусть и с признаком "data not valid".

Share this post


Link to post
Share on other sites

Все верно, GP идут всегда, в том числе показывают скучное текущее положение дел с нулями и левым временем. Как дела улучшаются то:

$GPRMC,212737.000,...

$GPRMC,212738.000,...

$GPRMC,212739.000,...

$GNRMC,212740.000,....

$GNRMC,212741.000,....

 

Показывают GPRMC и GNRMC абсолютно одно и тоже. И они одновременно не передаются (конечно это может от конкретной реализации зависеть). Можно в общем брать любой пакет и совать в один и тот же парсер.

Share this post


Link to post
Share on other sites

Подскажите пожалуйста чем команда 220 PMTK_SET_POS_FIX  отличается от 300 PMTK_API_SET_FIX_CTL ?

Share this post


Link to post
Share on other sites

Команда 300 PMTK_API_SET_FIX_CTL в современных версиях ПО MT3333 может не поддерживаться.

Это рудимент от  версии протокола 2.х, в протоколах начиная с 3.4 я ее не вижу.

Share this post


Link to post
Share on other sites

Не забывайте обновлять модули до версии прошивки 5.1.

Рекомендую пользоваться документацией MTK.

Share this post


Link to post
Share on other sites

5.1.6 пока текущая версия, ждем обновления

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