From e7af663bc3ba88dbd32a0915068fc81c656f2386 Mon Sep 17 00:00:00 2001 From: Peter Siegmund Date: Sat, 27 Dec 2025 00:10:37 +0100 Subject: [PATCH] send button event to ESP Insights Signed-off-by: Peter Siegmund --- firmware/components/analytics/src/analytics.c | 2 +- firmware/components/insa/src/ui/LightMenu.cpp | 4 ++-- firmware/main/button_handling.c | 6 +++++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/firmware/components/analytics/src/analytics.c b/firmware/components/analytics/src/analytics.c index e20c528..9e5285d 100644 --- a/firmware/components/analytics/src/analytics.c +++ b/firmware/components/analytics/src/analytics.c @@ -11,7 +11,7 @@ void analytics_init(void) .log_type = ESP_DIAG_LOG_TYPE_ERROR | ESP_DIAG_LOG_TYPE_EVENT | ESP_DIAG_LOG_TYPE_WARNING, .node_id = NULL, .auth_key = insights_auth_key_start, - .alloc_ext_ram = false, + .alloc_ext_ram = true, }; esp_insights_init(&config); diff --git a/firmware/components/insa/src/ui/LightMenu.cpp b/firmware/components/insa/src/ui/LightMenu.cpp index 374a320..91e45cc 100644 --- a/firmware/components/insa/src/ui/LightMenu.cpp +++ b/firmware/components/insa/src/ui/LightMenu.cpp @@ -47,10 +47,10 @@ LightMenu::LightMenu(menu_options_t *options) : Menu(options), m_options(options variants.emplace_back("1"); variants.emplace_back("2"); variants.emplace_back("3"); - int variant_value = 2; + int variant_value = 3; if (m_options && m_options->persistenceManager) { - variant_value = m_options->persistenceManager->GetValue(LightMenuOptions::LIGHT_VARIANT, variant_value); + variant_value = m_options->persistenceManager->GetValue(LightMenuOptions::LIGHT_VARIANT, variant_value) - 1; } addSelection(LightMenuItem::VARIANT, "Variante", variants, variant_value); } diff --git a/firmware/main/button_handling.c b/firmware/main/button_handling.c index 5410eab..3bceb3d 100644 --- a/firmware/main/button_handling.c +++ b/firmware/main/button_handling.c @@ -16,10 +16,12 @@ static const char *TAG = "button_handling"; const uint8_t gpios[] = {BUTTON_DOWN, BUTTON_UP, BUTTON_LEFT, BUTTON_RIGHT, BUTTON_SELECT, BUTTON_BACK}; +static const char *button_names[] = {"DOWN", "UP", "LEFT", "RIGHT", "SELECT", "BACK"}; typedef struct { uint8_t gpio; + uint8_t index; } button_user_data_t; static button_user_data_t button_data[6]; @@ -35,8 +37,9 @@ static void button_event_cb(void *arg, void *usr_data) } button_user_data_t *data = (button_user_data_t *)usr_data; uint8_t gpio_num = data->gpio; + const char *button_name = button_names[data->index]; - ESP_LOGI(TAG, "Button pressed on GPIO %d", gpio_num); + ESP_DIAG_EVENT(TAG, "Button %s pressed (GPIO %d)", button_name, gpio_num); if (xQueueSend(buttonQueue, &gpio_num, 0) != pdTRUE) { @@ -60,6 +63,7 @@ static void init_button(uint8_t gpio, int index) } button_data[index].gpio = gpio; + button_data[index].index = index; iot_button_register_cb(gpio_btn, BUTTON_SINGLE_CLICK, NULL, button_event_cb, &button_data[index]); }