Esp32 crashed by changed bool var without logic

Hello. I use ESP32-wroom DevKit
I connect display to this board and display some info. On some period it's show users info about timeout error.
In main loop I use this construction, to display error:

 if (payTimeOut)
  {
    payTimeOut = false;

    cancel_session = true;
    showTimeOutErr ();

    delay(5000);

    mainScreen ();

    pirGet = 0;
    person_hear = false;
    startPay = false;
    persTimeOut = 0;

  }

on setup

bool payTimeOut = false;

void setup(void) {
  Serial.begin(115200);
  Serial.setTimeout(100);

  xTaskCreate(
    syncTask
    ,  "syncTask" // A name just for humans
    ,  24576        // The stack size can be checked by calling `uxHighWaterMark = uxTaskGetStackHighWaterMark(NULL);`
    ,  NULL // Task parameter which can modify the task behavior. This must be passed as pointer to void.
    ,  2  // Priority
    ,  NULL // Task handle is not used here - simply pass NULL
  );

}

payTimeOut is changed in other while loop which not loaded now, but after some time work esp32 crashed. Exception Decoder show:

It's really make me crazy. It's was not any change for payTimeOut then it's impossible to call showTimeOutErr.

But if I call showTimeOutErr by myseft - it work correctly - nothing crashed...

If anyone have any idea in what can be trouble, please help! Thanks

Please post a complete sketch, if not the actual sketch you are working on then a reduced sketch that illustrates your problem.

I don't know who can help with a while statement that is nowhere in sight.

a7

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.