——
#DonLucElectronics #DonLuc #GNSS #IoT #Project #DFRobot #Fritzing #Programming #Electronics #Microcontrollers #Consultant
——
——
——
——
Gravity: GNSS GPS BeiDou Receiver Module
GNSS stands for Global Navigation Satellite System. The main GNSS systems include GPS, GLONASS, QZSS, and BeiDou. These satellite systems transmit signals to the earth, allowing the receiver to determine its own position by calculating the propagation time of the signals and the position of the receiving satellite, thus achieving functions such as positioning and navigation.
This GNSS BeiDou positioning module supports multi-satellite system joint positioning and provides high-precision, high-speed, and stable data such as longitude, latitude, time, and altitude. It is suitable for various outdoor positioning scenarios, such as vehicle positioning, item tracking, weather stations, and outdoor positioning.
This GNSS receiver module uses the GNSS positioning system and support satellite systems such as BeiDou, GPS, GLONASS, QZSS, etc. Compared with traditional single GPS positioning, joint positioning using multiple systems increases the number of visible and usable satellites, which improves positioning accuracy and speed. It can also achieve stable high-precision positioning even in complex environments, providing more accurate positioning data.
DL2510Mk01
1 x FireBeetle 2 ESP32-P4 AI
1 x IO Expansion Board
1 x Adafruit SHARP Memory Display Breakout – 1.3″ 168×144 Monochrome
1 x Gravity: GNSS GPS BeiDou Receiver Module
1 x USB Battery Pack
1 x USB 3.1 Cable A to C
DL2510Mk01p
DL2510Mk01p.ino
/****** Don Luc Electronics © ****** Software Version Information Project #15: Environment - GNSS GPS - Mk34 15-34 DL2509Mk01p.ino DL2509Mk01 1 x FireBeetle 2 ESP32-P4 AI 1 x IO Expansion Board 1 x Adafruit SHARP Memory Display Breakout - 1.3" 168x144 Monochrome 1 x Gravity: GNSS GPS BeiDou Receiver Module 1 x USB Battery Pack 1 x USB 3.1 Cable A to C */ // Include the Library Code // EEPROM Library to Read and Write EEPROM // with Unique ID for Unit #include "EEPROM.h" // SHARP Memory Display #include <Adafruit_SharpMem.h> #include <Adafruit_GFX.h> // GNSS #include "DFRobot_GNSS.h" // Use I2C for communication, but use the serial port for communication if the line of codes were masked #define I2C_COMMUNICATION // ESP32 user hardware uart DFRobot_GNSS_I2C gnss(&Wire ,GNSS_DEVICE_ADDR); String sDate = ""; String sUTC = ""; String sLat = ""; String sLon = ""; // SHARP Memory Display // any pins can be used #define SHARP_SCK 30 #define SHARP_MOSI 29 #define SHARP_SS 28 // Set the size of the display here, e.g. 144x168! Adafruit_SharpMem display(SHARP_SCK, SHARP_MOSI, SHARP_SS, 144, 168); // The currently-available SHARP Memory Display (144x168 pixels) // requires > 4K of microcontroller RAM; it WILL NOT WORK on Arduino Uno // or other <4K "classic" devices! The original display (96x96 pixels) // does work there, but is no longer produced. #define BLACK 0 #define WHITE 1 // EEPROM Unique ID Information #define EEPROM_SIZE 64 String uid = ""; // Software Version Information String sver = "15-34"; void loop() { // isGNSS isGNSS(); // isGNSS Display isDisplayGNSS(); // Delay 1 Second delay( 1000 ); }
getDisplay.ino
// SHARP Memory Display // SHARP Memory Display - UID void isDisplayUID(){ // text display display.clearDisplay(); display.setRotation(4); display.setTextSize(2); display.setTextColor(BLACK); display.setCursor(0,0); // Don Luc display.println( "Don Luc" ); // EEPROM display.setCursor(0,25); display.println( "EEPROM" ); display.setCursor(0,55); display.println( uid ); // Version display.setCursor(0,85); display.println( "Version" ); display.setCursor(0,115); display.println( sver ); display.refresh(); delay( 100 ); } // isGNSS Display void isDisplayGNSS(){ // text display Date and Time display.clearDisplay(); display.setRotation(4); display.setTextSize(2); display.setTextColor(BLACK); display.setCursor(0,0); display.print( "Lan: " ); display.println( sLat ); display.setCursor(0,25); display.print( "Lon: " ); display.println( sLon ); display.setCursor(0,55); display.println( "UTC" ); display.setCursor(0,85); display.println( sDate ); display.setCursor(0,115); display.println( sUTC ); display.refresh(); delay( 100 ); }
getEEPROM.ino
// EEPROM // isUID EEPROM Unique ID void isUID() { // Is Unit ID uid = ""; for (int x = 0; x < 7; x++) { uid = uid + char(EEPROM.read(x)); } }
getGNSS.ino
// GNSS // isSetupGNSS void isSetupGNSS(){ // GNSS //while(!gnss.begin()){ //Serial.println("NO Deivces !"); // delay(1000); //} gnss.begin(); // GNSS gnss.enablePower(); /** Set the galaxy to be used * eGPS USE gps * eBeiDou USE beidou * eGPS_BeiDou USE gps + beidou * eGLONASS USE glonass * eGPS_GLONASS USE gps + glonass * eBeiDou_GLONASS USE beidou +glonass * eGPS_BeiDou_GLONASS USE gps + beidou + glonass */ gnss.setGnss(eGPS_BeiDou_GLONASS); // GNSS // gnss.setRgbOff(); gnss.setRgbOn(); } // isGNSS void isGNSS(){ // GNSS sTim_t utc = gnss.getUTC(); sTim_t date = gnss.getDate(); sLonLat_t lat = gnss.getLat(); sLonLat_t lon = gnss.getLon(); sDate = ""; sUTC = ""; sLat = ""; sLon = ""; // Latitude sLat = lat.latitudeDegree; // Longitude sLon = lon.lonitudeDegree; // Date sDate = date.year; sDate = sDate + "/"; sDate = sDate + date.month; sDate = sDate + "/"; sDate = sDate + date.date; // UTC sUTC = utc.hour; sUTC = sUTC + ":"; sUTC = sUTC + utc.hour; sUTC = sUTC + ":"; sUTC = sUTC + utc.minute; }
setup.ino
// Setup void setup() { // Delay delay( 100 ); // EEPROM Size EEPROM.begin(EEPROM_SIZE); // EEPROM Unique ID isUID(); // Delay delay(100); // SHARP Display start & clear the display display.begin(); display.clearDisplay(); // Delay delay(100); // isSetupGNSS isSetupGNSS(); // Delay delay( 100 ); // Display - UID // Don Luc Electronics // Version // EEPROM isDisplayUID(); // Delay 5 Second delay( 5000 ); }
——
People can contact us: https://www.donluc.com/?page_id=1927
Consultant, R&D, Electronics, IoT, Teacher and Instructor
- Programming Language
- Single-Board Microcontrollers (PIC, Arduino, Raspberry Pi, Arm, Silicon Labs, Espressif, Etc…)
- IoT
- Wireless (Radio Frequency, Bluetooth, WiFi, Etc…)
- Robotics
- Automation
- Camera and Video Capture Receiver Stationary, Wheel/Tank , Underwater and UAV Vehicle
- Unmanned Vehicles Terrestrial, Marine and UAV
- Machine Learning
- Artificial Intelligence (AI)
- RTOS
- Sensors, eHealth Sensors, Biosensor, and Biometric
- Research & Development (R & D)
- Consulting
Follow Us
Luc Paquin – Curriculum Vitae – 2024
https://www.donluc.com/luc/
Web: https://www.donluc.com/
Facebook: https://www.facebook.com/neosteam.labs.9/
YouTube: https://www.youtube.com/@thesass2063
Twitter: https://twitter.com/labs_steam
Pinterest: https://www.pinterest.com/NeoSteamLabs/
Instagram: https://www.instagram.com/neosteamlabs/
DFRobot: https://learn.dfrobot.com/user-10186.html
Elecrow: https://www.elecrow.com/share/sharepj/center/no/760816d385ebb1edc0732fd873bfbf13
TikTok: https://www.tiktok.com/@luc.paquin8
Hackster: https://www.hackster.io/luc-paquin
LinkedIn: https://www.linkedin.com/in/jlucpaquin/
Don Luc