From abc2160d8dcfa921151f8243fb6677ec565b87ed Mon Sep 17 00:00:00 2001 From: uvok Date: Mon, 21 Jul 2025 10:13:55 +0200 Subject: Move advertising pin --- include/badge/gpio.h | 1 + src/gpio.cpp | 5 ++--- src/main.cpp | 8 +++++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/include/badge/gpio.h b/include/badge/gpio.h index fb999a8..0a20d92 100644 --- a/include/badge/gpio.h +++ b/include/badge/gpio.h @@ -3,6 +3,7 @@ #include #define BOOT_KEY 0 +#define HOME_KEY 2 #define NEXT_KEY 4 #define OK_KEY 5 #define PRV_KEY 6 diff --git a/src/gpio.cpp b/src/gpio.cpp index 7f473ec..b7b03f1 100644 --- a/src/gpio.cpp +++ b/src/gpio.cpp @@ -8,7 +8,6 @@ #if UVOK_EPAP_BOARD == BOARD_ESP32_CROWPANEL // Elecrow #define EXIT_KEY 1 -#define HOME_KEY 2 #endif #define GPIO_STACK 2048 @@ -60,7 +59,7 @@ void de::uvok::badge::gpio_init(void) gpio_task_stuff.queue_handle = xQueueCreateStatic(4, sizeof(pin_notification_t), &(gpio_task_stuff.queue_storage[0]), &gpio_task_stuff.queue); #if UVOK_EPAP_BOARD == BOARD_ESP32_CROWPANEL - uint8_t inPins[] = {BOOT_KEY, EXIT_KEY, HOME_KEY, NEXT_KEY, OK_KEY, PRV_KEY}; + uint8_t inPins[] = {HOME_KEY, EXIT_KEY, HOME_KEY, NEXT_KEY, OK_KEY, PRV_KEY}; for (uint8_t p : inPins) { pinMode(p, GPIO_MODE_INPUT); @@ -80,7 +79,7 @@ de::uvok::badge::gpio_poll_result_t de::uvok::badge::gpio_poll(void) { uint32_t r = event; event = 0; - return {.duration_ms = (r >> 8), .pin_number = (r & 0xff), .has_data = true}; + return {.duration_ms = (uint16_t)(r >> 8), .pin_number = (uint8_t)(r & 0xff), .has_data = true}; } return {0}; diff --git a/src/main.cpp b/src/main.cpp index 2153324..2495c1e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -66,9 +66,11 @@ void loop() case OK_KEY: newNum = de::uvok::badge::display_refresh(); break; - case BOOT_KEY: - de::uvok::badge::ble_advertise(); - + case HOME_KEY: + if (gpio_result.duration_ms > 1000) + { + de::uvok::badge::ble_advertise(); + } break; } if (newNum != UINT8_MAX) -- cgit v1.2.3