Skip to content

Commit d869176

Browse files
committed
Add debug menu items to print messages
Add debug menu items to print: * Battery messages * Rover Accuracy messages * Messages with bad checksums or CRCs * Log file messages * Ring buffer offsets * NTRIP server messages (already in debug menu) * NTRIP client messages * States of the main state machine * Duplicate states of the main state machine
1 parent 5c6e57e commit d869176

File tree

3 files changed

+115
-17
lines changed

3 files changed

+115
-17
lines changed

Firmware/RTK_Surveyor/NVM.ino

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -238,9 +238,18 @@ void recordSystemSettingsToFile(File * settingsFile)
238238
settingsFile->printf("%s=%d\n\r", "enablePrintWifiState", settings.enablePrintWifiState);
239239
settingsFile->printf("%s=%d\n\r", "enablePrintNtripClientState", settings.enablePrintNtripClientState);
240240
settingsFile->printf("%s=%d\n\r", "enablePrintNtripServerState", settings.enablePrintNtripServerState);
241-
settingsFile->printf("%s=%d\n\r", "enablePrintNtripServerRtcm", settings.enablePrintNtripServerRtcm);
242241
settingsFile->printf("%s=%d\n\r", "enablePrintPosition", settings.enablePrintPosition);
243242
settingsFile->printf("%s=%d\n\r", "enableMarksFile", settings.enableMarksFile);
243+
settingsFile->printf("%s=%d\n\r", "enablePrintBatteryMessages", settings.enablePrintBatteryMessages);
244+
settingsFile->printf("%s=%d\n\r", "enablePrintRoverAccuracy", settings.enablePrintRoverAccuracy);
245+
settingsFile->printf("%s=%d\n\r", "enablePrintBadMessages", settings.enablePrintBadMessages);
246+
settingsFile->printf("%s=%d\n\r", "enablePrintLogFileMessages", settings.enablePrintLogFileMessages);
247+
settingsFile->printf("%s=%d\n\r", "enablePrintLogFileStatus", settings.enablePrintLogFileStatus);
248+
settingsFile->printf("%s=%d\n\r", "enablePrintRingBufferOffsets", settings.enablePrintRingBufferOffsets);
249+
settingsFile->printf("%s=%d\n\r", "enablePrintNtripServerRtcm", settings.enablePrintNtripServerRtcm);
250+
settingsFile->printf("%s=%d\n\r", "enablePrintNtripClientRtcm", settings.enablePrintNtripClientRtcm);
251+
settingsFile->printf("%s=%d\n\r", "enablePrintStates", settings.enablePrintStates);
252+
settingsFile->printf("%s=%d\n\r", "enablePrintDuplicateStates", settings.enablePrintDuplicateStates);
244253

245254
//Record constellation settings
246255
for (int x = 0 ; x < MAX_CONSTELLATIONS ; x++)
@@ -809,11 +818,28 @@ bool parseLine(char* str, Settings *settings)
809818
settings->enablePrintNtripClientState = d;
810819
else if (strcmp(settingName, "enablePrintNtripServerState") == 0)
811820
settings->enablePrintNtripServerState = d;
812-
else if (strcmp(settingName, "enablePrintNtripServerRtcm") == 0)
813-
settings->enablePrintNtripServerRtcm = d;
814821
else if (strcmp(settingName, "enablePrintPosition") == 0)
815822
settings->enablePrintPosition = d;
816-
823+
else if (strcmp(settingName, "enablePrintBatteryMessages") == 0)
824+
settings->enablePrintBatteryMessages = d;
825+
else if (strcmp(settingName, "enablePrintRoverAccuracy") == 0)
826+
settings->enablePrintRoverAccuracy = d;
827+
else if (strcmp(settingName, "enablePrintBadMessages") == 0)
828+
settings->enablePrintBadMessages = d;
829+
else if (strcmp(settingName, "enablePrintLogFileMessages") == 0)
830+
settings->enablePrintLogFileMessages = d;
831+
else if (strcmp(settingName, "enablePrintLogFileStatus") == 0)
832+
settings->enablePrintLogFileStatus = d;
833+
else if (strcmp(settingName, "enablePrintRingBufferOffsets") == 0)
834+
settings->enablePrintRingBufferOffsets = d;
835+
else if (strcmp(settingName, "enablePrintNtripServerRtcm") == 0)
836+
settings->enablePrintNtripServerRtcm = d;
837+
else if (strcmp(settingName, "enablePrintNtripClientRtcm") == 0)
838+
settings->enablePrintNtripClientRtcm = d;
839+
else if (strcmp(settingName, "enablePrintStates") == 0)
840+
settings->enablePrintStates = d;
841+
else if (strcmp(settingName, "enablePrintDuplicateStates") == 0)
842+
settings->enablePrintDuplicateStates = d;
817843
//Check for bulk settings (constellations and message rates)
818844
//Must be last on else list
819845
else

Firmware/RTK_Surveyor/menuSystem.ino

Lines changed: 75 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -324,16 +324,43 @@ void menuDebug()
324324
Serial.print("14) Periodically print NTRIP server state: ");
325325
Serial.printf("%s\r\n", settings.enablePrintNtripServerState ? "Enabled" : "Disabled");
326326

327-
Serial.print("15) Print GNSS --> NTRIP caster messages: ");
328-
Serial.printf("%s\r\n", settings.enablePrintNtripServerRtcm ? "Enabled" : "Disabled");
329-
330-
Serial.print("16) Periodically print position: ");
327+
Serial.print("15) Periodically print position: ");
331328
Serial.printf("%s\r\n", settings.enablePrintPosition ? "Enabled" : "Disabled");
332329

333-
Serial.print("17) Periodically print CPU idle time: ");
330+
Serial.print("16) Periodically print CPU idle time: ");
334331
Serial.printf("%s\r\n", settings.enablePrintIdleTime ? "Enabled" : "Disabled");
335332

336-
Serial.println("18) Mirror ZED-F9x's UART1 settings to USB");
333+
Serial.println("17) Mirror ZED-F9x's UART1 settings to USB");
334+
335+
Serial.print("18) Print battery status messages: ");
336+
Serial.printf("%s\r\n", settings.enablePrintBatteryMessages ? "Enabled" : "Disabled");
337+
338+
Serial.print("19) Print Rover accuracy messages: ");
339+
Serial.printf("%s\r\n", settings.enablePrintRoverAccuracy ? "Enabled" : "Disabled");
340+
341+
Serial.print("20) Print messages with bad checksums or CRCs: ");
342+
Serial.printf("%s\r\n", settings.enablePrintBadMessages ? "Enabled" : "Disabled");
343+
344+
Serial.print("21) Print log file messages: ");
345+
Serial.printf("%s\r\n", settings.enablePrintLogFileMessages ? "Enabled" : "Disabled");
346+
347+
Serial.print("22) Print log file status: ");
348+
Serial.printf("%s\r\n", settings.enablePrintLogFileStatus ? "Enabled" : "Disabled");
349+
350+
Serial.print("23) Print ring buffer offsets: ");
351+
Serial.printf("%s\r\n", settings.enablePrintRingBufferOffsets ? "Enabled" : "Disabled");
352+
353+
Serial.print("24) Print GNSS --> NTRIP caster messages: ");
354+
Serial.printf("%s\r\n", settings.enablePrintNtripServerRtcm ? "Enabled" : "Disabled");
355+
356+
Serial.print("25) Print NTRIP caster --> GNSS messages: ");
357+
Serial.printf("%s\r\n", settings.enablePrintNtripClientRtcm ? "Enabled" : "Disabled");
358+
359+
Serial.print("26) Print states: ");
360+
Serial.printf("%s\r\n", settings.enablePrintStates ? "Enabled" : "Disabled");
361+
362+
Serial.print("27) Print duplicate states: ");
363+
Serial.printf("%s\r\n", settings.enablePrintDuplicateStates ? "Enabled" : "Disabled");
337364

338365
Serial.println("t) Enter Test Screen");
339366

@@ -456,18 +483,14 @@ void menuDebug()
456483
settings.enablePrintNtripServerState ^= 1;
457484
}
458485
else if (incoming == 15)
459-
{
460-
settings.enablePrintNtripServerRtcm ^= 1;
461-
}
462-
else if (incoming == 16)
463486
{
464487
settings.enablePrintPosition ^= 1;
465488
}
466-
else if (incoming == 17)
489+
else if (incoming == 16)
467490
{
468491
settings.enablePrintIdleTime ^= 1;
469492
}
470-
else if (incoming == 18)
493+
else if (incoming == 17)
471494
{
472495
bool response = configureGNSSMessageRates(COM_PORT_USB, settings.ubxMessages); //Make sure the appropriate messages are enabled
473496
response &= i2cGNSS.setPortOutput(COM_PORT_USB, COM_TYPE_NMEA | COM_TYPE_UBX | COM_TYPE_RTCM3); //Duplicate UART1
@@ -477,6 +500,46 @@ void menuDebug()
477500
else
478501
Serial.println(F("USB messages successfully enabled"));
479502
}
503+
else if (incoming == 18)
504+
{
505+
settings.enablePrintBatteryMessages ^= 1;
506+
}
507+
else if (incoming == 19)
508+
{
509+
settings.enablePrintRoverAccuracy ^= 1;
510+
}
511+
else if (incoming == 20)
512+
{
513+
settings.enablePrintBadMessages ^= 1;
514+
}
515+
else if (incoming == 21)
516+
{
517+
settings.enablePrintLogFileMessages ^= 1;
518+
}
519+
else if (incoming == 22)
520+
{
521+
settings.enablePrintLogFileStatus ^= 1;
522+
}
523+
else if (incoming == 23)
524+
{
525+
settings.enablePrintRingBufferOffsets ^= 1;
526+
}
527+
else if (incoming == 24)
528+
{
529+
settings.enablePrintNtripServerRtcm ^= 1;
530+
}
531+
else if (incoming == 25)
532+
{
533+
settings.enablePrintNtripClientRtcm ^= 1;
534+
}
535+
else if (incoming == 26)
536+
{
537+
settings.enablePrintStates ^= 1;
538+
}
539+
else if (incoming == 27)
540+
{
541+
settings.enablePrintDuplicateStates ^= 1;
542+
}
480543
else
481544
printUnknown(incoming);
482545
}

Firmware/RTK_Surveyor/settings.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -429,9 +429,18 @@ typedef struct {
429429
bool enablePrintWifiState = false;
430430
bool enablePrintNtripClientState = false;
431431
bool enablePrintNtripServerState = false;
432-
bool enablePrintNtripServerRtcm = false;
433432
bool enablePrintPosition = false;
434433
bool enablePrintIdleTime = false;
434+
bool enablePrintBatteryMessages = true;
435+
bool enablePrintRoverAccuracy = true;
436+
bool enablePrintBadMessages = false;
437+
bool enablePrintLogFileMessages = false;
438+
bool enablePrintLogFileStatus = true;
439+
bool enablePrintRingBufferOffsets = false;
440+
bool enablePrintNtripServerRtcm = false;
441+
bool enablePrintNtripClientRtcm = false;
442+
bool enablePrintStates = true;
443+
bool enablePrintDuplicateStates = false;
435444
} Settings;
436445
Settings settings;
437446

0 commit comments

Comments
 (0)