Partilhar um GPS por várias aplicações (GPSGate)

por

em

Se possuímos um dispositivo GPS que apenas tem um interface USB ou um interface série proprietários, nomeadamente Garmin (protocolo PVT), seria muito útil dispor da capacidade de converter aquela conexão USB numa porta série virtual que suporte NMEA, protocolo “standard”, reconhecido por um espectro já considerável de software.

Pensando ainda de outro modo: e se eu puder dispor da capacidade de receber os dados posicionais transmitidos pelo dispositivo GPS (Garmin USB ou Bluetooh NMEA) e de os partilhar por mais que uma aplicação em simultâneo?

É que tipicamente a conexão entre o dispositivo GPS e o programa que lê os dados por aquele enviado opera-se através de uma porta série (ou porta COM). Se um programa está aceder aos dados NMEA a porta COM fica bloqueada e mais nenhum programa lhe pode aceder

O programa sueco Franson GPSGate (disponível em http://franson.com/gpsgate/) permite ler e converter os dados transmitidos por um único dispositivo GPS físico, ligado por USB, porta série (RS-232) ou Bluetooth, numa ou mais portas série virtuais as quais podem ser depois utilizadas para estabelecer conexões NMEA com qualquer software que as aceite, replicando assim os dados.

A imagem que se segue exemplifica de forma esquemática o modo de funcionamento do GPSGate:

Para o efeito apenas se exibem duas portas virtuais, mas o programa foi concebido para trabalhar com um número arbitrário de portas.

Existem duas versões deste programa:

  • A versão “Express”, com um custo de 9,95€, que permite ao utilizador criar e utilizar duas portas série virtuais;
  • A versão “Standard”, com um custo de 29,95€, que permite, por seu lado, criar um número praticamente “ilimitado” de portas série virtuais.

A instalação do GPSGate é simples e apenas exige como requisito o “Microsoft Windows Installer” (produto que integra as últimas versões do MS Windows). A configuração é também ela muito fácil e encontra-se praticamente automatizada. Assim, quando o utilizador executa o programa pela primeira vez, tendo previamente ligado o GPS e estabelecido uma conexão com o Computador Pessoal, é activado um assistente (“wizard”) que faz a procura dos dispositivos GPS, configuração e criação de portas COM virtuais:

O utilizador ao premir o botão “Next” dá início à procura de dispositivos GPS ligado ao Computador Pessoal. Neste passo é sempre possível desmarcar os tipos de dispositivos que não interessam, acelerando assim a busca.

Sempre que for encontrado um dispositivo o programa notifica o utilizador através de uma caixa de diálogo, a qual permite aceitá-lo como dispositivo de entrada de dados (“input”).

Neste passo do assistente o utilizador deve indicar como o GPSGate irá lidar com os dados recebidos do dispositivo físico de modo a serem partilhados com outras aplicações. Se estiver inseguro quanto ao que escolher prima simplesmente o botão “Next”.

O último passo do assistente fornece ao utilizador um resumo das várias portas virtuais criadas pelo programa. É possível guardar esta informação num ficheiro de texto para posterior referência (botão “Save”).

Findo o processo de configuração, o utilizador pode começar então a utilizar aplicações como o Google Earth, OziExplorer ou GarminPC, ligando-as às portas virtuais disponibilizadas pelo GPSGate.

O programa quando está em execução aparece como um ícone de notificação, na zona que apelidamos de “systray”. Através dele é possível aceder a todas as funções de configuração avançada e executar de novo o assistente de configuração.

O ícone de notificação tem ainda a função de indicar o estado da ligação ao dispositivo físico de GPS:

 
O GPSGate não detectou qualquer dispositivo GPS;


Foram detectados dados posicionais válidos, mas o dispositivo GPS ainda não conseguiu determinar (fixar) a sua posição;


Uma posição válida foi detectada.

O programa GPSGate oferece ainda um outro conjunto de funcionalidades muito interessantes:

  • NMEA Logger, funcionalidade de registo (log) dos dados NMEA transmitidos pelo dispositivo GPS e que podem ser posteriormente reproduzidos;
  •  Suplemento (PlugIn) para ligar o GPSGate ao Google Maps (instalado no browser), permitindo navegação neste em tempo real;
  • Possibilidade de partilhar os dados transmitidos pelo dispositivo GPS através de uma rede TCP/IP, e, por conseguinte, de vários computadores pessoais;
  • NMEA MUX, funcionalidade de recepção de dados provenientes de vários dispositivos físicos de GPS, combinando-os entre si.

Na imagem que se segue temos o computador a trabalhar em simultâneo com o OziExplorer, Google Earth e Garmin Mobile PC. Todos estão em modo de navegação em tempo real, ligados por cabo USB a um Garmin 60CSx com o mapa vectorial TopoLusitania (só falta mesmo um odómetro!):

Nota: A Garmin ainda hoje oferece uma ferramenta que permite a recepção de dados posicionais no formato PVT e a sua tradução em NMEA. Neste contexto comporta-se exactamente como GPSGate, dado que a conexão USB ou série (RS-232) é convertida numa porta COM virtual. O seu nome é Spanner e originalmente fazia parte do produto GPS 18. O seu desenvolvimento sempre esteve a cargo da empresa Constellation Data Systems, Inc. (“Multi Port GPS Utility”) Nunca falámos da mesma porque tecnologicamente termina no Windows XP. Até à data não existem quaisquer esforços no sentido de a compatibilizar com as plataformas Windows Vista ou Windows 7.


Comentários

3 comentários a “Partilhar um GPS por várias aplicações (GPSGate)”

  1. Excelente artigo, muito obrigado!!

  2. na linda de frente… parabéns 🙂 e OBRIGADO

  3. Boas.
    Já testei e vale a pena. É altamente.
    Depois coloco as fotos da aparelhagem montada.
    Inté