...

GPS Modules


EM411 GPS Module:

  • SiRF Start III chipset
  • Built-in SuperCap to reserve system data for rapid satellite acquisition
  • Built-in patch antenna
  • LED indicator for GPS fix or not fix
    • LED OFF: Receiver switch off
    • LED ON:No fixed, Signal searching
    • LED Flashing:Position Fixed
  • Frequency: L1, 1575.42 MHz
  • C/A code: 1.023 MHz chip rate
  • Channels: 20 channel all-in-view tracking
  • Tracking Sensitivity: -159 dBm
  • Position Accuracy: 10 meters, 2D RMS (5 meters, 2D RMS, WAAS enabled)
  • Velocity Accuracy: 0.1 m/s
  • Time: 1us synchronized to GPS time
  • Datum Default: WGS-84
  • Reacquisition Time: 0.1 sec., average
  • Hot start : 1 sec., average
  • Warm start: 38 sec., average
  • Cold start: 42 sec., average
  • Altitude: 18,000 meters (60,000 feet) max
  • Velocity: 515 meters /second (1000 knots) max
  • Acceleration: Less than 4g
  • Jerk : 20m/sec **3
  • Main power input: 4.5V ~ 6.5V DC input
  • Power consumption: 60mA
  • Electrical level: TTL level, Output voltage level: 0V ~ 2.85V ,RS-232 level
  • Baud rate: 4,800 bps
  • Output message: NMEA 0183 GGA, GSA, GSV, RMC, VTG, GLL
  • Operating temperature: -40℃ to +85℃

References:
  • http://playground.arduino.cc/Tutorials/GPS
  • http://www.satsig.net/maps/lat-long-finder.htm
  • Documentation for this at the GlobalSat site.

Got this from DealExtreme

Sample Arduino code, using Software Serial to read from the GPS module, and the built in UART to dump to the serial monitor.

include <SoftwareSerial.h>

/*
  Arduino   Device
  RX D2       TX
  TX D3       RX (not necessary to connect)
*/
SoftwareSerial GPS = SoftwareSerial(2, 3);

void setup()  {
  Serial.begin(9600);
  Serial.println("GlobatSat EM-411 GPS Module NMEA Sentence Test");
  GPS.begin(4800); //factory default baud rate is 4800
}

void loop()  {

    if (GPS.available() > 0) {
        char incoming = GPS.read();
        Serial.print(incoming);
    }
    //delay(20);
}

NMEA sentences:

Some notes on the common NMEA sentences emitted by this unit. NMEA sentences start with a "$, have a list of comma separated values, end with a *checksum, (for a total visible character length of 80), and terminate with a CR LF (ascii 13 10). The sentences start with "$GP" for GPS data, and "$P" for manufacturer proprietary data.

These seem to be the most useful sentences.

References:
  • http://www.usglobalsat.com/downloads/NMEA_commands.pdf
  • http://www.gpsinformation.org/dale/nmea.htm
GGA —Global Positioning System Fixed Data
$GPGGA,002153.000,3342.6618,N,11751.3858,W,1,10,1.2,27.0,M,-34.2,M,,0000*5E
Message ID $GPGGA GGA protocol header
UTC Time 002153.000 hhmmss.sss
Latitude 3342.6618 ddmm.mmmm
N/S Indicator N N=north or S=south
Longitude 11751.3858 dddmm.mmmm
E/W Indicator W E=east or W=west
Position Fix Indicator 1
  • 0 Fix not available or invalid
  • 1 GPS SPS Mode, fix valid
  • 2 Differential GPS, SPS Mode, fix valid
  • 3-5 Not supported
  • 6 Dead Reckoning Mode, fix valid
Satellites Used 10 Range 0 to 12
HDOP 1.2 Horizontal Dilution of Precision
MSL Altitude 27.0 meters
Units M meters
Geoid Separation -34.2 meters Geoid-to-ellipsoid separation.Ellipsoid altitude = MSL Altitude + Geoid Separation.
Units M meters
Age of Diff. Corr. sec Null fields when DGPS is not used
Diff. Ref. Station ID 0000


RMC —Recommended Minimum Specific GNSS Data
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598, ,*10
Message ID $GPRMC RMC protocol header
UTC Time 161229.487 hhmmss.sss
Status A A=data valid or V=data not valid
Latitude 3723.2475 ddmm.mmmm
N/S Indicator N N=north or S=south
Longitude 12158.3416 dddmm.mmmm
E/W Indicator W E=east or W=west
Speed Over Ground 0.13 knots
Course Over Ground 309.62 degrees True
Date 120598 ddmmyy
Magnetic Variation degrees E=east or W=west
East/West Indicator E E=east
Mode A A=Autonomous, D=DGPS, E=DR, N = Output Data Not Valid


GSA —GNSS DOP and Active Satellites
$GPGSA,A,3,07,02,26,27,09,04,15, , , , , ,1.8,1.0,1.5*33
Message ID $GPGSA GSA protocol header
Mode 1A
  • M Manual—forced to operate in 2D or 3D mode
  • A 2D Automatic—allowed to automatically switch 2D/3D
Mode 21
  • 1 Fix not available
  • 2 2D (<4 SVs used)
  • 3 3D (>3 SVs used)
Satellite Used 07 SV on Channel 1
Satellite Used 02 SV on Channel 2
Satellite Used SV on Channel 12
PDOP 1.8 Position Dilution of Precision
HDOP 1.0 Horizontal Dilution of Precision
VDOP 1.5 Vertical Dilution of Precision


GSV —GNSS Satellites in View
$GPGSV,2,1,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42*71
$GPGSV,2,2,07,09,23,313,42,04,19,159,41,15,12,041,42*41
Message ID $GPGSV GSV protocol header
Number of Messages 2 Total number of GSV messages to be sent in this group. (Depending on the number of satellites tracked, multiple messages of GSV data may be required)
Message Number 1 Message number in this group of GSV messages
Satellites in View 07
Satellite ID 07 Channel 1 (Range 1 to 32)
Elevation 79 degrees Channel 1 (Maximum 90)
Azimuth 048 degrees Channel 1 (True, Range 0 to 359)
SNR (C/N0) 42 dBHz Range 0 to 99, null when not tracking
.... ....
Satellite ID 27 Channel 4 (Range 1 to 32)
Elevation 27 degrees Channel 4 (Maximum 90)
Azimuth 138 degrees Channel 4 (True, Range 0 to 359)
SNR (C/N0) 42 dBHz Range 0 to 99, null when not tracking