}
diff = ms - last_valid;
- if (is_valid == 1 && diff > 100) {
+ if (is_valid == 1 && diff > 500) {
is_valid = 0;
/* update global structure */
memcpy(pos, &gps_pos, sizeof(*pos));
}
-int gps_log(void)
+int gps_log(uint8_t to_stdout)
{
uint32_t ms;
uint8_t flags, prio;
(double)gps_pos.sea_altitude / 100.);
- if (sd_log_enabled()) {
+ if (!to_stdout && sd_log_enabled()) {
if (sd_log_write(buf, len) != len) {
printf_P(PSTR("error writing to file\n"));
return -1;
}
}
- else {
+ else if (to_stdout) {
printf_P(PSTR("%s"), buf);
}