MediTek MT3339
MediTek MT3339
L1 band (1575.42 MHz)
-165 dBm
2.5m CEP (Circular Error Probable)
1 Hz to 10 Hz
20mA @ 3.3V
3.0V to 3.6V
UART (TTL) and I2C
Up to 115200 bps (UART)
Pinout and Dimensions
The SKG13 GPS Module has a 12-pin interface, with the following pinout | |
Pin 1 | VCC (Power Supply) |
Pin 2 | GND (Ground) |
Pin 3 | TX (UART Transmit) |
Pin 4 | RX (UART Receive) |
Pin 5 | SDA (I2C Data) |
Pin 6 | SCL (I2C Clock) |
Pin 7 | PPS (Pulse Per Second) |
Pin 8 | ANT (Antenna Connection) |
Pin 9 | NC (Not Connected) |
Pin 10 | NC (Not Connected) |
Pin 11 | NC (Not Connected) |
Pin 12 | NC (Not Connected) |
The module's dimensions are 16mm x 12.2mm x 4.5mm.
Applications and Use Cases
The SKG13 GPS Module is suitable for a wide range of IoT applications, including |
Vehicle tracking and navigation systems
Asset tracking and monitoring systems
Wearable devices and fitness trackers
Autonomous systems and robotics
IoT devices requiring location-based services
Conclusion
The SKG13 GPS Module is a compact, high-performance GPS module designed for various IoT applications. Its compact size, low power consumption, and high-sensitivity GPS receiver make it an ideal choice for developers and engineers seeking to integrate accurate location-based services into their designs.
SKG13 GPS Module Documentation
Overview
The SKG13 GPS Module is a compact, high-accuracy GPS receiver module designed for various IoT applications, such as navigation, tracking, and location-based services. This module supports multiple GNSS systems, including GPS, GLONASS, Galileo, and BeiDou, providing accurate positioning and velocity data.
Technical Specifications
Frequency: L1, 1575.42 MHz
Sensitivity: -165 dBm
Accuracy: 2.5m CEP (Circular Error Probable)
Velocity Accuracy: 0.1m/s
Update Rate: 1-10 Hz
Interface: UART, TTL
Code Examples
### Example 1: Arduino Code for GPS Location Tracking
This example demonstrates how to use the SKG13 GPS Module with an Arduino board to track the device's location and display the coordinates on the serial monitor.
```c++
#include <SoftwareSerial.h>
#define RX_PIN 2
#define TX_PIN 3
SoftwareSerial gpsSerial(RX_PIN, TX_PIN);
void setup() {
Serial.begin(9600);
gpsSerial.begin(9600);
}
void loop() {
if (gpsSerial.available() > 0) {
String gpsData = gpsSerial.readStringUntil('
');
if (gpsData.startsWith("$GPRMC,")) {
int commaIndex = gpsData.indexOf(',');
String lat = gpsData.substring(commaIndex + 1, commaIndex + 11);
commaIndex = gpsData.indexOf(',', commaIndex + 1);
String lon = gpsData.substring(commaIndex + 1, commaIndex + 12);
Serial.print("Latitude: ");
Serial.println(lat);
Serial.print("Longitude: ");
Serial.println(lon);
}
}
delay(1000);
}
```
### Example 2: Python Code for GPS Velocity and Time Tracking using PySerial
This example demonstrates how to use the SKG13 GPS Module with a Python script to track the device's velocity and time using the PySerial library.
```python
import serial
import time
# Open the serial connection
ser = serial.Serial('COM3', 9600, timeout=1)
while True:
try:
# Read a line from the GPS module
gps_data = ser.readline().decode('utf-8')
# Parse the GPS data
if gps_data.startswith('$GPRMC'):
data = gps_data.split(',')
if len(data) > 7:
velocity = float(data[7]) # Velocity in knots
time_utc = data[1] # Time in UTC format (HHMMSS.SSS)
print(f"Velocity: {velocity} knots, Time: {time_utc}")
time.sleep(1)
except serial.SerialException as e:
print(f"Error: {e}")
break
```
### Example 3: MicroPython Code for GPS Positioning using UART
This example demonstrates how to use the SKG13 GPS Module with a MicroPython script to track the device's position using the UART interface.
```python
import machine
import utime
# Initialize the UART interface
uart = machine.UART(0, 9600)
while True:
try:
# Read a line from the GPS module
gps_data = uart.readline().decode('utf-8')
# Parse the GPS data
if gps_data.startswith('$GPGGA'):
data = gps_data.split(',')
if len(data) > 6:
lat = float(data[2]) # Latitude in decimal degrees
lon = float(data[4]) # Longitude in decimal degrees
print(f"Latitude: {lat:.6f}, Longitude: {lon:.6f}")
utime.sleep(1)
except Exception as e:
print(f"Error: {e}")
break
```
Note: In all examples, make sure to adjust the serial port, baud rate, and pin configurations according to your system's requirements.