Skip to content

When pressing button continuously, if the duration of the last button press exceeds short_press_ticks, only the BUTTON_PRESS_END event is triggered. Are the BUTTON_PRESS_REPEAT_DONE and other events missing? (AEGHB-1140) #542

@AeonJh

Description

@AeonJh

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.

v6.0-dev-1002-gbfe5caf58f

Espressif SoC revision.

ESP32-C6 (QFN40) (revision v0.0)

Operating System used.

Linux

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

None

Development Kit.

Custom Board

Power Supply used.

External 3.3V

What is the expected behavior?

Expected to return event BUTTON_PRESS_REPEAT_DONE and BUTTON_MULTIPLE_CLICK, perhaps it should also return BUTTON_DOUBLE_CLICK.

What is the actual behavior?

When pressing button continuously, if the duration of the last button press exceeds short_press_ticks, only the BUTTON_PRESS_END event is triggered.

Steps to reproduce.

  1. Step: Press the button several times quickly.
  2. Step: Keep the button pressed for longer than short_press_ticks during the last press.
  3. Step: Observe the callback event.
Image

Check the source code iot_button.c. It seems that other events that should be returned are missing here.
Image

More Information.

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions