GPS Module GN-801 GPS GLONASS Dual Mode M8n COM44

Fr57,000

GN-801 is an easy to use, ultra-high performance, low power GNSS smart antenna module . Using GNSS chip design Built-in SAW and LNA amplifiers Supports GPS + GLONASS and GPS + BEI DOUBLE positioning mode change.

In stock

SKU: WRL9626 Category:

Description

The GN-801 is a high-performance, low-power GNSS smart antenna module with multi-constellation support, allowing GPS + GLONASS and GPS + BeiDou positioning. This guide explains how to use it with an Arduino to retrieve GPS coordinates.

Key Specifications of GN-801:

  • GNSS Chip: UBX-M8030-KT
  • Frequency: L1, 1575.42 MHz
  • Protocols: NMEA 0183 v2.3, 4.x; supports GPS, QZSS, GLONASS, BeiDou, and SBAS (WAAS, EGNOS, MSAS)
  • Baud Rates: Default 9600; adjustable to 1200, 4800, 19200, 38400, 57600, 115200 bps
  • Sensitivity: Tracking -160 dBm; Acquisition -157 dBm
  • Start Times: Cold Start ~29 s; Warm Start ~28 s; Hot Start ~1 s
  • Accuracy: Horizontal <2.5 m (autonomous); <2.0 m with SBAS
  • Update Rate: 1-10 Hz (default 1 Hz)
  • Operating Voltage: 3.3V-5.0V DC

Components Needed

Hardware Connections

  1. Power Connections:
    • Connect the 5V pin on the Arduino to the VCC pin on the GN-801.
    • Connect any GND pin on the Arduino to the GND pin on the GN-801.
  2. Serial Communication:
    • Connect the TX pin on the GN-801 to the RX pin on the Arduino (pin 8 in code).
    • Connect the RX pin on the GN-801 to the TX pin on the Arduino (pin 7 in code).

Installing the TinyGPSPlus Library

To parse GNSS data, install the TinyGPSPlus library by Mikal Hart:

  1. Download the library from the Arduino Library Manager or from TinyGPSPlus GitHub.
  2. Extract it into your Arduino libraries folder if downloaded manually.

Sample Code

The code below retrieves GPS coordinates (latitude and longitude) and displays them on the Serial Monitor.

#include <TinyGPSPlus.h>
#include <SoftwareSerial.h>

static const int GPSTXPin = D7, GPSRXPin = D8; // GPS module pins
static const uint32_t GPSBaud = 9600; // GPS module baud rate

// TinyGPSPlus object
TinyGPSPlus gps;

// Serial connection to the GPS device
SoftwareSerial ss(RXPin, TXPin);

void setup() {
Serial.begin(9600);
ss.begin(GPSBaud);
Serial.println("GN-801 GPS Module Initialized");
}

void loop() {
getGPSData();
}

void getGPSData() {
while (ss.available() > 0) {
gps.encode(ss.read());
if (gps.location.isUpdated()) {
float latitude = gps.location.lat();
float longitude = gps.location.lng();
Serial.print("Latitude: "); Serial.println(latitude, 6);
Serial.print("Longitude: "); Serial.println(longitude, 6);
}
}
}

Setup Instructions and Testing

  1. Upload Preparation: Disconnect the TX and RX pins of the GN-801 from the Arduino before uploading the code. Once the upload is complete, reconnect the pins.
  2. Satellite Connection: Once the GN-801 module is connected and powered, its LED will blink when it successfully connects to a satellite. For best results:
    • Ensure the antenna is facing toward the sky.
    • If coordinates are not being received, try moving outdoors and repositioning the antenna to improve reception.
  3. Serial Monitor Settings: Open the Serial Monitor in the Arduino IDE and set it to 9600 baud to view coordinates in real-time.
  4. Testing: After uploading the code and reconnecting the TX and RX pins, open the Serial Monitor. You should see the GPS coordinates (latitude and longitude) for your location displayed in real time.