Have searched the forum for an answer to this but cannot find.
After I get a valid reading from gps.isValid() the generated code prints the number of satellites used (generally 5->9) but will only print lat and lng (and everything else from a gps.dump() or any other functions) values as a question mark.
Using UART3.
Cannot get time, lat, lng, you name it, they all come back as a question mark, literally, a ? is what it prints.
Any hints?
From opt_DeviceName.c
#include "../hardware.h"
static const char PROGMEM name_button[] = "button";
static const char PROGMEM name_uart1[] = "uart1";
static const char PROGMEM name_myGPS[] = "myGPS";
static const char PROGMEM unknown[] = "?";
#define NUM_DEVICES 3
static const void* PROGMEM tbl[]={
&_button_, name_button,
&__C_uart1, name_uart1,
&_myGPS_, name_myGPS
};
const char* getDeviceName(const void* device){
const char* rtn = unknown;
for(int i=0 ; i<NUM_DEVICES*2; i+=2){
const void* addr = (const void*)pgm_read_word(&tbl);
if( addr == device){
rtn = (const void*)pgm_read_word(&tbl[i+1]);
}
}
return rtn;
}
Should I have used the default name for the GPS class?