diff --git a/src/hasp/hasp_event.cpp b/src/hasp/hasp_event.cpp index 059f01fd..c5ea65b6 100644 --- a/src/hasp/hasp_event.cpp +++ b/src/hasp/hasp_event.cpp @@ -304,8 +304,8 @@ void generic_event_handler(lv_obj_t* obj, lv_event_t event) } else { event_object_generic_event(obj, last_value_sent); // send normal object event } - dispatch_normalized_group_value(obj->user_data.groupid, obj, Parser::get_event_state(eventid), HASP_EVENT_OFF, - HASP_EVENT_ON); + dispatch_normalized_group_value(obj->user_data.groupid, obj, Parser::get_event_state(last_value_sent), + HASP_EVENT_OFF, HASP_EVENT_ON); } /** diff --git a/src/sys/gpio/hasp_gpio.cpp b/src/sys/gpio/hasp_gpio.cpp index 88342306..3b237db2 100644 --- a/src/sys/gpio/hasp_gpio.cpp +++ b/src/sys/gpio/hasp_gpio.cpp @@ -61,7 +61,7 @@ static void gpio_event_handler(AceButton* button, uint8_t eventType, uint8_t but state = true; break; case 2: // AceButton::kEventClicked: - eventid = HASP_EVENT_SHORT; + eventid = HASP_EVENT_UP; break; // case AceButton::kEventDoubleClicked: // eventid = HASP_EVENT_DOUBLE; @@ -78,7 +78,7 @@ static void gpio_event_handler(AceButton* button, uint8_t eventType, uint8_t but if(gpioConfig[btnid].type == HASP_GPIO_SWITCH || gpioConfig[btnid].type == HASP_GPIO_SWITCH_INVERTED) { eventid = HASP_EVENT_OFF; } else { - eventid = HASP_EVENT_UP; + eventid = HASP_EVENT_RELEASE; } break; default: