Your new topic does not fit any of the above??? Check first. Then post here. Thanks.

Moderator: igrr

User avatar
By mrburnette
#29936
TEwing wrote:Great to hear! I've been researching a project using the neo-6m, esp8266 and tinygpsplus arduino library. Glad they all work together.


You can drop the tinygps if you only want 1 NMEA sentence; say, RMC. This really helps with SRAM.

You can also use UDP to transmit that string all around the house to slave devices, saving the GPS costs for multiple devices, like clocks.
Sign-in, Sign-up is NOT necessary for downloading...

https://www.hackster.io/rayburne/tardis-time-esp8266-ap-webserver-gps

Ray

Snippet for parser:
Code: Select all// GPSbuffer[] is global

void GPSstuff(char c) {     
  static int i, j;
  static char q;
  static bool flag = false;
// GPS serial line input buffer
  static char GPSbuffer[120];   
  q = c;

  // '$' ?
  if ( q == 0x24 )
  {
    // brute force sync on '$' to GPSbuffer[0]
    i = 0;   
    // Serial << "Found $" << endl;
  }

  if ( i < 120) GPSbuffer[i++] = q;
  // Serial << "Index=" << (i -1) << "Input=" << q << endl;
   // array limit safety
   if (i = 120) i = 119; 

  // is the character a CR for eol
  if (q == 0x0d) {
    flag = true;                 
    i = 0;
  }
  // test for end of line and if the right GPSbuffer
  if (flag) {
     // reset for next time   
    flag = false;     

    // 'R' && 'M' && 'C'
    if ( (GPSbuffer[3] == 0x52) && (GPSbuffer[4] == 0x4d) && (GPSbuffer[5] == 0x43))
    {
      UDP.beginPacketMulticast(broadcastIP, localPort, apIP);
      for (j = 0; j < 120 ; j++) {
        UDP.write(GPSbuffer[j]);
      }
      // terminate the line
      UDP.write("\r\n"); 
      // clear UDP buffer
      UDP.endPacket(); 
    }
  }
User avatar
By idanbe5
#65601 I didn't understood how did you managed to get the esp work with neo-6m module???
i get this exact problem and that tinygps++ library or the code you posted doesnt do anything, do i need to send some commands?
Please help :D

Stevenelson wrote:What I just discovered is that if I plug the gps module right into the ftdi with a 3.3v VCC and open up the serial monitor, I get the NEMA codes i was expecting, like this:

$GPRMC,,V,,,,,,,,,,N*53
$GPVTG,,,,,,,,,N*30
$GPGGA,,,,,,0,00,99.99,,,,,,*48
$GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
$GPGLL,,,,,,V,N*64

So that's telling me the gps module itself is working correctly. So either my wiring is wrong on the esp12 or my code is.