• @allObjects , all useful stuff above Ta,. ...not to distract from @bertjerred 's build mission but Think it may be useful here to note what happens if a setWatch interrupt occurs while the previous SetWatch function is still running. Was going to test but see you comented on the subject ( 7 yrs ago :). http://forum.espruino.com/comments/11932­979/
    Is it correct still that setWatch triggered functions are queued and executed by the JS Interpreter in the order in which they occurred?
    (* in the simple case assuming the advanced IRQ' parameter features of set watch are not used )

  • Sun 2021.09.26


    'Internally, an interrupt writes the time of the pin's state change into a queue with the exact time that it happened, and the function supplied to setWatch is executed only from the main message loop. However, if the callback is a native function void (bool state) then you can add irq:true to options, which will cause the function to be called from within the IRQ. When doing this, interrupts will happen on both edges and there will be no debouncing.'


Avatar for Robin @Robin started