s00500 / ESPUI

A simple web user interface library for ESP32 and ESP8266

Home Page:https://valencia.lbsfilm.at/midterm-presentation/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

updateTime() keeps firing the callback

jberezin opened this issue · comments

First I have a button which triggers the updateTime function:

   switch (type)
    {
    case B_DOWN:
        Serial.println("Button DOWN");

        if (sender->id == accuSet)
        {
            // fire the time call back
            // Request an update to the time
            Serial.println("Triggering time callback");
            ESPUI.updateTime(timeId);

            // Will trigger timeCallback
        }
        break;

I have checked and that code is only called once but the timeCallback fires least once a second. So my code is working and the timeUpdate is working but I only want it to occur once. I didn't know this was happening until I put in some serial print statements because my code seemed to be working fine:

Select: ID: 4, Value: 2024-07-26T08:01:40.864Z
utc time: 2024-07-26T08:01:40.864Z
Select: ID: 4, Value: 2024-07-26T08:01:40.913Z
utc time: 2024-07-26T08:01:40.913Z
Select: ID: 4, Value: 2024-07-26T08:01:40.995Z
utc time: 2024-07-26T08:01:40.995Z
Select: ID: 4, Value: 2024-07-26T08:01:41.101Z
utc time: 2024-07-26T08:01:41.101Z
Select: ID: 4, Value: 2024-07-26T08:01:41.146Z
utc time: 2024-07-26T08:01:41.146Z
Select: ID: 4, Value: 2024-07-26T08:01:41.199Z
utc time: 2024-07-26T08:01:41.199Z

I would like to know how to turn this off until the button which triggers the updateTime() is pressed again.

Thank you for any help here.

I worked around this problem by creating a new variable and testing it in the callback and simply returning if I don't really need the current time of day. I also tried disabling the time control but that didn't work.