Neo 6m GPS on Particle Argon usage

Good day,
I have quite an issue. I would like to use a gps Module with particle argon that I have.
I researched all them libraries available, all of which are not compatible save particle-gps.
It worked for a while, not long after it stopped working. I saw in the serial output some 'buffer overrun… '. Then, it would connect and disconnect from WiFi rapidly. Later, Particle Argon began to crash.
I tried running some other program and all was fine.
I would like to know:

  • Is there some other way to make other libraries except particle-gps work with neo-6m on particle argon?
  • using particle-gps includes using a timer, is there some other way to use particle-gps on particle argon without a timer?
    I would appreciate an intervention
    Thank you

@whizyrel, the most popular and flexible library is TinyGPS++. Have you tried it? You will need to remove SoftwareSerial from the examples and substitute for Serial1 but otherwise it should work for you. This library does NOT require the use of a SoftwareTimer which likely is the cause of the problems on the Particle_gps library due to the limited stack available on Software Timers.

Also, note that the Particle_gps library is really designed to be used with the Adafruit Ultimate GPS module that uses the MTK33x9 chipset.

Okay, will give it a trial and give circle back hopefully by Friday. I am having a presentation and I will be using the particle argon hopefully by tomorrow, Thursday if no further delay.
Thanks @peekay123

1 Like

Good day @peekay123 How do I replace SoftwareSerial with Serial1 in the DeviceExample.ino?
I have tried to no avail.

Serial ss(RXPin, TXPin);
&Serial1 ss(RXPin, TXPin);
Serial1 ss(RXPin, TXPin);

Thanks

@whizyrel, you can remove these lines:

#include <SoftwareSerial.h>

SoftwareSerial ss(RXPin, TXPin);

Then add this line before void setup():
#define ss Serial1

Okay

It compiled, and flashed successfully. Then, ‘No GPS detected: check wiring’ beyond this I have observed the status of the device being unreachable as the first symptom over and again after flashing the code:

{"service":{"device":{"status":"unreachable"},"cloud":{"uptime":20,"publish":{"sent":2}},"coap":{"round_trip":null}}}

@whizyrel, how is the NEO6m connected to the Argon?

  • The VCC to the 3v3 pin the Argon
  • The GND to the GND on the Argon
  • The Rx to the Rx on the Argon (D10)
  • The Tx to the Tx on the Argon (D9)

wrong :slight_smile:
connect Argon Rx to Neo6m Tx and Neo6m Rx to Argon Tx

1 Like

I have done this and the output is still the same ‘No GPS detected: check wiring.’

do you have in your void setup() Serial1.begin(9600); ?

Uhm,Yes

#define ss Serial1

void setup()
{
  Serial.begin(9600);
  ss.begin(9600);

  Serial.println(F("DeviceExample.ino"));
  Serial.println(F("A simple demonstration of TinyGPS++ with an attached GPS module"));
  Serial.print(F("Testing TinyGPS++ library v. ")); Serial.println(TinyGPSPlus::libraryVersion());
  Serial.println(F("by Mikal Hart"));
  Serial.println();
}