main/co2meter.c

changeset 80
715785443a95
parent 79
332e85569339
equal deleted inserted replaced
79:332e85569339 80:715785443a95
116 #endif 116 #endif
117 117
118 /* 118 /*
119 * Read or create configuration 119 * Read or create configuration
120 */ 120 */
121 // unlink("/spiffs/config.conf");
122 // read_config();
123 read_units(); 121 read_units();
124 vTaskDelay(500 / portTICK_PERIOD_MS); 122 vTaskDelay(500 / portTICK_PERIOD_MS);
125 123
126 uint8_t mac_addr[8] = {0}; 124 uint8_t mac_addr[8] = {0};
127 // Set the configured hostname for the dhcp client. 125 // Set the configured hostname for the dhcp client.
137 xSemaphoreUnits = xSemaphoreCreateMutex(); 135 xSemaphoreUnits = xSemaphoreCreateMutex();
138 136
139 xTaskCreate(&task_user, "task_user", 4096, NULL,10, &xTaskUser); 137 xTaskCreate(&task_user, "task_user", 4096, NULL,10, &xTaskUser);
140 xTaskCreate(&task_ds18b20, "task_ds18b20", 2560, NULL, 8, &xTaskDS18B20); 138 xTaskCreate(&task_ds18b20, "task_ds18b20", 2560, NULL, 8, &xTaskDS18B20);
141 xTaskCreate(&task_adc, "task_adc", 2560, NULL, 8, &xTaskADC); 139 xTaskCreate(&task_adc, "task_adc", 2560, NULL, 8, &xTaskADC);
142 // esp_log_level_set("MQTT_CLIENT", ESP_LOG_ERROR);
143 xTaskCreate(&task_mqtt, "task_mqtt", 4096, NULL, 5, &xTaskMQTT); 140 xTaskCreate(&task_mqtt, "task_mqtt", 4096, NULL, 5, &xTaskMQTT);
144 esp_log_level_set("wifi", ESP_LOG_ERROR); 141 esp_log_level_set("wifi", ESP_LOG_ERROR);
145 xTaskCreate(&task_wifi, "task_wifi", 4096, NULL, 3, &xTaskWifi); 142 xTaskCreate(&task_wifi, "task_wifi", 4096, NULL, 3, &xTaskWifi);
146 143
147 int wait = 150; 144 int wait = 150;
184 if (ready_WiFi()) { 181 if (ready_WiFi()) {
185 Main_Loop1 = ML1_MQTT_CONNECT; 182 Main_Loop1 = ML1_MQTT_CONNECT;
186 user_refresh(); 183 user_refresh();
187 if (! ready_mqtt()) 184 if (! ready_mqtt())
188 connect_mqtt(true); 185 connect_mqtt(true);
189 ESP_LOGI(TAG, "Loop => ML1_MQTT_CONNECT"); 186 ESP_LOGD(TAG, "Loop => ML1_MQTT_CONNECT");
190 } 187 }
191 break; 188 break;
192 189
193 case ML1_MQTT_CONNECT: 190 case ML1_MQTT_CONNECT:
194 if (ready_ds18b20() && ready_adc()) { 191 if (ready_ds18b20() && ready_adc()) {
261 xSemaphoreGive(xSemaphoreUnits); 258 xSemaphoreGive(xSemaphoreUnits);
262 } else { 259 } else {
263 ESP_LOGE(TAG, "ML1_MQTT_CONNECT write_units lock error"); 260 ESP_LOGE(TAG, "ML1_MQTT_CONNECT write_units lock error");
264 } 261 }
265 user_refresh(); 262 user_refresh();
266 ESP_LOGI(TAG, "Loop => ML1_MQTT_WAITCON"); 263 ESP_LOGD(TAG, "Loop => ML1_MQTT_WAITCON");
267 } 264 }
268 break; 265 break;
269 266
270 case ML1_WAITCON: 267 case ML1_WAITCON:
271 if (ready_mqtt()) { 268 if (ready_mqtt()) {
272 Main_Loop1 = ML1_SEND; 269 Main_Loop1 = ML1_SEND;
273 ESP_LOGI(TAG, "Loop => ML1_SEND"); 270 ESP_LOGD(TAG, "Loop => ML1_SEND");
274 } 271 }
275 break; 272 break;
276 273
277 case ML1_SEND: 274 case ML1_SEND:
278 publishNode(); 275 publishNode();
279 publishUnits(); 276 publishUnits();
280 publishLogs(); 277 publishLogs();
281 Main_Loop1 = ML1_WAITACK; 278 Main_Loop1 = ML1_WAITACK;
282 ESP_LOGI(TAG, "Loop => ML1_WAITACK"); 279 ESP_LOGD(TAG, "Loop => ML1_WAITACK");
283 break; 280 break;
284 281
285 case ML1_WAITACK: 282 case ML1_WAITACK:
286 if (count_pub == 0) { // Wait until all published messages are sent. 283 if (count_pub == 0) { // Wait until all published messages are sent.
287 status_WiFi(); 284 status_WiFi();
288 ESP_LOGD(TAG, "Main loop: Done, user busy: %s", user_busy() ? "true":"false"); 285 ESP_LOGD(TAG, "Main loop: Done, user busy: %s", user_busy() ? "true":"false");
289 Main_Loop1 = ML1_STATUS; 286 Main_Loop1 = ML1_STATUS;
290 user_refresh(); 287 user_refresh();
291 ESP_LOGI(TAG, "Loop => ML1_STATUS"); 288 ESP_LOGD(TAG, "Loop => ML1_STATUS");
292 } 289 }
293 break; 290 break;
294 291
295 case ML1_STATUS: 292 case ML1_STATUS:
296 /* 293 /*
300 scan_WiFi(); 297 scan_WiFi();
301 Main_Loop1 = ML1_SCAN; 298 Main_Loop1 = ML1_SCAN;
302 ESP_LOGI(TAG, "Loop => ML1_SCAN"); 299 ESP_LOGI(TAG, "Loop => ML1_SCAN");
303 } else { 300 } else {
304 Main_Loop1 = ML1_DONE; 301 Main_Loop1 = ML1_DONE;
305 ESP_LOGI(TAG, "Loop => ML1_DONE"); 302 ESP_LOGD(TAG, "Loop => ML1_DONE");
306 } 303 }
307 break; 304 break;
308 305
309 case ML1_SCAN: 306 case ML1_SCAN:
310 if (_wifi_ScanDone == true) { 307 if (_wifi_ScanDone == true) {
311 Main_Loop1 = ML1_DONE; 308 Main_Loop1 = ML1_DONE;
312 ESP_LOGI(TAG, "Loop => ML1_DONE"); 309 ESP_LOGD(TAG, "Loop => ML1_DONE");
313 } 310 }
314 break; 311 break;
315 312
316 case ML1_DONE: 313 case ML1_DONE:
317 /* Wait here until the timer resets the loop */ 314 /* Wait here until the timer resets the loop */

mercurial