TinyCircuits Forum
TinyCircuits Products => TinyDuino Processors & TinyShields => Topic started by: peejster on May 26, 2014, 05:36:55 PM
-
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.
#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);
}
}
-
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
-
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
-
Patience is the key, but what was the solution? Was it a loose connection, code error, etc.?
-
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
-
one observation:
I did notice that you have transposed A1 and A0
-
So, then this is the correct pin layout?
static const int GPS_RXPin = A1;
static const int GPS_TXPin = A0;
-
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
-
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 (https://fun-games.io)
Hope this helps
I feel this waiting time is too long. Can't it be shortened?