Specifications
Time to awaken from sleep (mode 0):
< 850 microseconds
Time to startup from power-on:
< 250 milliseconds
Maximum rate a SNAPpy script can toggle a GPIO pin:
9518 Hz
In other words, each True/False cycle took 105.06 microseconds.
(To change the state of a pin takes 52.56 microseconds, and each pulse requires two state changes).
Keep in mind that as a general rule, SNAPpy scripts should not be looping, the above rate is only
attainable if the node is doing nothing else (for example, no radio or serial port communication).
Maximum rate for readAdc() calls:
maximum 19952 samples/second
In other words, each sample took 50.12 microseconds to gather.
NOTE! – This measurement was taken using a script that did not actually do anything with the data.
You will also have to take into consideration any numeric processing required (data thresholding, etc.),
as well as the need to actually store the data someplace.
Also note that the very first readAdc() call takes 174 microseconds (not 50.12 microseconds)
because of some initial “first time only” hardware initialization that is required. You may want to
make a “setup” readAdc() call in your script’s startup event handler.
I
2
C Byte Transfer Time
The actual I
2
C transfers are done using “bit banging” in software. This was measured using a logic
analyzer at 239 µs per byte.
SPI Byte Transfer Time
The actual SPI transfers are done using “bit banging” in software. This was measured using a logic
analyzer at 177 µs per byte.
Virtual Machine Speed
SNAP 2.3 Instructions Per Second (IPS): 39240
Page 160 of 202 SNAP Reference Manual Document Number 600-0007K