Events

:

:

Elektronik | Funk | Software

Der Technik-Blog

  • Social Media

    YouTube

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden

    Der Technik-Blog

    TTGO LILYGO GPS Problem

    TTGO/LILYGO GPS-Problem

    Alex @ AEQ-WEB

    In letzter Zeit gab es vermehrt Anfragen zum TTGO & LILYGO ESP32 GPS-Board bezüglich eines nicht funktionierenden GPS-Moduls. Leider gibt es bei diesen Boards über die Jahre immer wieder Updates mit verschiedenen Änderungen an der Hardware oder am Pin-Mapping. So wurde das Projekt LoRaWAN GPS Tracker vor einem Jahr mit einem TTGO/LILYGO-Board Version T22_V1.1 20191212 entwickelt und getestet. Bei diversen Händlern wie Amazon etc. werden mittlerweile neuere Modelle mit z.B. der Versionsnummer T22_V1.1 20220222 ausgeliefert, wo offensichtlich das GPS-Modul auf den ersten Blick nicht richtig funktioniert.

    Was ist passiert?

    Viele LoRaWAN GPS-Projekte mit dem TTGO T-BEAM & LILYGO-Board arbeiten mit NMEA-Datensätzen. Das NEO6 GPS-Modul sendet aktuelle Positionsdaten in einem bestimmten Intervall über eine serielle Schnittstelle im NMEA-Format aus. So enthält der GGA-Datensatz beispielsweise die aktuelle Position (Breitengrad & Längengrad), Höhe, Anzahl der GPS-Satelliten uvm. Anschließend wird dieser Datensatz von einem Mikrocontroller seriell empfangen und in einzelne Parameter zerlegt. Bei neueren NEO6 GPS-Modulen auf den TTGO-Boards wurde diese Datenübertragung vom Hersteller deaktiviert und muss ab sofort vom Anwender selbst wieder aktiviert werden.

    Werbung:

    Wie wird NMEA aktiviert?

    Die Aktivierung erfolgt direkt über den Mikrocontroller selbst. Dazu wird über die Arduino-IDE ein kleiner Programmcode hochgeladen, der mittels einer Abfolge von seriellen Befehlen das NMEA-0183 Protokoll und somit den GGA-Datensatz wieder aktiviert. Diese Aktivierung muss in der Regel einmalig durchgeführt werden und bleibt anschließend im GPS-Modul dauerhaft gespeichert. Zusätzlich muss vor dem Programm-Upload noch folgende Bibliothek installiert werden: Sparkfun Ublox Arduino Library

    Folgendes Codebeispiel aktiviert NMEA-0183 auf einem NEO6 GPS Modul:

    //More information at: https://www.aeq-web.com
    
    #include <SparkFun_Ublox_Arduino_Library.h>
    
    #define SERIAL1_RX 34 // GPS_TX -> 34
    #define SERIAL1_TX 12 // 12 -> GPS_RX
    
    SFE_UBLOX_GPS NEO6GPS;
    
    void setup()
    {
      Serial.begin(115200);
      while (!Serial);
      Serial.println("Serial is open now");
      Serial1.begin(9600, SERIAL_8N1, SERIAL1_RX, SERIAL1_TX);
      delay(300);
    
      do {
        if (NEO6GPS.begin(Serial1)) {
          Serial.println("GPS connection ok");
          NEO6GPS.setUART1Output(COM_TYPE_NMEA);
          NEO6GPS.saveConfiguration();
          Serial.println("Enable NMEA");
          NEO6GPS.disableNMEAMessage(UBX_NMEA_GLL, COM_PORT_UART1);
          NEO6GPS.disableNMEAMessage(UBX_NMEA_GSA, COM_PORT_UART1);
          NEO6GPS.disableNMEAMessage(UBX_NMEA_GSV, COM_PORT_UART1);
          NEO6GPS.disableNMEAMessage(UBX_NMEA_VTG, COM_PORT_UART1);
          NEO6GPS.disableNMEAMessage(UBX_NMEA_RMC, COM_PORT_UART1);
          NEO6GPS.enableNMEAMessage(UBX_NMEA_GGA, COM_PORT_UART1);
          NEO6GPS.saveConfiguration();
          Serial.println("NMEA-GGA for AEQ-WEB GPS-Tracker enabled!");
          break;
        }
        delay(1000);
      } while(1);
    }
    
    void loop()
    {
      if (Serial1.available()) {
        Serial.write(Serial1.read());
      }
    } 
    

    Nachdem der Beispielcode erfolgreich auf das Board hochgeladen wurde, sollte im Serial-Monitor folgende Ausgabe angezeigt werden:

    Werbung:

    Dieses Beispiel deaktiviert einige NMEA-Datensätze und aktiviert lediglich GGA, welches für das Projekt TTGO/LILYGO LoRaWAN GPS Tracker notwendig ist.

    Generell sollte zuvor überprüft werden, ob das GPS-Modul überhaupt mit Energie versorgt wird. Viele Boards verfügen über einen Power-Management-IC wie zum Beispiel den AXP192, wo die Energieversorgung softwareseitig erst freigeschaltet werden muss. Betreibt man das Board im Freien, so sollte nach rund 5 Minuten (in Ausnahmefällen auch 10 Minuten) die GPS-LED von NEO6 anfangen zu blinken. Ist dies nicht der Fall, muss zuerst die Energieversorgung vom GPS-Modul geprüft werden.


    122X122

    Über den Autor

    Alex, der Gründer von AEQ-WEB. Seit über 10 Jahren beschäftigt er sich mit Computern und elektronischen Bauteilen aller Art. Neben den Hardware-Projekten entwickelt er auch Webseiten, Apps und Software für Computer.

    Top Artikel in dieser Kategorie:

    TagoIO Tutorial

    TagoIO Dashboard & TTN Integration

    • Video

    In diesem Artikel geht es um die Einrichtung einer Schnittstelle zwischen TagoIO und dem LoRaWAN Netzwerk TTN sowie um die Konfiguration von Dashboards

    Weiterlesen
    SenseCAP T1000 Payload Decoder

    SenseCAP T1000 Payload Decoder

    • DE/EN

    Alternativer Payload Decoder für den SenseCAP T1000 LoRaWAN GPS Tracker. Kompatibel mit TTN Mapper, LoWTrack und weiteren Apps.

    Weiterlesen

    Social Media

    YouTube

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden