SparkFun will be closed Friday 7/3/2020 for the 4th of July holiday. All orders placed after 2 pm MT on Thursday 7/2/2020 will be shipped out on Monday 7/6/2020. SparkFun Support will also resume on Monday 7/6/2020. Have a safe holiday!
The EM-506 GPS receiver from USGlobalSat based on the spectacular SiRF StarIII chipset. This complete module is built upon the same technology as the ET-301, but includes on-board voltage regulation, LED status indicator, battery backed RAM, and a built-in patch antenna! 6-pin interface cable included.
This EM-506 GPS module is powered by SiRF Star IV, it can provide you with superior sensitivity and performance even in urban canyon and dense foliage environment. With SiRF CGEE (Client Generated Extended Ephemeris) technology, it predicts satellite positions for up to 3 days and delivers CGEE-start time of less than 15 seconds under most conditions, without any network assistance.
Not sure which GPS module is right for you? Check out our GPS Buying Guide!
The data sheet for the EM-506 is a bit foggy on what the directive pin does. USGlobalsat only says "This pin indicates the GPS states." but our testing indicates that it outputs a 1 second high, one second low pulse. (High level is 3.25 volts and the low level is 0.75 volts.) The directive pin appears to be a 1PPS pin that's active once you achieve lock with GPS satellites.
The GPS receiver uses a serial UART. Page 3 of the datasheet shows the pinouts and specs. For an example hookup with an Arduino, click here. Try using a blank sketch so that the Atmega328P does not interefere with the serial from the GPS just like the "Serial Debugging: Arduino-Compatible board" example.
1 of 1 found this helpful:
Don't have an FTDI to test but you do have an Arduino? This image shows how to hook up your GPS Module with an Arduino to test if it is working or not.
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Competent - You will be required to reference a datasheet or schematic to know how to use a component. Your knowledge of a datasheet will only require basic features like power requirements, pinouts, or communications type. Also, you may need a power supply that?s greater than 12V or more than 1A worth of current.
See all skill levels
Based on 13 ratings:
1 of 1 found this helpful:
....just download the "TingGps" library, it will make development very easy. The little connector is impossible to solder, you'll just end up stripping the cable (which isn't easy); However the unit it's self is fantastic, accuracy to around three meters.
4 of 4 found this helpful:
Ran this module up on my coffee table in the lounge, and despite being inside a double brick building, got a reliable fix remarkably quickly. NMEA data is pumping out as expected, and the provided interconnect cable had me connected up to my dev board really quickly.
2 of 3 found this helpful:
This thing has great accuracy. After the initial fix it could place my location on a map with pinpoint accuracy. The fix time is quick if you are under open sky. In a building it is a bit slower.
I've only done some rudimentary testing so far, but it seems to work fairly accurately. The GPS appears to lock onto the satellites quickly, usually within a few seconds. Sometimes longer, but it could depend on the cloud cover. I didn’t pay attention to that. I entered the reported position into Google maps. I was sitting near a perimeter wall of my house, and Google pinned a location just outside of my house, about 10 ft away based on the outline of the shown houses. I’m not sure how accurate the Google maps located the houses, but the shown location was good enough for me at the time. I had the GPS plugged into a Sparkfun CAN-BUS shield piggy backed on the Arduino Uno. I took the setup for a ride in my car having the Uno display the GPS speed on a LCD display. The GPS speed updated quickly tracking the car speed. I’m happy with the GPS unit thus far.
I got this receiver for hobby purposes and wound up building a small decoder using the Uno. The reception is pretty good. It will receive just fine indoors with the curtains open. If there was anything else that I might wish for it would be to add an optional external antenna.
This is the first GPS module I've worked with. It works as advertised, including very fast time to fix. I'm using it as part of a clock, so in a perfect world, I would want a unit that had a 1PPS output. As far as I can tell Sparkfun sells units that have 1PPS, and units that have integral antennas, but not units that have both. Does anybody know otherwise?
The module worked as expected right out of the box. Receive sensitivity seems to be quite good, but I'm not convinced that the Time To First Fix is as good as advertised. That, combined with the absence of a 1PPS output, is my reason for a four-star rating.
The accuracy and precision is great. GPS locks to satellite signal in just a few secs. The signal is great even indoors. ( Although you might need to take it outside for initial signal lock ). The setup was very easy and quick.
Quick negative point : GPS documentation could be better. The baud rate of the GPS is not specified on the datasheet and one has to shoot in the dark with guesses. GPS datasheet could be much much better.
0 of 2 found this helpful:
Before I purchased, I inquired if it was suitable as a replacement for the redundant EM-406 and was told it was. However information about software changes like Baud rate will be required before it will work as a change over replacement so it was not a straight forward replacement as expected. We have not completed the software changes to make it work yet so I hope I am not premature providing this requested feed back. Relevant info at the time of inquiry before my purchase would have been appreciated as I had not booked my software writer to alter code.
Hi, Sorry about the baud mismatch. Other than that, this module has the same pin out (minus the 1pps which has been replaced with a Directive pin that outputs GPS states.) It has the same power parameters 4.5~6.5V. It is using the updated SiRF Star IV as compared to the 406's SiRF Star III.
There is an example on page 14 of the datasheet that shows how to switch the settings of the device. The EM-406 was factory set to NEMA, with a baud of 4800. So your command will be $PSRF100,1,4800,8,1,0*0C
When you first start it up, it takes about 15 seconds to find satellites. I had it on my window sill in a snow storm with my hand-held Garmin next to it. The Garmin gave up trying to find satellites while the EM-506 works after taking a while longer to get reception than it normally would. I don't do Arduino, so I used the code from https://github.com/kosma/minmea.
We have a number of these units working well in our equipment. Very accurate and easy to integrate.
I had an RS232 shifter which I could use to connect it to my laptop. It output data as expected. It logged on to the satellites quickly with no need to initialize.
I wanted to preset the baud rate and output messages. I had some Java code to read and write to a port. I added a function to append the checksum to the command sentence. I could then turn off some of the output sentences but that was not persistent over a power cycle. But when I set the baud rate, it made the output sentence selection permanent as well.
So all is well.. Dave Heffler Lunenburg, N.S. Canda.