1
+ // Menu of Logging Menus
2
+ void menuLogSelection ()
3
+ {
4
+ if (present.microSd && !present.mosaicMicroSd )
5
+ menuLog ();
6
+ if (!present.microSd && present.mosaicMicroSd )
7
+ menuLogMosaic ();
8
+ if (present.microSd && present.mosaicMicroSd )
9
+ {
10
+ while (1 )
11
+ {
12
+ systemPrintln ();
13
+ systemPrintln (" Menu: Logging" );
14
+ systemPrintln ();
15
+
16
+ systemPrintln (" Accessible microSD:" );
17
+ printMicroSdInfo ();
18
+ systemPrintln ();
19
+ #ifdef COMPILE_MOSAICX5
20
+ systemPrintln (" Internal mosaic microSD:" );
21
+ printMosaicCardSpace ();
22
+ systemPrintln ();
23
+ #endif
24
+ systemPrintln (" 1) Accessible microSD logging" );
25
+ systemPrintln (" 2) Internal mosaic microSD logging" );
26
+
27
+ systemPrintln (" x) Exit" );
28
+
29
+ int incoming = getUserInputNumber (); // Returns EXIT, TIMEOUT, or long
30
+
31
+ if (incoming == 1 )
32
+ menuLog ();
33
+ #ifdef COMPILE_MOSAICX5
34
+ else if (incoming == 2 )
35
+ menuLogMosaic ();
36
+ #endif
37
+ else if (incoming == ' x' )
38
+ break ;
39
+ else if (incoming == INPUT_RESPONSE_GETNUMBER_EXIT)
40
+ break ;
41
+ else if (incoming == INPUT_RESPONSE_GETNUMBER_TIMEOUT)
42
+ break ;
43
+ else
44
+ printUnknown (incoming);
45
+ }
46
+ clearBuffer (); // Empty buffer of any newline chars
47
+ }
48
+ }
49
+
50
+ // Print accessible microSd size and free space
51
+ void printMicroSdInfo ()
52
+ {
53
+ if (settings.enableSD && online.microSD )
54
+ {
55
+ char sdCardSizeChar[20 ];
56
+ String cardSize;
57
+ stringHumanReadableSize (cardSize, sdCardSize);
58
+ cardSize.toCharArray (sdCardSizeChar, sizeof (sdCardSizeChar));
59
+ char sdFreeSpaceChar[20 ];
60
+ String freeSpace;
61
+ stringHumanReadableSize (freeSpace, sdFreeSpace);
62
+ freeSpace.toCharArray (sdFreeSpaceChar, sizeof (sdFreeSpaceChar));
63
+
64
+ char myString[70 ];
65
+ snprintf (myString, sizeof (myString), " SD card size: %s / Free space: %s" , sdCardSizeChar, sdFreeSpaceChar);
66
+ systemPrintln (myString);
67
+
68
+ if (online.logging )
69
+ {
70
+ systemPrintf (" Current log file name: %s\r\n " , logFileName);
71
+ }
72
+ }
73
+ else
74
+ systemPrintln (" No microSD card is detected" );
75
+
76
+ if (bufferOverruns)
77
+ systemPrintf (" Buffer overruns: %d\r\n " , bufferOverruns);
78
+ }
79
+
1
80
// Control the messages that get logged to SD
2
81
// Control max logging time (limit to a certain number of minutes)
3
82
// The main use case is the setup for a base station to log RAW sentences that then get post processed
@@ -7,32 +86,10 @@ void menuLog()
7
86
{
8
87
systemPrintln ();
9
88
systemPrintln (" Menu: Logging" );
89
+ systemPrintln ();
10
90
11
- if (settings.enableSD && online.microSD )
12
- {
13
- char sdCardSizeChar[20 ];
14
- String cardSize;
15
- stringHumanReadableSize (cardSize, sdCardSize);
16
- cardSize.toCharArray (sdCardSizeChar, sizeof (sdCardSizeChar));
17
- char sdFreeSpaceChar[20 ];
18
- String freeSpace;
19
- stringHumanReadableSize (freeSpace, sdFreeSpace);
20
- freeSpace.toCharArray (sdFreeSpaceChar, sizeof (sdFreeSpaceChar));
21
-
22
- char myString[70 ];
23
- snprintf (myString, sizeof (myString), " SD card size: %s / Free space: %s" , sdCardSizeChar, sdFreeSpaceChar);
24
- systemPrintln (myString);
25
-
26
- if (online.logging )
27
- {
28
- systemPrintf (" Current log file name: %s\r\n " , logFileName);
29
- }
30
- }
31
- else
32
- systemPrintln (" No microSD card is detected" );
33
-
34
- if (bufferOverruns)
35
- systemPrintf (" Buffer overruns: %d\r\n " , bufferOverruns);
91
+ printMicroSdInfo ();
92
+ systemPrintln ();
36
93
37
94
systemPrint (" 1) Log to microSD: " );
38
95
if (settings.enableLogging == true )
0 commit comments