main/config.c

changeset 74
34da2d2b12d5
parent 60
07a1a07fdc8c
child 77
15dc572a7fcb
--- a/main/config.c	Tue Sep 26 14:59:06 2023 +0200
+++ b/main/config.c	Tue Sep 26 15:10:25 2023 +0200
@@ -10,24 +10,25 @@
 
 unit_t				units[3];                       ///< Pressure test units
 SemaphoreHandle_t		xSemaphoreUnits = NULL;		///< Semaphore Units records
-
+wifiStation_t			wifiStation;
+strConfig_t			config;
 
 
 void write_config() {
     uint8_t	*dst = (uint8_t *)&config;
-    FILE	*f = fopen("/spiffs/etc/config.conf", "w+");
+    FILE	*f = fopen("/spiffs/config.conf", "w+");
 	      
     if (f == NULL) {
-	ESP_LOGE(TAG, "write /spiffs/etc/config.conf failed");
+	ESP_LOGE(TAG, "write /spiffs/config.conf failed");
 	return;
     }
 
     size_t bytes = fwrite(dst, 1, sizeof(config), f);
     fclose(f);
     if (bytes != sizeof(config)) {
-	ESP_LOGE(TAG, "/spiffs/etc/config.conf written %d/%d bytes", bytes, sizeof(config));
+	ESP_LOGE(TAG, "/spiffs/config.conf written %d/%d bytes", bytes, sizeof(config));
     } else {
-	ESP_LOGD(TAG, "/spiffs/etc/config.conf written %d bytes", bytes);
+	ESP_LOGD(TAG, "/spiffs/config.conf written %d bytes", bytes);
     }
 }
 
@@ -36,7 +37,7 @@
 void read_config() {
     uint8_t	*dst;
     uint8_t	mac_addr[8] = {0};
-    FILE	*f = fopen("/spiffs/etc/config.conf", "r");
+    FILE	*f = fopen("/spiffs/config.conf", "r");
 
     if (f == NULL) {
 	// No configuration yet, create it.
@@ -47,14 +48,14 @@
 	config.mqtt_port = 1883;
 	config.mqtt_user[0] = '\0';
 	config.mqtt_pwd[0] = '\0';
-	sprintf(config.uuid, "c0ffeeee-dead-beef-cafe-%02x%02x%02x%02x%02x%02x", 
+	sprintf(config.uuid, "c0ffeeee-dead-beef-cafe-%02x%02x%02x%02x%02x%02x",
 			mac_addr[0], mac_addr[1], mac_addr[2], mac_addr[3], mac_addr[4], mac_addr[5]);
 	write_config();
     } else {
 	dst = (uint8_t*)&config;
 	size_t bytes = fread(dst, 1, sizeof(config), f);
 	fclose(f);
-	ESP_LOGD(TAG, "/spiffs/etc/config.conf read %d bytes", bytes);
+	ESP_LOGD(TAG, "/spiffs/config.conf read %d bytes", bytes);
     }
 }
 
@@ -62,18 +63,18 @@
 
 void write_units() {
     uint8_t     *dst = (uint8_t *)&units;
-    FILE        *f = fopen("/spiffs/etc/units.conf", "r+");
+    FILE        *f = fopen("/spiffs/units.conf", "r+");
 
     if (f == NULL) {
-        ESP_LOGE(TAG, "write /spiffs/etc/units.conf failed");
+        ESP_LOGE(TAG, "write /spiffs/units.conf failed");
         return;
     }
     size_t bytes = fwrite(dst, 1, sizeof(units), f);
     fclose(f);
     if (bytes != sizeof(units)) {
-        ESP_LOGE(TAG, "/spiffs/etc/units.conf written %d/%d bytes", bytes, sizeof(units));
+        ESP_LOGE(TAG, "/spiffs/units.conf written %d/%d bytes", bytes, sizeof(units));
     } else {
-        ESP_LOGD(TAG, "/spiffs/etc/units.conf written %d bytes", bytes);
+        ESP_LOGD(TAG, "/spiffs/units.conf written %d bytes", bytes);
     }
 }
 
@@ -83,22 +84,22 @@
     uint8_t     *dst = (uint8_t *)&units;
     uint8_t     mac_addr[8] = {0};
     size_t	bytes;
-    FILE        *f = fopen("/spiffs/etc/units.conf", "r");
+    FILE        *f = fopen("/spiffs/units.conf", "r");
 
     if (f == NULL) {
         // No units yet, create them.
-	ESP_LOGE(TAG, "/spiffs/etc/units.conf not found, create new");
+	ESP_LOGE(TAG, "/spiffs/units.conf not found, create new");
 	goto u_error;
     } else {
         bytes = fread(dst, 1, sizeof(units), f);
         fclose(f);
 	if (bytes != sizeof(units)) {
-	    ESP_LOGE(TAG, "/spiffs/etc/units.conf read %d of %d bytes", bytes, sizeof(units));
+	    ESP_LOGE(TAG, "/spiffs/units.conf read %d of %d bytes", bytes, sizeof(units));
 	    goto u_error;
 	}
-        ESP_LOGI(TAG, "/spiffs/etc/units.conf read %d bytes", bytes);
+        ESP_LOGI(TAG, "/spiffs/units.conf read %d bytes", bytes);
 	for (int i = 0; i < 3; i++)
-	   ESP_LOGI(TAG, "%d %s %d %4d %3d", i, units[i].alias, units[i].pressure_channel, units[i].pressure_voltage, units[i].pressure_zero);
+	   ESP_LOGI(TAG, "%d %s %d %4lu %3lu", i, units[i].alias, units[i].pressure_channel, units[i].pressure_voltage, units[i].pressure_zero);
     }
     return;
 
@@ -111,13 +112,13 @@
         sprintf(units[i].alias, "unit%d", (i + 1) & 3);
         units[i].pressure_zero = 110;
     }
-    f = fopen("/spiffs/etc/units.conf", "w+");
+    f = fopen("/spiffs/units.conf", "w+");
     bytes = fwrite(dst, 1, sizeof(units), f);
     fclose(f);
     if (bytes != sizeof(units)) {
-        ESP_LOGE(TAG, "/spiffs/etc/units.conf written %d/%d bytes", bytes, sizeof(units));
+        ESP_LOGE(TAG, "/spiffs/units.conf written %d/%d bytes", bytes, sizeof(units));
     } else {
-        ESP_LOGI(TAG, "/spiffs/etc/units.conf written %d bytes", bytes);
+        ESP_LOGI(TAG, "/spiffs/units.conf written %d bytes", bytes);
     }
 }
 
@@ -129,13 +130,13 @@
     uint8_t     *dst = (uint8_t *)&wifiStation;
 
     if (read_station(SSID) >= 0) {
-	ESP_LOGE(TAG, "add_station %s already excists", SSID);
+	ESP_LOGE(TAG, "add_station %s already exists", SSID);
 	return -1;
     }
 
-    f = fopen("/spiffs/etc/stations.conf", "a+");
+    f = fopen("/spiffs/stations.conf", "a+");
     if (f == NULL) {
-	ESP_LOGE(TAG, "write /spiffs/etc/stations.conf failed");
+	ESP_LOGE(TAG, "write /spiffs/stations.conf failed");
 	return -1;
     }
     memset(dst, 0, sizeof(wifiStation));
@@ -164,11 +165,11 @@
     }
 
     memset(dst, 0, sizeof(wifiStation));
-    f = fopen("/spiffs/etc/stations.conf", "r+");
+    f = fopen("/spiffs/stations.conf", "r+");
     if (f == NULL) {
-	f = fopen("/spiffs/etc/stations.conf", "w+");
+	f = fopen("/spiffs/stations.conf", "w+");
 	fclose(f);
-	ESP_LOGI(TAG, "/spiffs/etc/stations.conf created, return -1");
+	ESP_LOGI(TAG, "/spiffs/stations.conf created, return -1");
 	return -1;
     }
 
@@ -177,6 +178,7 @@
 
     while (1) {
         bytes = fread(dst, 1, sizeof(wifiStation), f);
+	ESP_LOGI(TAG, " read_station bytes %d size %d", bytes, sizeof(wifiStation));
 	if (bytes < sizeof(wifiStation)) {
 	    fclose(f);
 	    memset(dst, 0, sizeof(wifiStation));
@@ -200,14 +202,14 @@
     uint8_t     *dst;
     size_t      bytes;
 
-    n = fopen("/spiffs/etc/stations.new", "a");
+    n = fopen("/spiffs/stations.new", "a");
     if (n == NULL) {
-        ESP_LOGE(TAG, "cannot create /spiffs/etc/stations.new");
+        ESP_LOGE(TAG, "cannot create /spiffs/stations.new");
         return;
     }
-    o = fopen("/spiffs/etc/stations.conf", "r");
+    o = fopen("/spiffs/stations.conf", "r");
     if (o == NULL) {
-        ESP_LOGE(TAG, "cannot open spiffs/etc/stations.conf for reading");
+        ESP_LOGE(TAG, "cannot open spiffs/stations.conf for reading");
         fclose(n);
         return;
     }
@@ -227,8 +229,8 @@
     fclose(o);
     fclose(n);
 
-    rename("/spiffs/etc/stations.conf", "/spiffs/etc/stations.old");
-    rename("/spiffs/etc/stations.new", "/spiffs/etc/stations.conf");
-    unlink("/spiffs/etc/stations.old");
+    rename("/spiffs/stations.conf", "/spiffs/stations.old");
+    rename("/spiffs/stations.new", "/spiffs/stations.conf");
+    unlink("/spiffs/stations.old");
 }
 

mercurial