Is IMP003 microcontroller clock speed dependent on supply voltage?

Our device runs from 3.0V nominal battery. The battery voltage ranges between 2.3 and 3.1V.
Is the clock speed dependent on supply voltage?

The clock speed isn’t, but the internal flash speed is. This means that Squirrel may execute slower at lower voltages. I believe the first step down is at 2.7V.

It’s also worth noting that 2.5V is the minimum operating voltage for WiFi so you may start seeing issues there at the low end of your battery voltage.

Hi Brandon, Thanks for replying. For wifi we boost to 3.05V. But before we connect to wifi we take samples from an accelerometer. We don’t use flash before we connect to wifi. I would like to learn more about squirrel executing slower because we do a time measurement using the microseconds counter and that must not be affected. Please explain more about execution speed and voltage levels. How much slower and at what voltage levels. Thanks

It will not affect the microsecond counter as that is derived from the XTAL which doesn’t change.

The only thing that changes is that the internal NOR flash (not the external SPI Flash) where you Squirrel code is stored takes a single cycle to access at 2.7V and above and longer at lower voltages. There is a cache on the flash so it is very hard to determine what the impact to performance is for all applications. The best analogy would a laptop with a hard drive which drops from 7200rpm to 5400rpm when the battery is low. How that affects the system depends on many different things.

If you are concerned about this then you could use the imp.setpoweren(true) API to enable your boost without turning on WiFi.