Requirement - .Net 4.0 framework (full profile) is required for this application to run in its entirety. The .Net 4.5 framework may also be installed on the system as it is an upgrade to the 4.0 .Net framework and will allow the application to run in its entirety.
RTDAQ Enhancements - Added support for CR6 Series dataloggers.
RTDAQ Enhancements - Added support for dragging and dropping files from Windows Explorer onto the File Control dialog.
RTDAQ Enhancements - Added support for modifying Station Status
Status Table values via the double click.
RTDAQ Enhancements - Added ability to use MD9 connection.
RTDAQ Enhancements - Added PakBus Encryption Key setting to the CR1000/CR3000/CR800 Series/CR6.
RTDAQ Enhancements - Added the ability to view a file from File Control.
RTDAQ Bug Fix - Changed Max Time On-Line maximum to 23 h 59 m 59 s.
RTDAQ Bug Fix - Changed default Beacon Interval to 0.
RTDAQ Bug Fix - Time zone offset is now applied when finish is clicked as well as when the user sets the clock.
RTDAQ Bug Fix - Trying to send an OS to a 2 Meg CR1000 now gives the correct error message.
RTDAQ Bug Fix - Removed the Time of Fill column from the Station Status because the information was not always correct.
RTDAQ Bug Fix - Fixed a bug when dealing with very large records.
RTDAQ Bug Fix - Long table names and long variable names are now supported.
RTDAQ Bug Fix - Changed the Minimum Graph Width on a Fast Graph to 1 ms.
RTDAQ Bug Fix - Fixed a scaling problem when zooming in on a Histogram when in "Show Values" mode.
RTDAQ Bug Fix - Fixed a problem where the Y-axis label would sometimes overwrite a scale value.
RTDAQ Bug Fix - Fixed a problem where when Collect Mode was set to "Fill Graph Width", data was not displayed smoothly over time. It would scroll for a short time, displaying data, and then stop. It would then go and stop perpetually.
RTDAQ Bug Fix - Fixed a problem where you would get a different Graph configuration when reopening a graph from the Monitor Data tab depending on whether the graph was configured manually or by using File
Load Configuration.
RTDAQ Bug Fix - Fixed a problem in the Fast Graph, where a line was occasionally drawn through an existing curve.
RTDAQ Bug Fix - Fixed a problem with a stopped Fast Graph and historical buffer active, where the prompt was inaccurate (i.e., Page 8 of 2 or Page 13 of 7).
RTDAQ Bug Fix - Fixed a problem where the labels in RTDAQ real-time FFTs were not correct for the case of logarithmic binning.
RTDAQ Bug Fix - Fixed an issue where if a maximum time on-line event is reached, forcing a disconnect on a datalogger while it is collecting records (data since last) that the latest record collected (just before the forced disconnect) does not get written into the csilgrnet.xml file (the last record collected pointer isn't updated there for collection purposes).
RTDAQ Bug Fix - Fixed an issue where when tables were reset, data collected using "Data Since Last Collection" did not collect the correct records.
RTDAQ Bug Fix - Fixed an overlapping problem in the FFT viewer when looking at dual-valued FFTs (real/imag or amp/phase).
RTDAQ Bug Fix - Fixed a problem where the directory dialog would crash when an invalid path was specified.
RTDAQ Bug Fix - Fixed a bug where the FFT graph was not handling INF values properly.
RTDAQ Bug Fix - Fixed a problem where the behavior between the Trace Options dialog box and the Trace Options in the Graph dialog box was not the same.
Short Cut Enhancement - Added support for CR6 Series dataloggers.
Short Cut Enhancement - Added new or updated sensor files for the Switched 12 Volt Timed Control, CS475/CS476/CS477 Radar Water Level Sensor, GPS16X-HVS GPS Receiver, CS140 Luminance Sensor, CS120 Visibility Sensor, PWS100 Present Weather Sensor, CS125 Present Weather and Visibility Sensor, CS135 Ceilometer, Jewell Instruments 904-T Clinometer Pak, DGSI Vibrating Wire Strain Gage, DGSI Vibrating Wire Piezometer, Generic Thermistor (CR6), CS11 Current Transformer, CS11 Current Transformer with Potential Transformer, Geo-Instruments Electrolevel Tiltmeter, VTI ECI-1 Embedded Corrosion Instrument, Modbus Master, Modbus Slave, BS-3+/OBS300 Turbidity Sensor, HC2S3 Temperature and Relative Humidity Sensor, OBS500 Smart Turbidity Meter (SDI-12), Device for Analog Input from SDM-AO4A, 52202 Rain Gauge (CSI), CMP3/CMP6/CMP11 Pyranometer, CS526/CS525 ISFET pH Probe, 020C Wind Direction Sensor, A100LK Wind Speed Sensor, 092 Barometric Pressure Sensor, 61302V Barometric Pressure Sensor, P2546A Wind Speed Sensor, 110PV Surface Temperature Probe, and a Wind Vane Installation Offset Correction (calculation)
CRBasic Editor Enhancement - Added support for CR6 Series dataloggers.
CRBasic Editor Enhancement - Added support for optional parameters (for instructions that have them) in parameter dialog box.
CRBasic Editor Enhancement - Added ability to copy compile results to clipboard.
CRBasic Editor Enhancement - The CRBasic Editor now allows you to Save and Open Display Settings. Display settings affect the look and feel of the CRBasic Editor. This includes font and background, as well as syntax highlighting.
CRBasic Editor Enhancement - To support Unicode, an Insert Symbol dialog box has been added to the CRBasic Editor. This allows you to insert Unicode symbols into your CRBasic program for use in Strings and Units declarations.
CRBasic Editor Enhancement - Added the Shift+Insert hotkey to perform the paste function.
CRBasic Editor Bug Fix - Fixed a problem with the Undo list using up a large amount of memory.
CRBasic Editor Bug Fix - Fixed an error when attempting to compile a program when the previous program was saved in a folder that no longer exists.
CRBasic Editor Bug Fix - Fixed an access violation that occurred when clicking the red x in the Confirm dialog box. It is to be noted that the access violation only happened if the cursor was on a blank line.
CRBasic Editor Bug Fix - Fixed a problem when attempting to replace the baud rate parameter in the SerialOpen command, by using right-click to choose from the variable list. Rather than replacing the previous baud rate, it inserted a second baud rate.
CRBasic Editor Bug Fix - Fixed a bug where the Undo/Redo could be very slow (up to 6 seconds for one redo) for very large files.
CRBasic Editor Bug Fix - Fixed so that when a line is selected and you scroll down or up it will scroll nicely at the extremes of top and bottom.
CRBasic Editor Bug Fix - Fixed a problem with deleting templates.
CRBasic Editor Bug Fix - Fixed a problem where the insert key was not toggling between insert and overwrite.
CRBasic Editor Bug Fix - Made the editor's screen position and window size persistent even in a dual monitor environment.
CRBasic Editor Bug Fix - Files opened with a double click will now cause the editor to open in the last window size used by the editor.
CRBasic Editor Bug Fix - Cursor doesn't go to end of line when enter is pressed splitting a line
CRBasic Editor Bug Fix - Fixed a problem where the Save As dialog appended an extra extension when you replaced the default extension with .dld.
CRBasic Editor Bug Fix - Fixed a problem during a switch from the find dialog to the replace dialog, the state was confused and it did not see the search word had changed.
CRBasic Editor Bug Fix - With the Find dialog box open, you can now use the Paste functionality to paste into the program.
CRBasic Editor Bug Fix - Fixed an issue where the cursor was sometimes misplaced after an F10 variable insert/replace.
CRBasic Editor Bug Fix - Fixed an issue where an extra set of parenthesis was added when using the F10 (Replace Variable) feature to replace an array variable.
RTMC Enhancement - Added RESET_WEEKLY and RESET_CUSTOM options for functions with state that reset. RESET_CUSTOM allows for an optional expression to control the state of when the function will reset.
RTMC Enhancement - Added a flag to tabs with active alarms on them.
RTMC Enhancement - Added support for Unicode.
RTMC Enhancement - Added support for IPv6 addresses.
RTMC Enhancement - Added the ability to change fonts for tables. Header and contents individually in Pro.
RTMC Enhancement - Added a feature to allow copying an entire screen at a time.
RTMC Enhancement - Changed the Configure Workspace to behave the same way as RTMC Pro.
RTMC Enhancement - Added the functions AvgSpa, MinSpa, and MaxSpa to the expressions engine.
RTMC Enhancement - When browsing for data that needs to be read/write, the R icon turns red to indicate it is a read only value.
RTMC Enhancement - Added new z-order options for a single step forward or backward.
RTMC Enhancement - Added option to undo multiple groups.
RTMC Enhancement - Component naming is now more dynamic and tracks the data it is associated with. Chart titles are used in the name if it is one word. Labels also use the title. Images pull out the image name.
RTMC Enhancement - Added a paste menu item to the component menu.
RTMC Enhancement - Added a new function, SelectSwitch(), that can be used to select from multiple case predicate and value combinations. The behavior of this function is similar to that of nested IIF statements.
RTMC Enhancement - Locale is now used when formatting numbers. Instead of 1234567 you see 1,234,567.
RTMC Bug Fix - Changed the expressions as well as alarm comparators to round the values down to 7 decimals and then do the comparisons. This cleans up all of the artifacts that show up in the floating point operations.
RTMC Bug Fix - Change 'Set Point' and 'Digital' to display timestamps recorded within data tables (time of maximum) as timestamps by default instead of nanoseconds.
RTMC Bug Fix - Fixed a bug where the chart series was using the current locale to format time stamp values. If this value was then interpreted again as a date, the PM of the date portion was lost.
View Pro Enhancement - Fixed FSL file loading and a range check error in the Array Definitions dialog.
View Pro Enhancement - The XY Plot now supports multiple XY series. A series selection panel has been added, along with a "New" button that creates new XY series.
View Pro Enhancement - Added ability to import CSV files.
View Pro Enhancement - All of the dialogs in View Pro are now translatable.
View Pro Enhancement - Added a search function to the main grid accessible using ctrl-f, or Edit/Find.
View Pro Enhancement - Added the record view dialog to address the requirements for displaying a status table record. The record view dialog will work for any CSI file type displayed in a grid.
View Pro Enhancement - Added cancel button to Selection Properties under line graph, FFT, Histogram, Rainflow Histogram, and XY Plot. Also added cancel buttons to Graph Options screens associated with the listed graph types. This change will change back the on-screen live changes.
View Pro Enhancement - Extensively revised the print preview code so only one page preview is shown at a time. Also redid the print code. Print Preview will no longer "count pages". Switching from portrait to landscape or back now happens instantaneously without showing a dialog.
View Pro Enhancement - Added two decimal places to the selection data on the graph.
View Pro Enhancement - Multiple large FFTs in the same file are now supported.
View Pro Enhancement - Changed page up/page down functionality to match Excel rather than open office calc.
View Pro Enhancement - Bool8 is now supported for TOB(X) data files
View Pro Enhancement - Added support for the Rainflow Histogram Sample process strings.
View Pro Bug Fix - Fixed a problem with the view grid mouse state missing the mouse up event allowing the data grid to scroll with the mouse when the mouse pointer is off of the application.
View Pro Bug Fix - Trying to copy data from an empty column no longer causes an access violation
View Pro Bug Fix - Fixed a problem where the last record was missing in the graph when an entire column was graphed
View Pro Bug Fix - Fixed a problem where the number of points displayed in a line graph was one less than the number reported.
View Pro Bug Fix - The values in the statistics dialog are now correct when panning.
View Pro Bug Fix - Scrolling one line graph associated with a view file will no longer update the position of the scroll bars on other line graphs associated with the same file
View Pro Bug Fix - Fixed an unzoom/unpan issue that put the Y axis on a line graph in custom axis mode.
View Pro Bug Fix - When scrolling in the graph the data grid view no longer scrolls when there is less than a page of data
View Pro Bug Fix - Changed the file parser to be more tolerant of extra lines at the end of a file.
View Pro Bug Fix - Opening an empty DAT file from the data collection results dialog will no longer lock view from opening subsequent files.
View Pro Bug Fix - TOA5 files with no time stamp or record number will now open.
View Pro Bug Fix - Fixed a binary file parsing issue where the record size for some files was being calculated incorrectly, resulting in erroneous offsets.
View Pro Bug Fix - No longer showing erroneous message about too many records when column selections don't match up in the XY Plot.
View Pro Bug Fix - Fixed an issue where the y-axis didn't clear after removing a selection that was graphed using record numbers on the x-axis.
View Pro Bug Fix - Closing View Pro after viewing a binary file as text will now work.
View Pro Bug Fix - Fixed panning then clearing line graph access violation.
View Pro Bug Fix - Fixed time stamp comparison code that wasn't precise enough for some files.
View Pro Bug Fix - When the database connection fails to connect an error dialog will now appear.
View Pro Bug Fix - Changed the method for calculating the standard deviation to match the method found in the data logger operating systems.
View Pro Bug Fix - View Pro will no longer fail to terminate a string when a null value was encountered. Non-string data in strings will no longer show up when null values are contained therein.
View Pro Bug Fix - Boolean values will now show as -1 and 0 rather than true and false.
Split Enhancement - Added 'qq' to format string. Acts like hh except gives 24 at midnight.
Split Enhancement - Added two more custom date format strings TOA5 and 24TOA5. The former produces a TOA5 formatted timestamp. The latter does the same except with midnight set to 24:00:00.
Split Enhancement - Unicode support added.
Split Enhancement - Enhanced -time offset crossing year boundary. So on first day of the year, a negative offset can back up to previous year.
Split Bug Fix - Fixed HourArray and dayofyear format strings so that they work properly when a time offset is used. Also these fields were not properly quoted when Date vs Edate was used. Fixing this may break existing .PAR files. These (and the "Serial" format string) are intended to be used as the entire format string e.g. edate("dayofyear";4;3;2).
CardConvert Enhancement - Added 2400 hours at midnight support.
CardConvert Enhancement - Added Unicode support.
CardConvert Bug Fix - Fixed some issues with TOB1 files that grow over 4 Gb.
CardConvert Bug Fix - Fixed 'headers do not match' error displays.
PakBus Graph Enhancement - Added support for IPv6 addresses.
PakBus Graph Enhancement - Added Unicode support.
PakBus Graph Bug Fix - Fixed a bug where settings editor sub-panels were getting deleted twice if the settings were reloaded.
LogTool Enhancement - When the LogTool is running remotely and zip all log files is selected, files are now zipped up to a specific file on the server's machine, and then transferred to the client's machine to the location that the user selected.
LogTool Enhancement - When retrieving a zipped file from a remote server, the percentage of the file retrieved so far is now displayed.
LogTool Bug Fix - Delete Log Files and Zip Log Files are now only enabled if security level is Full Administrator.
LogTool Bug Fix - Fixed an issue where you could not Save/Copy/Print the text of a Low Level Log window after its internal buffer had been "filled".
Device Configuration Utility Enhancement - Added wizards to back up a datalogger's settings and files to a zip file and to restore these from a zip file.
Device Configuration Utility Enhancement - Added a data recovery wizard.
Device Configuration Utility Enhancement - Updated support for the CRX000 dataloggers, AL200, CC5MPX.
Device Configuration Utility Enhancement - Added a context menu option to the terminal emulator that will allow the user to toggle whether new lines are time stamped as they are added.
Device Configuration Utility Enhancement - Changed the file control panel so that, if the user attempts to send an operating system to the datalogger, an operation will be included that will start that operating system using the file control transaction.
Device Configuration Utility Enhancement - Added ability for some devices to be configured over the network (using IP).
Device Configuration Utility Enhancement - The device type can now be categorized. This is controlled from the Options menu.
Device Configuration Utility Enhancement - Added an optional button to the Logger Control panel that will allow the user to retrieve the currently running program from any datalogger that supports retrieval (CR1000, CR3000, CR8xx, CR10X-XX, CR23X-XX, CR510-XX, CR5000, and CR9032).
Device Configuration Utility Enhancement - Added new settings for the CR1000, CR3000, and CR800 to configure the NL240 bridged network stack
Device Configuration Utility Enhancement - Added code to the datalogger passwd file editor dialogue that will allow the file, when written to the datalogger, to optionally be marked as hidden on the datalogger. This has been done in order to avoid having the file read by the web or FTP server since doing so could assist in breaking the datalogger security.
Device Configuration Utility Enhancement - Added support for a Bluetooth serial port.
Device Configuration Utility Enhancement - Enabled the SDI-12 option for the CWB100.
Device Configuration Utility Enhancement - Increased the length limit on the "PPP User Name" component of the "PPP Configuration" setting for the CR1000, CR3000, and CR8xx from 31 to 63 characters.
Device Configuration Utility Enhancement - Added ability to copy from help/description area. Also added copy and paste support to terminal.
Device Configuration Utility Enhancement - Changed the file selection controls in the browse configuration summaries dialogue so that a directory picker is used in conjunction with a list box that shows the possible files in the chosen directory. The directory picker has a browse button that brings up a standard directory browse dialogue.
Device Configuration Utility Enhancement - Added options for 300 fixed for the baud rate settings for the COM1-COM4 devices for the CR1000, CR800, and CR3000 dataloggers.
Device Configuration Utility Enhancement - Added store log files to the Options menu. The default value is off and when this is off, only minimal logging occurs. When this is on, normal logging occurs (including logging the PakBus password).
Device Configuration Utility Enhancement - Added support for new functionality in the CWS900 implemented with version 2 of the CWS900 operating system.
Device Configuration Utility Bug Fix - The AL200 Slot Offset setting will now be interpreted as an unsigned four byte integer rather than as an unsigned two byte integer.
Device Configuration Utility Bug Fix - Fixed a bug in the settings editor panel where a poll attempt could take place after a session failure. This could lead to a crash due to an unhandled exception.
Device Configuration Utility Bug Fix - Made the code that checks the length of the telnet password conditional on that setting being reported. This addresses an issue where a special version of the OS didn't support the deployment panel.
Device Configuration Utility Bug Fix - Added code in the handler for command completion that will check to make sure that the transaction queue is not empty before handling the command outcome. This addresses a bug that could lead to a crash when power was pulled on the TX320 while polling transactions were under way.
Device Configuration Utility Bug Fix - Fixed a bug where the NL2xx deployment panel was attempting to unconditionally poll the IPv6 address regardless of whether the device reported the setting. This could lead to an unhandled exception when connecting to an NL200 with an older OS.
Device Configuration Utility Bug Fix - Added code to stop automatic updates of settings such as IPv6 status when settings are changed in the NL2xx deployment panel.
Device Configuration Utility Bug Fix - Fixed a bug where the settings manager component was returning true to the query of whether settings needed to be committed when there was a cancel or commit operation under way. The result was that DevConfig would post a modal dialogue confirming close if the user tried to close the application while a cancel or commit operation was under way and could result in an unhandled exception.
Device Configuration Utility Bug Fix - Fixed a bug in the RF430 deployment where, when settings were loaded from the radio, the radio address control was initialized with the value of the network address.
Device Configuration Utility Bug Fix - Changed the code that compares formatted setting values in the configuration summary comparison dialogue so that the comparison is performed in a case-sensitive fashion.
Device Configuration Utility Bug Fix - Increased the maximum security code (when connecting) from 65535 to 99999.
Device Configuration Utility Bug Fix - Changed the behavior of the "Edit .csipasswd File" button in the deployment panel for the CR1000, CR800, and CR3000 so that the value of the hide check box is preserved in the application configuration and restored when the dialog is created afresh.
Device Configuration Utility Bug Fix - Fixed a bug where a *.a43 pattern was used to search for SDM-SIO1 instead of *.hex
Device Configuration Utility Bug Fix - Fixed copy and paste.
Device Configuration Utility Bug Fix - Fixed a bug with the PakBus routes setting where the port number was not large enough to handle all of the values that the datalogger could use.
Device Configuration Utility Bug Fix - Now correctly report the European variant of the serial number.
Server Enhancement - Added support for the CRVW and CRS500 datalogger types.
Server Enhancement - Added code in the serial port thread so that, if the simplified I/O is enabled, the thread will use a timer that will get reset whenever data is transmitted or received. If this timer expires, the thread will call SetCommState() in an attempt to force communication over a USB serial port in order to test if the driver connection is still valid.
Server Enhancement - Added support for an optional parameter to the device files enumerate command message that will allow the client to specify a pattern that will be used by BMP5 dataloggers to restrict the set of files that are reported.
Server Enhancement - Implemented the device force link offline transaction.
Server Enhancement - Changed the BMP5 implementation of the device set variable transaction so that it recognizes when the datalogger sends the response code indicating that it needs to reboot. The server will now shut down the link and wait for the specified amount of time before reporting the outcome and launching the poll.
Server Enhancement - Added a new coralib function, cora_on_device_change(), that can be called to inform the server that a potential device remove device has been detected. Added code in the serial port class and its associated provider that will conduct a test to determine whether the serial port handle is still valid as a result of that method. Doing this gives the server a chance to detect USB serial port failures more reliably.
Server Enhancement - Changed the behavior of the BMP5 file control command so that, if the original command specified that the data should be left in the datalogger tables, the server will preserve the data in its own cache table as well. This should provide a means to change the program without losing data from the cache.
Server Enhancement - Changed the parent/child configuration rules to allow a PakBusPortHD device type to be added as a child to an MD9 Passive device type.
Server Enhancement - Added IPv6 support.
Server Enhancement - Changed the code that parses table names, column names, unit strings, and process strings for BMP3 and BMP5 dataloggers so that these strings are assumed to be encoded as utf-8 rather than using the local code page. If these strings fail to convert as UTF-8, the local code page will be used to convert the strings to Unicode.
Server Enhancement - Added a timer to delay the automatic retrieval of table definitions by fifteen seconds
Server Enhancement - Added support for the new option for the server to send the "extended" version of the data broker data advise start acknowledgement message. This extended version allows whole arrays to be described with one entry instead of an entry for each array element. This is to support increased efficiency when dealing with large data records.
Server Enhancement - Added support for PakBus Encryption (AES-128).
Server Enhancement - Changed the device file enumeration transaction so that it can send a longFileSize attribute as well as a fileSize attribute. This change was made to support large (> 2 GB) file system capacities on the datalogger.
Server Enhancement - Added a code in the device file control transaction implementation to deal with the new compile, pause, and mark tables as full control option that is available for the CR1000 and cousins. This is a mechanism to allow recovery of data that has been lost on the datalogger after a power loss (the user forgot to set the run on power up bit) or after the user inadvertently sent a program to the datalogger.
Server Enhancement - Changed the BMP5 get compile results and get table definitions transactions to alter the compile results with a warning if there is a program running but there is no power up program running
Server Enhancement - Changed functions and classes that deal with file names and directory names so that they assume the use of Unicode encoding.
Server Enhancement - xtended the time that the PakBus/TCP Server will wait on a new connection before hanging it up from five seconds to forty seconds. Also added code so that this device will broadcast a hello request on new connections if no activity has occurred within five seconds of the initial connection.
Server Enhancement - dded a transaction log message that gets posted each time that the next time to poll gets calculated.
Server Bug Fix - Changed the BMP1 operation/transaction relation so that the on_message_being_sent() operation method has the ability to prevent the message from being sent by its return value. This should prevent the BMP5 tunnel carrier operation from sending an empty message when the router has nothing to send.
Server Bug Fix - Fixed a bug in the code that unregisters a static route where we could use the wrong address to access the child list under certain configurations. This resulted in an unhandled exception that forced the server to reset.
Server Bug Fix - Added an optional flag to the device startUp() method so that setting changed flags will be cleared only if that flag is set. Changed the rename and move network map modifiers so that this flag is not set when the newly renamed or moved devices are started. This will allow any pending changes to be written when the device configuration is written
Server Bug Fix - Added code for the BMP1 table poll operation that will prevent the server from sending a hole collection command to the datalogger that is larger than the logger can handle. (This was already being done for the hole collection operation but was not for the table polling version.)
Server Bug Fix - Fixed a bug that could crash the server when multiple set value commands were queued for a mixed-array datalogger while the datalogger was in an off-line state. This could set up the conditions where an infinite recursion took place until the program stack was exhausted and the server crashed.
Server Bug Fix - Modified the code in the cache manager thread that adds records for a table so that older records will be eliminated if a set of records is larger than the size of the cache table. Failure to do this could result in inconsistent information for table blocks because too few records were "released".
Server Bug Fix - Fixed a bug that could crash the server if it was trying to open the link on a TCP serial port and the address look-up failed for the specified address.
Server Bug Fix - Fixed a bug where, if an exception was thrown when an incoming TCP messaging connection was handled, that exception would wind up crashing the LoggerNet server.
Server Bug Fix - Added code to handle the case when a communication error is reported by another operation in order to ensure that the logger lock was released.
Server Bug Fix - Added code to ensure that any reports associated with a device are removed when that device gets shut down. Failure to do this could lead to a crash if the device was deleted after being shut down
Server Bug Fix - Fixed a bug in the shut down code where the device was removed from the network map structure before its shutdown() method was called. On some networks, this could lead the server to throw an unhandled exception when it was being shut down.