From a9f6f9f6ac24e4f8e355c5854915f7cff2dc212a Mon Sep 17 00:00:00 2001 From: jess Date: Fri, 3 Apr 2026 03:47:51 -0700 Subject: [PATCH] add timestamp tracking to UDP client table --- main/wifi_transport.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/main/wifi_transport.c b/main/wifi_transport.c index 579524e..9e2df73 100644 --- a/main/wifi_transport.c +++ b/main/wifi_transport.c @@ -20,7 +20,6 @@ #define UDP_PORT 5941 #define UDP_BUF_SIZE 128 #define UDP_CLIENTS_MAX 16 -#define CLIENT_TIMEOUT_MS 30000 static int udp_sock = -1; static esp_netif_t *ap_netif; @@ -28,6 +27,7 @@ static esp_netif_t *ap_netif; static struct { struct sockaddr_in addr; uint8_t mac[6]; + uint32_t last_touch_ms; bool active; } clients[UDP_CLIENTS_MAX]; @@ -41,6 +41,7 @@ static void client_touch(const struct sockaddr_in *addr) for (int i = 0; i < client_count; i++) { if (clients[i].addr.sin_addr.s_addr == addr->sin_addr.s_addr && clients[i].addr.sin_port == addr->sin_port) { + clients[i].last_touch_ms = xTaskGetTickCount() * portTICK_PERIOD_MS; xSemaphoreGive(client_mutex); return; } @@ -63,6 +64,7 @@ static void client_touch(const struct sockaddr_in *addr) } } + clients[client_count].last_touch_ms = xTaskGetTickCount() * portTICK_PERIOD_MS; client_count++; printf("UDP: client added (%d)\n", client_count); }