Section 10. Troubleshooting
is not large enough and write Warning:Variable ExArray out of bounds to the
CompileErrors field.
The CR800 does not catch all out-of-bounds errors, so take care that all arrays are
sized as needed.
10.5.4.8 Watchdog Errors
Watchdog errors indicate the CR800 has crashed and reset itself. A few
watchdogs indicate the CR800 is working as designed and are not a concern.
Following are possible root causes sorted in order of most to least probable:
• Transient voltage
• Running the CRBasic program very fast
• Many PortSet() instructions back-to-back with no delay
• High-speed serial data on multiple ports with very large data packets or
bursts of data
If any of the previous are not the apparent cause, contact a Campbell Scientific
support engineer for assistance. Causes that require assistance include the
following:
• Memory corruption. Check for memory failures with M command in
terminal mode
(p. 483).
• Operating-system problem
• Hardware problem
Watchdog errors may cause comms disruptions, which can make diagnosis and
remediation difficult. The CR1000KD Keyboard/Display will often work as a
user interface when comms fail. Information on CR800 crashes may be found in
three places.
• WatchdogErrors
(p. 552) field in the Status table
• Watchdog.txt file on the CPU: drive
(p. 409). Some time may elapse
between when the error occurred and the Watchdog.txt file is created.
Not all errors cause a file to be created. Any time a watchdog.txt file is
created, please consult with a Campbell Scientific support engineer.
• Crash information may be posted at the end of the CompileResults
(p.
539)
register in the Status table.
10.5.4.8.1 Status Table WatchdogErrors
Non-zero indicates the CR800 has crashed, which can be caused by power or
transient-voltage problems, or an operating-system or hardware problem. If