Impl DEEP_DEBUG for gps.h

This commit is contained in:
2026-03-22 23:31:16 +01:00
parent c3ed38367b
commit 3299ca114d

View File

@@ -1,4 +1,5 @@
#pragma once #pragma once
#define MOD "modules/gps/gps.h"
#include "TinyGPSPlus.h" #include "TinyGPSPlus.h"
#include "flags.h" #include "flags.h"
#include "modules/logger/system_logger.h" #include "modules/logger/system_logger.h"
@@ -19,7 +20,8 @@ public:
int init(); int init();
}; };
gps::gps(HardwareSerial *data_stream) : _data_stream(data_stream), _logger(nullptr){ gps::gps(HardwareSerial *data_stream)
: _data_stream(data_stream), _logger(nullptr) {
_data_stream = data_stream; _data_stream = data_stream;
_gps = new TinyGPSPlus(); _gps = new TinyGPSPlus();
} }
@@ -40,16 +42,27 @@ int gps::init() {
} }
int gps::parse_task(unsigned long timeout_ms) { int gps::parse_task(unsigned long timeout_ms) {
#ifdef DEEP_DEBUG
if (_logger != nullptr) {
_logger->deep_debug(String(MOD) + ": parse_task: Begin");
}
#endif
unsigned long timeout = millis() + timeout_ms; unsigned long timeout = millis() + timeout_ms;
#ifdef DEEP_DEBUG
if (_logger != nullptr) {
_logger->deep_debug(String(MOD) + ": parse_task: Entering Parse Loop");
}
#endif
while (_data_stream->available() > 0) { while (_data_stream->available() > 0) {
if (_gps->encode(_data_stream->read())) { if (_gps->encode(_data_stream->read())) {
_lock_valid = true; _lock_valid = true;
_last_lock = millis(); _last_lock = millis();
} }
if (millis() > timeout) { if (millis() > timeout) {
#ifdef DEBUG #ifdef DEEP_DEBUG
if (_logger != nullptr) { if (_logger != nullptr) {
_logger->debug("GPS Parser timed out, exiting task"); _logger->deep_debug(String(MOD) + ": parse_task: Parse Loop Timed Out");
} }
#endif #endif
return 1; return 1;
@@ -57,3 +70,4 @@ int gps::parse_task(unsigned long timeout_ms) {
} }
return 0; return 0;
} }
#undef MOD