mirror of
https://gitlab.com/fabinfra/fabhardware/fabmeter.git
synced 2025-03-12 22:51:44 +01:00
28 lines
1.2 KiB
C
28 lines
1.2 KiB
C
#include <esp_wifi.h>
|
|
#include <esp_event.h>
|
|
#include <esp_log.h>
|
|
#include <led_strip.h>
|
|
#include "net_event_handler.h"
|
|
|
|
|
|
extern led_strip_handle_t debug_led;
|
|
|
|
void network_event_handler(void *arg, esp_event_base_t event_base, int32_t event_id, void *event_data) {
|
|
if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_START) {
|
|
ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0xFF, 0xFF, 0));
|
|
ESP_ERROR_CHECK(led_strip_refresh(debug_led));
|
|
esp_wifi_connect();
|
|
} else if (event_base == WIFI_EVENT && event_id == WIFI_EVENT_STA_DISCONNECTED) {
|
|
ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0xFF, 0xFF, 0));
|
|
ESP_ERROR_CHECK(led_strip_refresh(debug_led));
|
|
esp_wifi_connect();
|
|
} else if (event_base == IP_EVENT && event_id == IP_EVENT_STA_GOT_IP) {
|
|
ip_event_got_ip_t *event = (ip_event_got_ip_t *) event_data;
|
|
ESP_LOGI("network", "got ip:" IPSTR, IP2STR(&event->ip_info.ip));
|
|
ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0, 0xFF, 0));
|
|
ESP_ERROR_CHECK(led_strip_refresh(debug_led));
|
|
vTaskDelay(pdMS_TO_TICKS(1000));
|
|
ESP_ERROR_CHECK(led_strip_set_pixel(debug_led, 0, 0, 0, 0));
|
|
ESP_ERROR_CHECK(led_strip_refresh(debug_led));
|
|
}
|
|
} |