• Last not least, flickering is gone.
    Surrounded jsvIterateCallback with rtos commands to switch taskhandling off

    vTaskSuspendAll();
      jsvIterateCallback(data, allFast ? jswrap_io_shiftOutCallbackFast : jswrap_io_shiftOutCallback, &d);
    xTaskResumeAll();
    

    Actual status, compared to direct_io branch is:

    • switched fast io off (return false in jshGetPinAddress)
    • switched task handling off during jsvIterateCallback
    • moved en.set() and en.reset() from js(g.scan) to be set in arr

    Latest next week, I'll send a request with all changes to direct_io branch.
    Open questions:

    • how do we call task relevant RTOS function ? We could use #ifdef ESP32 or #ifdef RTOS. I would prefer the 2nd one.
    • do we need jshIsPinValid(d->pins[n]) in jswrap_io_shiftOutCallback ? Isn't this already done in jswrap_io_shiftOut ?
About

Avatar for JumJum @JumJum started