Showing posts with label USB GPS. Show all posts
Showing posts with label USB GPS. Show all posts

Friday, October 24, 2014

Using USB and Bluetooth GPS with Laptops and Netbooks (PC) - Part 1


After the success of the post on Using USB GPS on Android,  eventually I am going discuss the obvious - using the USB GPS receiver with your laptop or netbook, which this kind of GPS receivers were made for in the first place. I say laptop, because you are not going to go around with a desktop in the outdoors, otherwise these would work just as fine with any PC.

I am going to describe the workflow assuming you have a Windows PC, readers with other OSs (Mac or Linux) have to find out equivalent functions and software on those platforms. Now, first thing first, making your GPS to work with your PC, and you would want to plug the GPS in one of the PC's USB ports at this point. For the absolute beginners, please don't expect a new disk drive to appear in your My Computer like what happens when you plug in a USB Flash drive or external Hard Disk. Notice that when you plug in your GPS for the first time, Windows will automatically detect a new hardware and try to install an appropriate device driver so that it can communicate with the new device the way it should. In this case the GPS would appear as a COM port, which would maintain the communication between PC and GPS. Instead of looking into My Computer you have to look for the new device in the Control Panel > Device Manager > Ports (COM & LPT).

If Windows was successful in finding the appropriate driver, you would see a new serial (COM) port listed here. However, if Windows was unsuccessful, you would still see an unrecognized device marked with that infamous yellow exclamation sign, which means you have to supply (install) a device driver for your GPS. The driver CD may already have come with your GPS or you may have to download it from the supplier/manufacturer's website. One of the most common hardware that comes built-in with this types of GPSs is a small chip called PL-2303, which functions as a bridge between USB on the PC side and Serial Port on the GPS side. The device driver, therefore, you are looking for is a Prolific PL-2303 driver (other OS users may also benefit from this information). If it is not a PL-2303 on your GPS, you have to find out which USB-to-Serial hardware is used in your GPS, and download a generic device driver for that hardware from anywhere on the Internet. Once you install the driver from CD or download (or upgrade driver from Device Manager) the exclamation sign would go away, which would mean your GPS is now ready to communicate with PC. Remember the COM port number shown in the Device Manager list (in my case it is COM port 7, as shown in Figure 1).

Figure 1.

After having completed this preparatory step, fortunately which you have to do only the first time, the real communication with GPS might begin now. And this part involves a small software, which will allow you to see what the GPS is doing once connected, and what kind of data it is sending to your computer. If you are using Windows XP you already have a small software called Hyper Terminal; for Windows 7 or 8 download any free terminal emulator software. In this example I am using a nice little once called TeraTerm (you are free to use the terminal program of your choice). Unzip the downloaded file, and run TeraTerm by double clicking the ttermpro.exe executable file. As shown in Figure 2, select "Serial" as your preferred communication method, and select the COM port number to which your GPS is connected, in my case COM7. After clicking OK you may get something like what appears in Figure 3.

Figure 2.

Figure 3.

Now, this is not what you'd probably expected. You instead may be seeing something different, like in Figure 5; if so, you don't have to follow the next step. In either case, your GPS is sending data to your computer, it's just the difference how the data is being received. If you are in Figure 3 situation, that would mean your software is trying to receive data at a speed different than what the GPS is set up to send it. So, from the "Setup" menu, click "Serial port....", and change the Baud rate (speed) to what your GPS's manual suggests (in my case 4800 instead of the TeraTerm default 9600), as shown in Figure 4. If you are correct, you get this data stream as shown in Figure 5.

Figure 4.

Figure 5.

Most likely this is still not what you were hoping for. What you get here are called NMEA sentences. Most GPS receivers  are configured to continuously send these NMEA sentences at predefined interval (usually 1-2 sec) to whatever display/data terminal it is connected to. So, you are getting perfectly usual staff. These NMEA sentences carry all the information you would ever want from a GPS. At this point, however, you would require another piece of software to interpret this bizarre looking data into nicely formatted information on the satellites visible on your sky, their PRN numbers, satellite that are being used by your receiver, your location, your speed and direction if you are moving, GPS accuracy of your location (fix), date & time and a variety of other useful staff. This group of software is generally known as NMEA parser.

In the second part of this tutorial I shall recommend some beautiful GPS software, and show how to use and get the most out of them.

You might be wondering, what about the Bluetooth GPS receivers that I promised in the title. Well, that's simple, when you pair a bluetooth GPS with your PC, you get a COM port over bluetooth. Use that port the same way.

Friday, February 7, 2014

Using an external USB GPS with Android devices (or Laptops)

The very first post on this blog Using an external bluetooth GPS with Android device is creating quite a bit of traction for my blog lately. This may be because not a lot of stuff on the Internet with appropriate keywords is available on the subject. This realization makes me write this post. What if you have a USB GPS instead? I am going to share my experience here.

Assuming that you have a USB GPS which can spit NMEA sentences (most of them do, as I know of), you can connect it to your Laptop through a standard USB port and use an appropriate software to collect location and other information from the GPS, or start logging data in a file for later use. I shall cover that in a later post.

What if you don't have a USB GPS already, and may be planning to have one? Well, go for it. Generally they come in two shapes: in a USB stick like your flash memory stick; and in a mouse-like appearance - GPS chip in a case connected to a long cable to USB port. Mine is of latter type, I bought it from Amazon (UK) for about 30 GBP, it looks likes this. Here is a picture of mine (with an OTG cable lying around).





Now that you have to connect the GPS with your Android tablet or Smartphone, you don't have a standard USB port on your device. What you will need is a small piece of hardware called OTG (on-the-go) cable. Here is an example on Amazon. This is a small cable with a micro-USB male interface on one end which plugs in to your Android device, and a standard USB female port on the other end to plug in any USB device, including your GPS - like I show in this picture.




Now that your hardware side is ready, you will need an appropriate App to communicate with the GPS. In the past I have used several Apps, e.g. USB GPS, USB Terminal etc., but lately I have come across a new and simple App which I would recommend for the purpose. It is called You Are Here GPS. To be able to use GPS signals with your other favorite map software, enable mock locations in Android Settings > Developer Options - as seen in this screenshot.




Now run You Are Here GPS and tap 'Connect'. You will start to see NMEA sentences appearing in the terminal. This app doesn't have a long list of settings, just the serial baud rate option. If nothing appears, or appears wrong on the screen, try changing the baud rate. Now send this running app to background without killing it, and open your favorite map software to receive data from USB GPS.