unable to get a reading from the GPS TinyShield

peejster · 10 · 15266

peejster

  • Newbie
  • *
    • Posts: 2
    • View Profile
Unable to get a reading from the GPS TinyShield. I've read the documentation for the GPS TinyShield as well as the notes from the TinyGPSPlus library. I have the TinyDuino board at the bottom, then the GPS TinyShield on top of the processor, and then the TinyShield USB & ICP board on top of the GPS.

I ran the Blink sketch successfully to ensure that everything was working properly. (From the IDE, the board I have selected is Arduino Pro or Pro Mini (3.3V, 8MHz) with ATmega328.)

To test the GPS, I used the setup from the example provided in the Tiny-Circuits site and then I used a simplified loop just to get some readings. However, I always seem to get the "No GPS detected" message. I also wasn't sure exactly which pin A0 or A1 is the RX pin on the GPS TinyShield - the example code has RX as A1 but the text above th example code on the Tiny-Circuits GPS tutorial states that RX is A0. I tried it both ways - same result.

I can't figure out why I am not getting any readings.

Code: [Select]
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
/*
   This sample code demonstrates the normal use of a TinyGPS++ (TinyGPSPlus) object.
*/
static const int GPS_ONOFFPin = A3;
static const int GPS_SYSONPin = A2;
static const int GPS_RXPin = A0;
static const int GPS_TXPin = A1;
static const int GPSBaud = 9600;

// The TinyGPS++ object
TinyGPSPlus gps;

// The serial connection to the GPS device
SoftwareSerial ss(GPS_RXPin, GPS_TXPin);

void setup()
{
  Serial.begin(115200);
 
  // Init the GPS Module to wake mode
  pinMode(GPS_SYSONPin, INPUT);
  pinMode(GPS_ONOFFPin, OUTPUT);
  digitalWrite( GPS_ONOFFPin, LOW );   
  delay(5);
  if( digitalRead( GPS_SYSONPin ) == LOW )
  {
    // Need to wake the module
    digitalWrite( GPS_ONOFFPin, HIGH );
    delay(5);
    digitalWrite( GPS_ONOFFPin, LOW );     
  }

  ss.begin(GPSBaud);
}

void loop()
{
  while (ss.available())
    if (gps.encode(ss.read()))
    {
      Serial.print(F("Location: "));
      Serial.print(gps.location.lat(), 6);
      Serial.print(F(","));
      Serial.print(gps.location.lng(), 6);
    }
   
  if (millis() > 5000 && gps.charsProcessed() < 10)
  {
    Serial.println(F("No GPS detected: check wiring."));
    while(true);
  }
}


Bedigitals

  • Newbie
  • *
    • Posts: 4
    • View Profile
I am having the same issue

TinyGPS+++
Thank you for the well documented tutorial- I appreciate your time and help with all the examples but I can’t seem to get this working as expected - I am using the TinyShield GPS with TinyDuino

DeviceExample.ino
A simple demonstration of TinyGPS++ with an attached GPS module
Testing TinyGPS++ library v. 0.92
by Mikal Hart

No GPS detected: check wiring.

An extensive example of many interesting TinyGPS++ features
Testing TinyGPS++ library v. 0.92
by Mikal Hart

Sats HDOP Latitude   Longitude   Fix  Date       Time     Date Alt    Course Speed Card  Distance Course Card  Chars Sentences Checksum
          (deg)      (deg)       Age                      Age  (m)    --- from GPS ----  ---- to London  ----  RX    RX        Fail
---------------------------------------------------------------------------------------------------------------------------------------
**** **** ********** *********** **** ********** ******** **** ****** ****** ***** ***   ******** ****** ***   0     0         0       
**** **** ********** *********** **** ********** ******** **** ****** ****** ***** ***   ******** ****** ***   15    0         0       
0    0    ********** *********** **** 05/26/2014 14:04:12 381  ****** ****** ***** ***   ******** ****** ***   339   0         0       
0    0    ********** *********** **** 05/26/2014 14:04:13 391  ****** ****** ***** ***   ******** ****** ***   643   0         0       
0    0    ********** *********** **** 05/26/2014 14:04:14 404  ****** ****** ***** ***   ******** ****** ***   947   0         0       
0    0    ********** *********** **** 05/26/2014 14:04:15 418  ****** ****** ***** ***   ******** ****** ***   1251  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:16 428  ****** ****** ***** ***   ******** ****** ***   1555  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:17 387  ****** ****** ***** ***   ******** ****** ***   1883  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:18 399  ****** ****** ***** ***   ******** ****** ***   2211  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:19 397  ****** ****** ***** ***   ******** ****** ***   2539  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:20 418  ****** ****** ***** ***   ******** ****** ***   2867  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:21 436  ****** ****** ***** ***   ******** ****** ***   3193  0         0       
0    0    ********** *********** **** 05/26/2014 14:04:22 448  ****** ****** ***** ***   ******** ****** ***   3519  0         0       


itializing SD card...card initialized.
$PSRF150,1*3E
$GPGGA,,,,,,0,00,,,M,0.0,M,,0000*48
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,01,00,000,,02,00,000,,03,00,000,,04,00,000,*7C
$GPGSV,3,2,12,05,00,000,,06,00,000,,07,00,000,,08,00,000,*77
$GPGSV,3,3,12,09,00,0,,,,N*53
$GPGGA,,,,,,0,00,,,M,0.0,M,,0000*48
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,01,00,000,,02,00,000,,03,00,000,,04,00,000,*7C
$GPGSV,3,2,12,05,00,000,,06,00,000,,07,00,000,,08,00,000,*77
0,*71
$GPRMC,,V,,,,,,,,,,N*53


Bedigitals

  • Newbie
  • *
    • Posts: 4
    • View Profile
I gotbthis to work - patience is the key...


0    410  40.754219  -73.997261  1349 05/28/2014 02:19:04 209  34.20  343.78 6.48  S     5568     51.24  NE    10807 162       0       
0    410  40.754219  -73.997261  1359 05/28/2014 02:19:05 225  34.20  343.78 6.48  S     5568     51.24  NE    10837 162       0       
0    410  40.754219  -73.997261  1369 05/28/2014 02:19:06 246  34.20  343.78 6.48  S     5568     51.24  NE    10868 162       0       
0    410  40.754219  -73.997261  1379 05/28/2014 02:19:07 267  34.20  343.78 6.48  S     5568     51.24  NE    10898 162       0       
0    410  40.754219  -73.997261  1390 05/28/2014 02:19:08 285  34.20  343.78 6.48  S     5568     51.24  NE    10929 162       0       
0    410  40.754219  -73.997261  1400 05/28/2014 02:19:09 308  34.20  343.78 6.48  S     5568     51.24  NE    10960 162       0       
0    410  40.754219  -73.997261  1410 05/28/2014 02:19:10 327  34.20  343.78 6.48  S     5568     51.24  NE    10990 162       0       
0    410  40.754219  -73.997261  1420 05/28/2014 02:19:11 350  34.20  343.78 6.48  S     5568     51.24  NE    11021 162       0       
0    410  40.754219  -73.997261  1430 05/28/2014 02:19:12 370  34.20  343.78 6.48  S     5568     51.24  NE    11051 162       0       
0    410  40.754219  -73.997261  1441 05/28/2014 02:19:13 393  34.20  343.78 6.48  S     5568     51.24  NE    11082 162       0       
0    410  40.754219  -73.997261  1451 05/28/2014 02:19:14 410  34.20  343.78 6.48  S     5568     51.24  NE    11113 162       0       
0    410  40.754219  -73.997261  1461 05/28/2014 02:19:15 430  34.20  343.78 6.48  S     5568     51.24  NE    11143 162       0       
0    410  40.754219  -73.997261  1471 05/28/2014 02:19:16 449  34.20  343.78 6.48  S     5568     51.24  NE    11174 162       0       
0    410  40.754219  -73.997261  1481 05/28/2014 02:19:17 469  34.20  343.78 6.48  S     5568     51.24  NE    11204 162       0       
0    410  40.754219  -73.997261  1491 05/28/2014 02:19:18 490  34.20  343.78 6.48  S     5568     51.24  NE    11235 162       0       
0    410  40.754219  -73.997261  1502 05/28/2014 02:19:19 512  34.20  343.78 6.48  S     5568     51.24  NE    11266 162       0       
0    410  40.754219  -73.997261  1512 05/28/2014 02:19:20 532  34.20  343.78 6.48  S     5568     51.24  NE    11296 162       0       
0    410  40.754219  -73.997261  1522 05/28/2014 02:19:21 555  34.20  343.78 6.48  S     5568     51.24  NE    11327 162       0       
0    410  40.754219  -73.997261  1532 05/28/2014 02:19:22 573  34.20  343.78 6.48  S     5568     51.24  NE    11357 162       0       
0    410  40.754219  -73.997261  1542 05/28/2014 02:19:23 594  34.20  343.78 6.48  S     5568     51.24  NE    11388 162       0       
0    410  40.754219  -73.997261  1553 05/28/2014 02:19:24 613  34.20  343.78 6.48  S     5568     51.24  NE    11419 162       0       
0    410  40.754219  -73.997261  1563 05/28/2014 02:19:25 633  34.20  343.78 6.48  S     5568     51.24  NE    11449 162       0       
0    410  40.754219  -73.997261  1573 05/28/2014 02:19:26 688  34.20  343.78 6.48  S     5568     51.24  NE    11494 162       0       
0    410  40.754219  -73.997261  1585 05/28/2014 02:19:28 905  34.20  343.78 6.48  S     5568     51.24  NE    11541 162       0       
0    410  40.754219  -73.997261  1597 05/28/2014 02:19:29 12   34.20  343.78 6.48  S     5568     51.24  NE    11572 162       0       
0    410  40.754219  -73.997261  1607 05/28/2014 02:19:30 31   34.20  343.78 6.48  S     5568     51.24  NE    11602 162       0       
0    410  40.754219  -73.997261  1617 05/28/2014 02:19:31 54   34.20  343.78 6.48  S     5568     51.24  NE    11633 162       0       


Grimstone

  • Sr. Member
  • ****
    • Posts: 64
  • Still downloading...
    • View Profile
Patience is the key, but what was the solution? Was it a loose connection, code error, etc.?


Bedigitals

  • Newbie
  • *
    • Posts: 4
    • View Profile
Hi

Looks like it was the environment- I moved outside and had a clear view of the sky- that was last night - and today it's back to square one-

not getting a fix on a satellite - getting date/time/stamp - but even that takes a few minutes

back to the drawing board- I'll post my progress


Bedigitals

  • Newbie
  • *
    • Posts: 4
    • View Profile
one observation:

I did notice that you have transposed A1 and A0


peejster

  • Newbie
  • *
    • Posts: 2
    • View Profile
So, then this is the correct pin layout?

static const int GPS_RXPin = A1;
static const int GPS_TXPin = A0;


rbohac

  • Newbie
  • *
    • Posts: 1
    • View Profile
This unit is taking about 90 to 120 seconds to lock for me, and I had to go outdoors. Testing indoors wasn't locking.

Hope this helps


Mumphi

  • Newbie
  • *
    • Posts: 1
    • View Profile
This unit is taking about 90 to 120 seconds to lock for me, and I had to go outdoors. Testing indoors wasn't locking.
Fun Games
Hope this helps
I feel this waiting time is too long. Can't it be shortened?


prosimon

  • Newbie
  • *
    • Posts: 0
    • View Profile
Unable to get a reading from the GPS TinyShield. I've read the documentation for the GPS TinyShield as well as the notes from the TinyGPSPlus library. I have the TinyDuino board at the bottom, then the GPS TinyShield on top of the processor, and then the TinyShield USB & ICP board on top of the GPS.

I ran the Blink sketch successfully to ensure that everything was working properly. (From the IDE, the board I have selected is Arduino Pro or Pro Mini (3.3V, 8MHz) with ATmega328.)

To test the GPS, I used the setup from the example provided in the Tiny-Circuits site and then I used a simplified loop just to get some readings. However, I always seem to get the "No GPS detected" message. I also wasn't sure exactly which pin A0 or A1 is the RX pin on the GPS TinyShield - the example code has RX as A1 but the text above th example code on the Tiny-Circuits GPS tutorial states that RX is A0. I tried it both ways - same result.

I can't figure out why I am not getting any readings.

Code: [Select]
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
/*
   This sample code demonstrates the normal use of a TinyGPS++ (TinyGPSPlus) object.
*/
static const int GPS_ONOFFPin = A3;
static const int GPS_SYSONPin = A2;
static const int GPS_RXPin = A0;
static const int GPS_TXPin = A1;
static const int GPSBaud = 9600;

// The TinyGPS++ object
TinyGPSPlus gps;

// The serial connection to the GPS device
SoftwareSerial ss(GPS_RXPin, GPS_TXPin);

void setup()
{
  Serial.begin(115200);
 
  // Init the GPS Module to wake mode
  pinMode(GPS_SYSONPin, INPUT);
  pinMode(GPS_ONOFFPin, OUTPUT);
  digitalWrite( GPS_ONOFFPin, LOW );   
  delay(5);
  if( digitalRead( GPS_SYSONPin ) == LOW )
  {
    // Need to wake the module
    digitalWrite( GPS_ONOFFPin, HIGH );
    delay(5);
    digitalWrite( GPS_ONOFFPin, LOW );     
  }

  ss.begin(GPSBaud);
}

void loop()
{
  while (ss.available())
    if (gps.encode(ss.read()))
    {
      Serial.print(F("Location: "));
      Serial.print(gps.location.lat(), 6);
      Serial.print(F(","));
      Serial.print(gps.location.lng(), 6);
    }
   
  if (millis() > 5000 && gps.charsProcessed() < 10)
  {
    Serial.println(F("No GPS detected: check wiring."));
    while(true);
  }
}


It sounds like you've put a lot of effort into troubleshooting the issue with your GPS TinyShield. Since you've checked the hardware setup and reviewed the code, here are a few additional suggestions: Double-check the wiring connections to ensure they're secure and accurate, confirm the power supply to the GPS TinyShield is stable, and make sure the antenna has a clear view of the sky for satellite signals. Additionally, try using serial debugging tools to check for any errors or data reception from the GPS module. If the problem persists, consider reaching out to Tiny-Circuits support for further assistance. Keep testing in different environments to rule out external factors, and hopefully, you'll have the GPS module working soon. Kitchens Parramatta
« Last Edit: April 24, 2024, 12:35:09 AM by prosimon »


 

SMF spam blocked by CleanTalk