The micropython documentation for utime.time() states that on
some hardware, the function only have second precision.
This is the case at least for the TinyPICO board.
This means that we get an effective 1 second timeout for the
read_response() function instead of the expected 50ms. In turn,
it makes the run() function quite slow which delays the whole
application.
To get higher precision, the documentation recommends to use
utime.ticks_ms() instead which is what have been implemented
here.
The micropython documentation for utime.time() states that on some hardware, the function only have second precision.
This is the case at least for the TinyPICO board.
This means that we get an effective 1 second timeout for the read_response() function instead of the expected 50ms. In turn, it makes the run() function quite slow which delays the whole application.
To get higher precision, the documentation recommends to use utime.ticks_ms() instead which is what have been implemented here.