diff -r 5035385299f6 -r 90a36619b07b main/task_user.c --- a/main/task_user.c Sun Apr 05 19:17:17 2020 +0200 +++ b/main/task_user.c Mon Apr 06 10:42:08 2020 +0200 @@ -28,6 +28,9 @@ int num_ssids = 0; ///< Number of SSIDs we know struct strStations editAP; ///< Data of station to edit char sensors[DS18B20_MAX][17]; ///< Sensors to select +uint32_t err_connect = 0; ///< Connect error count +uint32_t err_alarm = 0; ///< Alarm watchdog error count + extern const esp_app_desc_t *app_desc; ///< App description extern unit_t units[3]; ///< Pressure test units @@ -80,6 +83,7 @@ if (AlarmTimer == 1) { ESP_LOGI(TAG, "Alarm Timer timeout"); Main_Loop1 = ML1_INIT; + err_alarm++; } if (AlarmTimer) { @@ -705,6 +709,19 @@ +/* + * @brief The counters display screen. + */ +void screen_counters() +{ + screen_top("Software tellers"); + menu_line(0, 1, 25, "Network %d", err_connect); + menu_line(0, 1, 37, "Watchdog %d", err_alarm); + u8g2_SendBuffer(&u8g2); +} + + + /** * @brief Interrupt service routine for the rotary pushbutton. */ @@ -902,6 +919,10 @@ screen_update(); break; + case ML2_COUNTERS: + screen_counters(); + break; + case ML2_SETUP_UNIT1: case ML2_SETUP_UNIT2: case ML2_SETUP_UNIT3: @@ -953,7 +974,8 @@ case ML2_WIFI: rotate_to_menu(event.state.position, ML2_NETWORK, ML2_UNIT3); break; case ML2_NETWORK: rotate_to_menu(event.state.position, ML2_MQTT, ML2_WIFI); break; case ML2_MQTT: rotate_to_menu(event.state.position, ML2_UPDATE, ML2_NETWORK); break; - case ML2_UPDATE: rotate_to_menu(event.state.position, ML2_UPDATE, ML2_MQTT); break; + case ML2_UPDATE: rotate_to_menu(event.state.position, ML2_COUNTERS, ML2_MQTT); break; + case ML2_COUNTERS: rotate_to_menu(event.state.position, ML2_COUNTERS, ML2_UPDATE); break; case ML2_SETUP_UNIT1: case ML2_SETUP_UNIT2: case ML2_SETUP_UNIT3: if (rotate_to_sub(event.state.position, 3, &SubMenu, &SubOffset)) @@ -1311,11 +1333,12 @@ if (xEventGroupGetBits(xEventGroupUser) & TASK_USER_REFRESH) { xEventGroupClearBits(xEventGroupUser, TASK_USER_REFRESH); switch (Main_Loop2) { - case ML2_USER: screen_main(); break; - case ML2_UNIT1: screen_unit(0); break; - case ML2_UNIT2: screen_unit(1); break; - case ML2_UNIT3: screen_unit(2); break; - case ML2_WIFI: screen_wifi(); break; + case ML2_USER: screen_main(); break; + case ML2_UNIT1: screen_unit(0); break; + case ML2_UNIT2: screen_unit(1); break; + case ML2_UNIT3: screen_unit(2); break; + case ML2_WIFI: screen_wifi(); break; + case ML2_COUNTERS: screen_counters(); break; } }