Interfacing a USB GPS Receiver (Serial Chipset) with Arduino Duemilanove


I am new to what seems to be a wonderful world of Arduino but am fairly clued up with concepts of electronics and am quite a relatively advanced programmer; using languages such as PHP, C# (including threaded programs, sockets, SQL DB interfacing etc.) + interfacing PHP with MySQL so hopefully the programming side of things hopefully shouldn't bother me too much and I have done soldering projects in the past.

Enough about onto my question:

I have brought myself an Arduino Duemilanove and have a whole manner of projects I'm looking forward to trying out on it. Some of my projects would be amazing with GPS capabilities.

As I am quite new to all this I don't really want to spend a small fortune on GPS shield and assocaited module which could turn out to be no good therefore am wondering......I have found a USB GPS Reciever for a really good price and am wondering if I can interface it with my arduino board?

I believe from the specifications I have been reading as much as the unit has a USB connection to a PC that this is actually a chip with serial output going through a serial to usb converter as the PC recognises it as a COM port. Therefore it would be brilliant if I could strip the unit apart and solder wires directly onto the GPS chip itself and interface it with the Arduino. A link for the USB GPS Dongle is:

Hope this makes sense, Would love to hear from anyone with their opinions/thoughts on this.

Kind Regards, Richard

I'm using this one:

It's quite a bit cheaper and connects very easily to my Arduino: rx to tx, tx to rx, ground to ground and V+ to 3.2V.


Thanks for your response. That looks like a nice GPS chip which is quite reasonably priced, it is also good you have it working which proves it works with the Arduino....then again if all it requires is RX - TX and TX to RX, grounding and power what could got wrong! lol.

Unfortunately I'm still wondering if it would work with the module I have much as your suggestion is relatively cheap the one I quoted I can get for only £19.99 GBP (UK pounds) whereas the LS20031 in UK money is £34.

Thanks again,

Looking forward to any more input :-)


In principle it could work. The spec sheet mentions 4800 baud which suggests the serial comms is available somewhere in it. However you may find that actually doing it is hard. For one thing you would need to prise it open without damaging the inbuilt aerial (it may be in a moulded plastic body that is very hard to get open).

For another, it almost certainly has SMD chips on a small board, they may be very close together, so getting at the serial line may be tricky. You probably need a soldering iron with a very fine tip, and even then it might be virtually impossible to do, or to do without damaging the chip.

The first step could be to open it up and look, but if you don't possess it yet, I personally would spend slightly more and get something that is designed to be wired into a circuit. Adafruit have one for $US40 which is around 25 pounds (plus shipping of course).

If you already have the dongle in your hand, why not open it up and try? If not, you may damage your cheap GPS, and then have to buy the more expensive one anyway.

I have found a USB GPS Reciever for a really good price and am wondering if I can interface it with my arduino board?

Basiclly no. That USB GPS is a USB slave device. An Arduino board is a USB slave device. Only a master USB can connect and control a USB slave device.

Now it is possible to have the USB GPS module plugged into a PC and have the Arduino plugged into the same machine, and then with some PC software you write have the Arduino communicate with the GPS module. But that's a rather awkward arrangement and may not fit a lot of application projects you have in mind.