Pulsa aquí para quitar la publicidad.

El por qué de los problemas del GPS, por lo menos en los MKT...

Tema en 'Tutoriales y Guías Android' iniciado por mangel, 30 Sep 2014.

  1. mangel

    mangel Simdualero de Oro

      Esta explicación la colgué en el foro de Zopo España y tal cual la transcribo. Espero sea útil.
      Intentaré dar explicación a todas las interrogantes que se han planteado sobre el tema del GPS de los smartphones. Aviso que va a ser un ladrillo, pero espero aclare muchas dudas.
      He leido algunos post que otros compañeros han puesto para que cada uno pueda mejorar la recepción y con ello la navegación que a fin de cuentas es de lo que se trata. Se centran prácticamente en las configuraciones del A-GPS y EPO...
      Conviene en primer lugar explicar los tres conceptos que se manejan: GPS, A-GPS y EPO.
      GPS (navegación NAVSTAR) que podríamos decir que el el verdadero sistema de geoposicionamiento. Creado por los EEUU, es el más usado. Existen otros dos más de uso mundial, GLONASS creado por Rusia y GALILEO creado por Europa. Los sistemas de posicionamiento GPS modernos son capaces de posicionarse con los tres sistemas. Los smartphones (que yo sepa) hoy por hoy solo son capaces de localizarse con NAVSTAR.
      A-GPS es un GPS asistido. Se basa en descargarse cada cierto tiempo una información de ámbito local, de manera que con esta información almacenada en el teléfono y las antenas de GSM a las que estamos conectados, saber qué satélites están al alcance del GPS. Esta implementación es debido al retardo que muchos GPS sufren en el tiempo para el primer posicionamiento, ya que, dependiendo de donde esto suceda, podemos encontrarnos que no son capaces de descargar la información de los satélites y por lo tanto imposible de geolocalizarse.
      EPO es un fichero que proporciona al smartphone la predicción de la órbita de los satélites, respecto de la posición en la que nos encontremos. Por ello, la validez de este fichero viene a ser de un mes aproximadamente.
      Pues una vez que tenemos claro los coneptos, lo importante es saber que, aunque tengamos A-GPS y EPO perfectamente, esto no nos garantiza posicionarnos y navegar correctamente. El porqué es sencillo, A-GPS y EPO buscan, por decirlo de una manera, "inicializar" más rápidamente al GPS, pero el que tiene que dar la talla es precisamente éste por medio de su antena y aquí está el principal escollo.
      Antes de continuar diré que hay en el foro información más que suficiente para establecer correctamente el A-GPS y EPO. Como comentario diría que en lugar de usar en el fichero gps.conf, aquellos valientes que han rutado su móvil el servidor de google, usen el servidor de Nokia:
      SUPL_HOST=supl.Nokia.com
      Es más eficaz que el de google. El resto son parámetros que poco o nada influirán en el GPS propiamente.
      El GPS consta del chip como elemento físico, el driver y sin ir más lejos el GL engine. El chip es realmente un receptor de radio frecuencia, es decir, una antena, que se comunica directamente con los satélites. Para poder geoposicionarse necesita comunicarse con al menos 3 satélites. Como tal antena, ya tenemos uno de los puntos de fallo.
      El driver es una API que nos proporciona comunicación con la antena. Está poco optimizado y MediaTek no lo libera, por lo que nada, a no ser en plan pirata se puede hacer. Buscando llegué a encontrar un driver que una persona en plan particular, había retocado, pero no lo probé porque no era para el chip que en mi caso (Zopo 990) posee mi teléfono. Los driver se suelen localizar en los directorios /system/lib/hw y excepcionalmente /vendor/lib/hw, suelen comenzar por gps* y, dependiendo de la versión de android acaban en *so.
      El GL Engine es, por decirlo de una manera, el motor que asiste al driver para la detección de los satélites o, como hemos visto con el A-GPS, descargar esta información de los servidores SUPL/NTP. El GL Engine (glgps, gpsd,...) usa ficheros en formato tipo gps.xml, gpsconfig.xml, gps.conf... que le proporciona los parámetros para funcionar. Con esta información, la complementa con información adicional como puede ser la proporcionada por los servidores EPO y que se almacenan en el fichero epo.dat (también en ficheros como gldata.sto, lto.dat,...)
      Entonces, con lo que acabamos de leer, ¿por qué no funciona bien el gps? Varios son los motivos que voy a intentar desgranar.
      En primer lugar, es importante distinguir navegar con la opción de datos activada o no. Como hemos visto y, fundamentalmenta A-GPS, usa la conexión de datos para proporcionar la información al motor, pero dependiendo de donde nos encontremos, la saturación, la antena GSM de nuestros teléfonos, etc. la fiabilidad puede ser tan "penosa" como la del propio GPS. En mi caso, que principalmente la actividad es off-road, la opción datos está descontada. Por ello, vamos a centrarnos en, exclusivamente, el GPS.
      ¿Qué aspectos son eseciales conocer? Como tal antena, dependerá de la misma la capacidad de recepción de los satélites. Como registra la intensidad es importante. Muchos habreis visto que los navegadores usados habitualmente en los coches llevan una antena exterior para colocar en el techo del vehículo. Las razones son varias y válidas para trasladarlas a los smartphones. Las antena está sometida a condicionantes como cualquier receptor, ya que es una señal de radio frecuencia. Edificios, paredes, árboles,... atenúan la señal, llegando incluso a anularla. Un coche, al ser un elemento metálico, digamos que actúa como jaula que limita la recpeción de las señales, por eso se dice que se ponga, cuando hablamos de teléfonos, pegaditos al parabrisas, pero, algo que desconoce mucha gente y que es motivo de que siga sin funcionar es, que aparte del coche, aunque se acerque al parabrisas, la señal no tiene porque aumentar, ya que la mayoría de estos elementos contienen plomo, actuando como atenuadores de la señal. La conclusión es que quien quiera usar el smartphone en el coche, debe buscarse una solución para colocar una antena en el exterior. Pero esto no le va a garantizar una mejor navegación como veremos... aunque algo mejorará.
      Porque para conseguir una buena navegación, es importante, no solo que haya visibles tres satélites registrados, sino que además la recepción, es decir, la calidad de la señal supere unos determinados niveles. Es realmente esta la causa de porqué los smartphones aparentan no funcionar el GPS. La calidad de señal es muy pobre.
      Si habéis podido probarlo en ciudad, en el campo, pero, como en mi caso, por varias partes de España, veréis que las diferencias son notables, llegando en Madrid (provincia) a detectar 4/5 satélites para uso con una calidad de señal pobre y en Gerona (provincia) 7/8 con una calidad aceptable. Es, en base a esta señal, la que determina la precisión (accuracy en inglés) y que permitirá una mejor o peor navegación. Si la precisión es de 5 metros o superior, como alguno habéis comentado, en determinados momentos con el coche seguimos en la carretera, pero con el navegador hemos tomado el desvío...o al revés.
      La conclusión es que necesitamos mejorar la calidad de la señal detectada para tener un más que aceptable uso de las funciones asociadas al GPS.
      Para que podamos apreciar lo que comento, el GPS que compré para uso off-road, posee un chip MTK, como el de los teléfonos, pero el driver está desarrollado por el fabricante del GPS, no por MediaTek. Como os podéis imaginar la diferencia es abismal.
      Con lo que hemos visto hasta ahora, la conclusión es que realmente los teléfonos con chip mediatek, no es que no sea bueno el GPS, sino que es una antena que llega hasta dónde puede llegar. Dependiendo del chip implementado en el tlf, así será su antena, pero su "potencia" no será toda la que realmente nos gustaría, sobre todo en ambientes donde la calidad de señal registrada es pobre, como sucede en ciudades.
      Yo vivo junto a un cuartel de radiotransmisiones del ejecito y ya no es solo el GPS, la calidad de la telefonía, 3G... es malísima, por las interferencias.
      Podríamos pensar que en las ciudades o en condiciones de mala señal, el tlf usase el posicionamiento por antena de telefonía en lugar de por GPS, pero pasa tres cuartos de lo mismo. He podido comprobar que en ciudad, por lo menos el modelo de Zopo que yo tengo, fluctúa muchísimo la conexión 3G. Si para posicionarse es necesario que haya como mínimo tres antenas en las que nuestro tlf está identificado, he constatado que una o dos es lo más habitual y en estos casos imposible ubicarse...
      ¿Qué soluciones son factibles? Pues las posibilidades son reducidas y "engorrosas".
      Por un lado mejorar el driver. No habría ganancia de la señal, pero aplicando algoritmos mejorados se podría hacer una mejor gestión de la señal recibida de cada satélite. No es la mejor solución, pero ya sería algo.
      Una antena con mayor potencia de recepción. Pero me temo que no es un capricho del fabricante el no incorporarla, sino que (y esto es suposición mía) una antena de mayor calidad significaría mayor consumo de batería. También podría ser que la colocación interna de la misma no sea la más idónea. Se me hace muy cuesta arriba que mi navegador off-road con chip mediatek dure unas 20 horas funcionando y con precisión, y el del tlf no. Quizás los distintos fabricantes deberían buscar la mejor ubicación para cada uno de los elementos hardware y esto vale para la antena wifi, GSM...
      Usar antenas externas. Aquí es donde con nuestros medios realmente podemos incidir. Para ello he hecho varias pruebas con los siguientes elementos:
      - Antena por bluetooth
      - Antena por bluetooth con antena exterior conectada
      - Doble antena exterior
      Usando una antena por bluetooth en ambientes limpios, es decir, sin objetos cercanos que atenúen la señal, aunque pueda haber interferencias, algo se mejora la ganancia de señal, ya que es la antena bluetooth la que se encarga de conectar con los satélites. El inconveniente es que no todos los programas son capaces de usar antenas GPS por bluetooth eficazmente. Aún así es muy recomendable, porque la principal ventaja es que al no usar el GPS del tlf, la duración es la habitual.
      Usando antena bluetooth con antena exterior conectada (no todas las antenas bluetooth poseen esta capacidad). Seguramente todos habréis visto alguna vez las antenas que se usan para poner por fuera de un coche. Viene a ser un cuadrado de unos 2,5 centímetros, que por medio de un cable coaxial trasmite la señal al dispositivo. Este caso es el que he usado para navegar en el coche, porque la antena bluetooth dentro del coche, adolece los mismos problemas que la del tlf. sufre atenuación por estar dentro del habitáculo. Si es al aire libre, si ya de por sí la antena bluetooth mejoraba la calidad de señal recibida, con la antena exterior se mejora aún más. En ambos casos la precisión ronda los 3 metros.
      Doble antena exterior. Esto ha sido un descubrimiento verdaderamente gratificante. El problema es lo engorroso del sistema. Consiste en dos antenas interconectadas por cable coaxial y de una de ellas, salida usb para alimentarlas. No lo he podido probar en un ordenador todavía por medio de la conexión usb, de manera que usando un programa de navegación reconozca estas antenas. Con el smartphone su funcionamiento es diferente. Podemos alimentar a las antenas desde un dispositivo externo, como por ejemplo una batería de las usadas para recargar, o desde el propio tlf por medio de un cable OTG. Recomiendo la primera opción para no tirar de la batería del tlf. El funcionamiento es el siguiente: una de las antenas hay que colocarla pegada al tlf y la otra fuera del coche, pero que no estén muy cerca una de otra, para que entre ambas no interfieran. Lo que sucede es que la antena GPS del tlf registra la señal que está llegando a la antena que hemos colocado cerca, de manera que esta antena es un repetidor y sorpresa, donde antes registraba en parado en mi casa como mucho 5 satélites, con niveles de SNR entre 10-25, me registra entre 8-9 satélites con valores entre 60-70. La precisión de 1 a 2 metros. No me ha dado tiempo de probarlo en montaña, pero con los valores medidos en mi casa, tienen que ser espectaculares. Inconvenientes, el ya comentado engorroso sistema de: alimentación adicional, posicionamiento de la antena repetidor pegadita (literalmente) al tlf y el follón de cables. Solamente la longitud del cable de interconexión entre antenas debe ser de unos 3 metros...
      Viendo este último sistema, me surgió la pregunta, ¿por qué los fabricantes no implementan la posibilidad de conectar una antena GPS externa a través del puerto usb? Con el sistema comentado la conexión por usb solo es para alimentar a las antenas. Sería una mejora sustancial poder conectar una antena externa por el puerto usb...
      Rogatorio: fabricantes de tlf con tecnología MediaTek, implementen la posibilidad de conexión de antena GPS externa por puerto usb... Señores de MediaTek, mejoren de una vez el driver...

      Antes tenía un Samsung Galaxy S3 que no solo navegaba de lujo, sino que tiene la posibilidad de usar GPS (NAVSTAR) o GLONASS. ¿Sería por eso que funciona de miedo la navegación? Ahora lo tiene mi hijo...

      Llegados a este punto, poco más se me ocurre poder hacer (si alguien tiene una propuesta...), pero la realidad es que realmente no hay un problema con el GPS . Funcionar, funciona, pero con unos niveles que, bajo determinadas circunstancias, no son suficientes. Y tengo claro que posibilidades de mejora hay, porque durante toda la disertación he comentado las diferencias con mi GPS off-road, pero hay un hecho determinante por el que tengo claro que se puede hacer más y es, que con mi GPS puedo navegar en modo on-road; que esté en el interior del coche no es problema para captar la señal y proporcionar una navegación correcta, y ni lleva, ni es posible, conectar antena externa...
      PD1: Recientemente he leido que los Quadcore de Mediatek tienen problemas con la antena GPS incorporada, pero no lo he podido constatar fehacientemente.
      PD2: En primer lugar siento el ladrillo, pero espero sea de utilidad. En segundo lugar, he intentado ser claro en las explicaciones, por lo que algunos conceptos los he simplificado evitando ser purista. Que no se ofendan los entendidos.
      Saludos
       
      Última edición: 30 Sep 2014
      • Me Gusta Me Gusta x 3
      • Gracias Gracias x 1
      • asgorreidaa

        asgorreidaa Simdualero de Platino

        • Veteran@
        586
        173
        25 Jun 2014
        Utebo (Zaragoza)
        Ladrillo o no, gracias por la información. Muy bien explicado.
         
      • perform

        perform Simdualero de Bronce

          40
          0
          31 Jul 2014
          Gracias por la explicación muy detallada y fundada. Lo que no me gusta es la recomendación final. Estaríamos buenos que para tener GPS en los móviles tuviéramos que utilizar antenas exteriores. Yo he tenido hasta hace poco un S3 y también actualmente un S4 los dos conjuntamente, y el funcionamiento GPS ha sido y es fenomenal. Ahora con mi 990+ he tenido que llevar a SAT de Zopo en España para que me cambiaran la antena. Su funcionamiento ahora es correcto aunque no tan perfecto como los Samsung
           
        • mangel

          mangel Simdualero de Oro

            Eso sería lo ideal, no tener que acoplar ninguna antena, pero los SAMSUNG trabajan con GPS y GLONASS, lo que mejora su posicionamiento además de contar con una mejor antena. Según he leido, Xiaomi además con BEIDOU, que es el posicionamiento Chino (en desarrollo a nivel global)
            Y con el S3 en ciudades donde los edificios están muy próximos, no era capaz de posicionarme bien. Limitaciones de tener un equipo multifuncional. Es por ello que para estos casos, donde la coberura es mala no, malísima, poder conectar una antena adicional con mayor potencia, incluso sin necesidad de acoplar vía usb que podría venir en la propia funda, similar a los móviles que diponen de conexión de carga inalámbrica. Opciones hay miles. Son ganas de los fabricantes hacerlo...
             
          Verificación:
          Borrador guardado Borrador eliminado

          Compartir esta página

          Galletas! Nos obligan a informar que utilizamos cookies (como casi todas las webs). Al continuar navegando aceptas su uso.