1185 gpio_evt_queue = xQueueCreate(10, sizeof(uint32_t)); |
1183 gpio_evt_queue = xQueueCreate(10, sizeof(uint32_t)); |
1186 xTaskCreate(gpio_task, "gpio_task", 2048, NULL, 10, NULL); |
1184 xTaskCreate(gpio_task, "gpio_task", 2048, NULL, 10, NULL); |
1187 |
1185 |
1188 gpio_isr_handler_add(ROT_ENC_SW_GPIO, gpio_isr_handler, (void*) ROT_ENC_SW_GPIO); |
1186 gpio_isr_handler_add(ROT_ENC_SW_GPIO, gpio_isr_handler, (void*) ROT_ENC_SW_GPIO); |
1189 |
1187 |
1190 // Create a queue for events from the rotary encoder driver. |
1188 /* |
1191 // Tasks can read from this queue to receive up to date position information. |
1189 * Create a queue for events from the rotary encoder driver. |
|
1190 * Tasks can read from this queue to receive up to date position information. |
|
1191 */ |
1192 event_queue = rotary_encoder_create_queue(); |
1192 event_queue = rotary_encoder_create_queue(); |
1193 ESP_ERROR_CHECK(rotary_encoder_set_queue(&rinfo, event_queue)); |
1193 ESP_ERROR_CHECK(rotary_encoder_set_queue(&rinfo, event_queue)); |
1194 |
1194 |
|
1195 /* |
|
1196 * Create a one second periodic timer. |
|
1197 */ |
1195 esp_timer_create_args_t timerSecond = { |
1198 esp_timer_create_args_t timerSecond = { |
1196 .callback = &TimerCallback, |
1199 .callback = &TimerCallback, |
1197 .name = "SecondsTimer" |
1200 .name = "SecondsTimer" |
1198 }; |
1201 }; |
1199 |
|
1200 /* |
|
1201 * Create a one second periodic timer. |
|
1202 */ |
|
1203 ESP_ERROR_CHECK(esp_timer_create(&timerSecond, &timerHandle)); |
1202 ESP_ERROR_CHECK(esp_timer_create(&timerSecond, &timerHandle)); |
1204 ret = esp_timer_start_periodic(timerHandle, 1000000); |
1203 ESP_ERROR_CHECK(esp_timer_start_periodic(timerHandle, 1000000)); |
1205 assert(ret == ESP_OK); |
|
1206 |
1204 |
1207 EventBits_t uxBits; |
1205 EventBits_t uxBits; |
1208 |
1206 |
1209 /* |
1207 /* |
1210 * Task loop forever. |
1208 * Task loop forever. |
1256 } |
1254 } |
1257 |
1255 |
1258 xEventGroupClearBits(xEventGroupUser, TASK_USER_WAKEUP); |
1256 xEventGroupClearBits(xEventGroupUser, TASK_USER_WAKEUP); |
1259 } |
1257 } |
1260 } |
1258 } |
1261 |
1259 } |
1262 // If not configured, start configure |
1260 |
1263 // If configured select first unit |
|
1264 // Handle screen (first is show measured values) |
|
1265 // Display per unit. Temp + Pressure + state. Press is setup this sensor. |
|
1266 // Setup menu: Sensors |
|
1267 // WiFi |
|
1268 // MQTT |
|
1269 // System (timers etc) |
|
1270 // Update OTA |
|
1271 // Return |
|
1272 |
|
1273 // Sensors menu: Assignments, turn to choose one. |
|
1274 // Sensors setup menu: DS18B20 addr Press is assign |
|
1275 // DS18B20 addr |
|
1276 } |
|
1277 |
|