67,13 → 67,10 |
|
#define MIN_SD_INTERVAL_KML 200 |
#define MIN_SD_INTERVAL_GPX 200 |
#define APPEND_LOG_TIME_MS 2510 // log some more time |
|
u8 SD_LoggingError = 0; |
|
#define LOG_FLUSH_INTERVAL 4000 // 4s // -> and if an Error occures |
|
|
typedef enum |
{ |
LOGFILE_IDLE, |
89,13 → 86,13 |
|
LogCfg_t LogCfg = {500 , 1000}; |
u32 Logged_GPX_Counter = 0, Logged_KML_Counter = 0; |
u16 KML_Filenum = 0; |
u16 KML_Filenum = 0, GPX_Filenum = 0, GPX_logging_active = 0; |
|
//---------------------------------------------------------------------------------------------------- |
s8* GenerateKMLLogFileName(void) |
{ |
static u16 filenum = 0; // file name counter |
static s8 filename[35]; |
static s8 filename[40]; |
static DateTime_t LastTime = {0,0,0,0,0,0,0,0}; |
|
if(SystemTime.Valid) |
131,7 → 128,7 |
s8* GenerateGPXLogFileName(void) |
{ |
static u16 filenum = 0; // file name counter |
static s8 filename[35]; |
static s8 filename[40]; |
static DateTime_t LastTime = {0,0,0,0,0,0,0,0}; |
|
if(SystemTime.Valid) |
155,8 → 152,8 |
if(filenum < 100 && SystemTime.Year > 2000) sprintf(filename, "/SIMULATE/%04i%02i%02i/GPX/S%i%02i%02i%02i.GPX", SystemTime.Year, SystemTime.Month, SystemTime.Day, SystemTime.Year % 10, SystemTime.Month, SystemTime.Day, filenum); |
else sprintf(filename, "/SIMULATE/%04i%02i%02i/GPX/SIM%05i.GPX", SystemTime.Year, SystemTime.Month, SystemTime.Day, filenum); |
} |
GPX_Filenum = filenum; |
filenum++; |
KML_Filenum = filenum; |
return filename; |
} |
else return NULL; |
316,7 → 313,7 |
static s8* logfilename = NULL; // the pointer to the logfilename |
static u32 logtimer = 0, flushtimer = 0, appendtimer = 0; // the log update timer |
static GPX_Document_t logfile; // the logfilehandle |
static u8 part = 0, logging_active = 0, old_errorcode = 0; |
static u8 part = 0, old_errorcode = 0; |
// u32 measure_time; |
|
// initialize if LogDelay is zero |
343,15 → 340,15 |
|
if(FC.StatusFlags & FC_STATUS_MOTOR_RUN) |
{ |
logging_active = 1; |
if(!GPX_logging_active) GPX_logging_active = 1; |
appendtimer = SetDelay(APPEND_LOG_TIME_MS); |
} |
else |
{ |
if(CheckDelay(appendtimer)) logging_active = 0; |
if(CheckDelay(appendtimer)) GPX_logging_active = 0; |
} |
|
if(logging_active || part) |
if(GPX_logging_active || part) |
{ |
switch(logfilestate) |
{ |
381,6 → 378,7 |
UART1_PutString("\r\nOpening gpx-file:"); |
UART1_PutString(logfilename); |
UART1_PutString("\r\n"); |
GPX_logging_active = 2; |
} |
else // could not be openend |
{ |
505,6 → 503,9 |
break; |
case 1: |
logstate = Logging_GPX(LogCfg.GPX_Interval); |
break; |
case 2: |
if(UART_VersionInfo.HWMajor >= 30) logstate = LoggingTrigger(200); |
logmodule = 0; // resart with first log module |
break; |
default: |