I'm recently trying to use an Avnet BCM94343W board for my experiment, however, I'm running into trouble with the timer.
I needed to set a 10 second delay so I used wiced_rtos_delay_milliseconds(10000) for the delay, but the result is often a delay less than 10 seconds.
I've also used wiced_time_get_time() to get time of my experiment but its often incorrect. When my experiment starts, I'll set wiced_time_get_time(&start) and send a GPIO signal to an external device to start its own timer for time comparison. When the experiment ends, I create another variable wiced_time_get_time(&end) and send another GPIO to stop the external device's time measurement. With the difference in start and end, BCM94343W shows my experiments end at around 55 secs, but my external device measures 60 secs. I've also tried the same program on Cypress CYW943907 and it measures 60 sec for each experiment.
Does anyone know methods to solve this issue or another way to obtain a more accurate time-stamp for BCM94343W?
It is possible that the process of sending GPIO signal to another device which would start the timer first for time comparison could cause latency. Instead can you send the GPIO signals to an oscilloscope and measure the time delay? Accordingly you can validate the accuracy of the time delay.