Our Country Sites: Argentina|Brazil|Chile|Mexico|Peru

Pergunta sobre AGPS

Versão para impressãoVersão para impressãoSend by emailSend by email

Caro Juan Felipe

Possuimos um I275 com serviço de AGPS habilitado e estamos desenvolvendo uma aplicação JavaME que necessita dados de localização. Utilizamos para testes o exemplo POSDemo aqui do forum, e quase nunca conseguimos obter uma informação com auxilio (AGPS), sempre recebemos o status FIX_NOT_ATTAINABLE_ASSIST_DATA_UNAVAILABLE quando utilizamos delay=low e FIX_NOT_ATTAINABLE com delay=high, os testes estão sendo executados outdoor. Gostaria de saber se o I275 tem algum problema de GPS ou firmware ou se o serviço AGPS no Rio de Janeiro passa por algum problema.
O que fazer ?

Grato pela sua ajuda e orientação para que possamos prosseguir com o nosso projeto.

Atenciosamente

Sergio Oehler
True Systems
Parceiro Certificado Nextel

A-GPS no I275

Juan Felipe

Muito obrigado pela sua excelente explicação. Inicialmente pensei que na opção delay=high o handset obtivesse as efemeredis do Location Server e isto só ocorre na opção delay=low , por isso estava tendo dificuldade em obter a primeira localização.

Mais uma vez grato pela ajuda

Sergio Oehler
True Systems

aGPS em i275

Que eu saiba, eu não ouvi falar de nenhum problema com o GPS no i275 -- o aparelho debe estar funcionando.

Vamos descartar possibilidades:
1) Tente com o aplicativo padrão do aparelho (GPS na tela principal). Consegue fazer uma localização? Se consegue, e a resposta é rápida (40sgs/1min pela primeira requisição) então pode ser problema do aplicativo. Se consegue, e a resposta e mais lenta (3 minutos pela primeira requisição), então então pode ser problema de conexão com o servidor de assistência. Se não consegue, então o problema é do aparelho.

Se tem o serviço de aGPS habilitado, a única outra coisa que eu perguntaria é qual é o endereço IP do aparelho -- para confirmar se ele tem visibilidade ao servidor de assistência.

Um abraço,

Juan Felipe

aGPS em i275

Prezado Juan Felipe

Obrigado pela rápida resposta, vou fazer os testes que você sugeriu, outdoor, e amanhã posto os resultados.

Quanto ao endereço IP do aparelho , é 10.107.133.xx para que você possa confirmar.

Um Abraço

Sergio Oehler
True Systems

aGPS em i275

O endereço do IP é no rango correto para poder ver o servidor de assistência.

Então, a outra coisa que eu esperaria e determinar se consegue obter uma localização com o aplicativo do GPS nativo. Se não conseguir, então teremos que fazer uma depuração mais complexa.

Um abraço,

Juan Felipe

AGPS em I275

Juan

Após testes outdoor verifique que consigo obter a localização com o aplicativo GPS nativo. Porem observei que a localização somente é obtida se eu estiver totalmente parado.
Em nossa aplicação estava tentando obter localização com delay=high a cada 5 minutos e mesmo outdoor nunca funcionava, passei entao a utilizar delay=low , com mais frequencia ai passou a funcionar melhor.

Um Abraço

Sergio Oehler
True Systems

aGPS e parâmetro "delay" en mposition

Olá Sergio,

Acho que você deu na explicação: o parâmetro delay indica ao mposition como se tem que comportar.

Vou explicar quais são as opções, mais primeiro vamos falar do GPS e como ele funciona. Para obter uma localização com GPS (com qualquer tipo de aparelho GPS), precisa vários dados que são enviados pelos satélites num ciclo de 30 segundos:

  • um almanaque que indica a grosso modo qual é a posição de cuada um dos satélites na constelação de satélites GPS (24 em total). O almanaque permite que o chip GPS saiba com anterioridade quais satélites provavelmente estejam na região geográfica. Cuada satélite envia uma porção do almanaque (1/25 parte dele) em cuada transmissão de 30 segundos -- então tem até 12.5 minutos para obter um almanaque completo se somente recebe sinal de um satélite.
  • uma série de efemérides que permitem calcular a posição específica do satélite que as enviou
  • uma data na qual enviou o satélite a sinal

Para fazer uma localização, precisa ter a data e as efemérides de pelo menos 4 satélites além de um almanaque completo. Então, pode ver que os fator principal de limite é obter um almanaque completo -- sem ele, não consegue fazer localização.

A letra 'a' em aGPS significa "assisted" -- assistido. A rede Nextel sempre sabe a qual torre um aparelho esta ligado, e também sabemos as coordenadas de essa torre. Então, a rede pode usar essa informação para lhe enviar ao aparelho o almanaque completo e as efemérides dos satélites que devem estar visíveis. Esses dados são enviados por um servidor chamado o MLS (Mobile Location Server). Isso reduz o primeiro tempo de localização do máximo de 12.5 min. teóricos até menos de 45 segundos (o tempo necessário para obter a data completa enviada por 4 satélites. Essa é a assistência.

O almanaque tem uma vida de 1 hora -- após de isso, eles caducam e tem que ser atualizados.

O parâmetro "delay" que passa à requisição com a API com.motorola.iden.position.PositionConnection indica ao aparelho como se comportar.

delay=no
lhe indica à API de obter somente as coordenadas da torre/célula à qual é ligado o aparelho
delay=low
lhe indica ao API de obter os dados de assistência do MLS se ele não os tiver. Para que o MLS envie os dados, ele deve saber que o aparelho tem ativado o serviço de assistencia para GPS (aGPS) -- se não tiver, não envia os dados. Com delay=low, a API tem um timeout de 32 segundos. Se não consegue obter os dados de assistência (porque não tem o serviço de aGPS ou porque esta fora de cobertura da rede), ele tenta localizar mesmo, mais o timeout fica em 32 segundos.
delay=high
O aparelho opera de modo autônomo, baseando-se somente nas sinais do satélite. Se ele tiver dados de assistência que sejam válidos, os usa, mais se não os tiver, não tenta os obter do MLS. Isso permite usar o chip GPS mesmo se o aparelho estiver fora de cobertura da rede. Ele tem um timeout de 180 segundos.

Então, a recomendação é de iniciar com um delay=low para obter os dados de assistência da rede, e de alí passar a delay=high para ter um timeout mais extenso, e fazer um delay=low quada certo tempo para se assegurar de ter os dados de assistência atualizados.

[]s

Juan Felipe

aGPS

Olá Juan,

Estou tendo o mesmo problema que o Carlos apresentopu em seu 1º comentário.

FIX_NOT_ATTAINABLE_ASSIST_DATA_UNAVAILABLE quando utilizamos delay=low e FIX_NOT_ATTAINABLE com delay=high

O meu IP é 14.56.119.XXX, já tenho plano de dados habilitado (Plano Quero 400) meu aparelho é um i877.

Gostaria de saber o que faço para que o Low/high passe a funcionar.

Muito obrigado!

Abraços,

André.

Hola Juan

Tengo el mismo problema estoy probando el codigo fuente que nextel ha colocado en su blog y cuando lo subo a mi equipo motorola i335 me vota este error FIX_NOT_ATTAINABLE_ASSIST_DATA_UNAVAILABLE.
Tengo habilitado el servicio de data
Solo tengo la ip de mi operador en mi equipo nextel que es 10.119.88.198 necesito colocar alguna ip adicional.
De antemano muchisimas gracias

Si descartas el tema del

Si descartas el tema del servicio GPS, tambien debes descartar si tu equipo tiene el ultimo firmware disponible.