

The COPERNICUS II module, manufactured by Trimble, is a high-performance satellite navigation system designed to provide precise positioning and timing information globally. As part of the European Global Navigation Satellite System (GNSS), it enhances the capabilities of existing systems like GPS, offering improved accuracy, reliability, and coverage. The module is compact, power-efficient, and ideal for integration into a wide range of applications.








| Parameter | Specification |
|---|---|
| Manufacturer | Trimble |
| Model | Copernicus II |
| GNSS Support | GPS, Galileo, GLONASS, SBAS |
| Frequency Bands | L1 (1575.42 MHz) |
| Position Accuracy | < 2.5 meters (CEP) |
| Timing Accuracy | < 20 nanoseconds |
| Acquisition Time | Cold Start: < 35 seconds |
| Hot Start: < 1 second | |
| Supply Voltage | 3.0V to 3.6V |
| Power Consumption | < 100 mW (typical) |
| Operating Temperature | -40°C to +85°C |
| Dimensions | 19 mm x 19 mm x 2.5 mm |
| Interface | UART, SPI, I2C |
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | VCC | Power supply input (3.0V to 3.6V) |
| 2 | GND | Ground connection |
| 3 | TXD | UART Transmit Data |
| 4 | RXD | UART Receive Data |
| 5 | PPS | Pulse Per Second output for timing |
| 6 | RESET | Active-low reset input |
| 7 | SPI_CLK | SPI Clock |
| 8 | SPI_MOSI | SPI Master Out Slave In |
| 9 | SPI_MISO | SPI Master In Slave Out |
| 10 | I2C_SCL | I2C Clock |
| 11 | I2C_SDA | I2C Data |
| 12 | ANT_IN | Antenna input |
Below is an example of interfacing the COPERNICUS II module with an Arduino UNO using UART communication.
#include <SoftwareSerial.h>
// Define RX and TX pins for communication with the Copernicus II module
SoftwareSerial copernicusSerial(10, 11); // RX = Pin 10, TX = Pin 11
void setup() {
Serial.begin(9600); // Initialize Serial Monitor at 9600 baud
copernicusSerial.begin(9600); // Initialize Copernicus II UART at 9600 baud
Serial.println("Initializing Copernicus II Module...");
}
void loop() {
// Check if data is available from the Copernicus II module
if (copernicusSerial.available()) {
String gpsData = copernicusSerial.readStringUntil('\n'); // Read GPS data line
Serial.println("GPS Data: " + gpsData); // Print GPS data to Serial Monitor
}
// Send commands to the module if needed
// Example: copernicusSerial.println("$PMTK..."); // Replace with actual command
}
No Satellite Fix:
No Data Output:
High Power Consumption:
Timing Signal Unstable:
Q: Can the module operate indoors?
Q: What is the default communication protocol?
Q: Is the module compatible with GPS-only systems?
Q: How do I update the firmware?
This documentation provides a comprehensive guide to using the COPERNICUS II module effectively in your projects.