Flying Sea Glider / Mbed 2 deprecated 2019_13sep_jcw_nosd

Dependencies:   mbed MODSERIAL FATFileSystem

Revision:
49:47ffa4feb6db
Parent:
48:20e681885161
diff -r 20e681885161 -r 47ffa4feb6db MbedLogger/MbedLogger.cpp
--- a/MbedLogger/MbedLogger.cpp	Thu Feb 15 04:01:57 2018 +0000
+++ b/MbedLogger/MbedLogger.cpp	Thu Feb 15 23:07:25 2018 +0000
@@ -4,7 +4,7 @@
 MbedLogger::MbedLogger(string file_system_input_string) {
     _file_system_string = file_system_input_string;
     
-    _full_file_path_string = _file_system_string + "LOG000.csv";
+    _full_file_path_string = _file_system_string + "LOG000.csv";    //use multiple logs in the future? (after file size is too large)
         
     _f = 0;
     _file_number = 0;
@@ -21,8 +21,6 @@
     
     _mbed_transmit_loop = false;
     
-    _SD_file_name_string = "";
-    
     _file_transmission_complete = false;
 }
 
@@ -39,30 +37,6 @@
     return seconds;
 }
 
-//idea to copy SD file on system down-time
-void MbedLogger::copySDFile() {    
-}
-
-//function is a work in progress
-void MbedLogger::openSDFile() {    
-    //create a file for writing to it (overwrites existing file) (do not close it until other operations are complete)
-    
-    //write this as a string...
-    char char_buffer[50];
-    sprintf(char_buffer, "L%d.csv", getSystemTime());
-    
-    
-    _SD_file_name_string = _file_system_string + char_buffer;
-    _fp = fopen(_SD_file_name_string.c_str(), "w");
-    
-    //write the header
-    fprintf(_fp,"state_string,state_ID,timer,depth_cmd,depth_ft,pitch_cmd,pitch_deg,bce_cmd,bce_mm,batt_cmd,batt_mm,pitchRate_degs,depthRate_fps\n");
-    
-    // added pitchRate_degs (degrees per second)
-    // added depthRate_fps (feet per second)  
-    
-    pc().printf("SD CARD FILE IS %s\n\r", _SD_file_name_string.c_str());
-}
 void MbedLogger::recordData(int current_state) {
     int data_log_int = mbedLogger().getSystemTime();                 //read the system timer to get unix timestamp
     //_data_log[0] = mbedLogger().getSystemTime();                 //read the system timer to get unix timestamp
@@ -98,7 +72,9 @@
     else if (current_state == MULTI_RISE)
         string_state = "MULTI_RISE";
     else if (current_state == KEYBOARD)
-        string_state = "KEYBOARD";                    
+        string_state = "KEYBOARD";
+    else if (current_state == CHECK_TUNING)
+        string_state = "CHECK_TUNING";                  
     
     //record the string state, integer state, and then the data
     fprintf(_fp, "%s,%d,",string_state.c_str(),current_state);
@@ -1105,21 +1081,6 @@
     }    
 }
 
-void MbedLogger::closeSDLogFile() {
-    if (_fp == NULL){
-        pc().printf("MbedLogger: (%s) SD LOG FILE WAS ALREADY CLOSED!\n\r", _SD_file_name_string.c_str());
-    }
-    
-    else {
-        pc().printf("MbedLogger: (%s) CLOSING SD LOG FILE!\n\r", _SD_file_name_string.c_str());
-        
-        //close file
-        fclose(_fp);
-                
-        _fp = NULL;     //set pointer to zero
-    }    
-}
-
 void MbedLogger::activateReceivePacket() {
     _mbed_receive_loop = true;
 }
@@ -1201,4 +1162,14 @@
 
 int MbedLogger::currentPacketNumber() {
     return _packet_number;
+}
+
+//only do this for the MBED because of the limited file size
+//write one line to the file (open to write, this will erase all other data) and close it.
+void MbedLogger::eraseFile() {    
+    _fp = fopen(_full_file_path_string.c_str(), "w"); // LOG000.csv
+    
+    fprintf(_fp,"state_string,state_ID,timer,depth_cmd,depth_ft,pitch_cmd,pitch_deg,bce_cmd,bce_mm,batt_cmd,batt_mm,pitchRate_degs,depthRate_fps\n(file erased)\n");
+    
+    closeLogFile();
 }
\ No newline at end of file