Section 10.  Troubleshooting 
 
408
results can be difficult due to the multitasking nature of the logger, but it can be a 
useful tool for fine tuning a program. 
 
10.3.4 NAN and ±INF 
NAN (not-a-number) and ±INF (infinite) are data words indicating an exceptional 
occurrence in datalogger function or processing. NAN is a constant that can be 
used in expressions as shown in CRBasic example Using NAN in Expressions
 (p. 
408).
. NAN can also be used in conjunction with the disable variable (DisableVar) 
in output processing (data storage) instructions as shown in CRBasic example 
Using NAN to Filter Data
 (p. 410). 
 
10.3.4.1 Measurements and NAN 
A NAN indicates an invalid measurement. 
 
10.3.4.1.1 Voltage Measurements 
The CR800 has the following user-selectable voltage ranges: ±5000 mV, ±2500 
mV, ±250 mV, ±25 mV, ±7.5 mV, ±2.5 mV. Input signals that exceed these 
ranges result in an over-range indicated by a NAN for the measured result. With 
auto range to automatically select the best input range, a NAN indicates that either 
one or both of the two measurements in the auto-range sequence over ranged.  A 
voltage input not connected to a sensor is floating and the resulting measured 
voltage often remains near the voltage of the previous measurement. Floating 
measurements tend to wander in time, and can mimic a valid measurement.  The 
C (open input detect/common-mode null) range-code option can be used to force 
a NAN result for open (floating) inputs. 
 
10.3.4.1.2 SDI-12 Measurements 
NAN is loaded into the first SDI12Recorder() variable under these conditions: 
•  When busy with terminal commands. 
•  When the command is an invalid command. 
•  When the sensor aborts with CR LF and there is no data. 
 
CRBasic EXAMPLE. Using NAN in Expressions 
 
CRBasicExample67.  UsingNANinExpressions
If WindDir = NAN Then 
  WDFlag = False 
Else 
  WDFlag = True 
EndIf 
 
10.3.4.2 Floating-Point Math, NAN, and ±INF 
Table Math Expressions and CRBasic Results (p. 409) lists math expressions, their 
CRBasic form, and IEEE floating point-math result loaded into variables declared 
as FLOAT or STRING.