LoggerNet Patch 4.4
Updated: 03-11-2016

  1. Setup Screen Enhancement - Added support for CR300 Series dataloggers.
  2. Setup Screen Enhancement - Added the UDP Search dialog, which is accessible by the UDP Search button next to the IP Port field on the IPPort hardware tab.
  3. Setup Screen Enhancement - Added the "Install USB Driver..." button to the com port tab. This button now opens the new Install USB Driver dialog which uses the list of drivers available to install from DevConfig giving the user the ability to select and install a driver from the Setup Screen.
  4. Connect Screen Enhancement - Added support for CR300 Series dataloggers.
  5. Connect Screen Bug Fix - Fixed a problem where the Connect button would have its event called after the user manually set the time of the clock.
  6. Connect Screen Bug Fix - Changed how the parent window got assigned for the options dialog of the data displays. This fixed a problem where the options dialog box could disappear.
  7. Connect Screen Bug Fix - Fixed a problem displaying three dimensional character arrays that could lead to variables not updating in the Table Monitor.
  8. Connect Screen Bug Fix - Removed the meta data from the bytes used to calculate the progress and speed of a custom collection.
  9. Connect Screen Bug Fix - Changed the attempt to get the compile results to wait until after the table definitions are finished updating. This prevents a problem where the attempt to get them fails due to the status table being deleted for the CR3000.
  10. Connect Screen Bug Fix - Fixed a problem where certain types of arrays were not being expanded properly.
  11. Connect Screen Bug Fix - Now ignoring the clock check failure due to communications becoming disabled. This prevents the Connect screen from going to the disconnected state when the user sends a program to the station behind its back.
  12. Connect Screen Bug Fix - Fixed a bug where the run options would be applied even if the option was disabled.
  13. Connect Screen Bug Fix - Fixed a bug where the tally of expected records was not being calculated properly.
  14. Connect Screen Bug Fix - Added a check and indicator to inform the user when not all of the expected records have been collected.
  15. Connect Screen Bug Fix - Fixed a problem with alarm sound.
  16. Task Master Enhancement - Forced an update of all of the tasks when the user goes to the status tab.
  17. Task Master Enhancement - Added a warning to the user if they set up a task that does not do anything.
  18. Task Master Bug Fix - Prevented the user from being able to go to the status tab if there are changes pending.
  19. Task Master Bug Fix - Fixed the enabled state of the controls when the server crashes.
  20. Short Cut Enhancement - Added support for the CR300 Series dataloggers, CDM-A108, and CDM-A116.
  21. Short Cut Enhancement - Added new or updated sensor files for 05108-45 Wind Speed & Direction Sensor, CS512 Dissolved Oxygen Probe (a CSL version, there was already a CSI version), LI190R Quantum Sensor, LI200R Pyranometer, LI200RX Pyranometer, WXT520 Weather Transmitter, Sunshine Hours (for CRBasic dataloggers, Edlog dataloggers already had it).
  22. CRBasic Editor Enhancement - Added support for the CR300.
  23. CRBasic Editor Enhancement - Added ability to display line numbers.
  24. CRBasic Editor Enhancement - Added a new start page that by default is displayed when the CRBasic Editor is opened.
  25. CRBasic Editor Enhancement - Added support for the -u precompiler command line option which checks for unused variables and subroutines.
  26. CRBasic Editor Enhancement - Made some changes that allow a DLD file to be automatically associated with a datalogger extension on open. CRBasic determines the datalogger extension based on the "meta" information found on the first line of the program.
  27. CRBasic Editor Enhancement - Made several improvements to the Print and PrintLines functions in terms of efficiency, error handling, and handling of line numbers.
  28. CRBasic Editor Enhancement - Added a checkbox in the Font selection dialog that allows the user to filter monospaced fonts.
  29. CRBasic Editor Bug Fix - Fixed a problem where an instruction on the same line as an if statement would not work properly with the right click menu to edit instruction.
  30. CRBasic Editor Bug Fix - Fixed a bug so that opening files with bookmarks does not 'modify' the program and thus prompt for a save if nothing else is changed.
  31. CRBasic Editor Bug Fix - Added code that allows us to force an insert instead of an overwrite in certain cases (e.g., the tab key is pressed in overwrite mode). This behavior is consistent with other mainstream editors.
  32. CRBasic Editor Bug Fix - Fixed an issue where an Undo would not restore characters that had been overwritten.
  33. CRBasic Editor Bug Fix - Limited menu item captions of functions/subroutines to 120 characters.
  34. CRBasic Editor Bug Fix - Reworked Find/Replace/Replace All code to solve problems with "match whole word only".
  35. CRBasic Editor Bug Fix - Fixed some Replace Variable (F10) and picklist issues that affected single and multi-line instructions.
  36. CRBasic Editor Bug Fix - Major line parsing and instruction parsing changes/improvements.
  37. CRBasic Editor Bug Fix - Fixed and issue in the instruction dialog, where pressing the Next button did not always detect and skip lines with comments or lines that contained only whitespace.
  38. RTMC Bug Fix - Changed the javascript ValueAtTime() function so that, if no values are removed but the range of values timestamps is greater than or equal to specified range, the first value will be returned.
  39. RTMC Bug Fix - Changed the code that calculates the zero point for bar charts so that a very small value (1E-38) is used rather than zero in order to work with logarithmic plots.
  40. RTMC Bug Fix - Added code to that which generates labels and the scale so that, if the scale is logarithmic, the min and max values are rounded while being assigned to the converted log values. Failure to do this was causing small errors to creep in for base 10 logs that could result in expected labels not appearing.
  41. RTMC Bug Fix - Changed the AvgRunOverTimeWithReset(), MaxEunOverTimeWithReset(), MinRunOverTimeWithReset(), and TotalOverTimeWithReset() functions so that the current time is adjusted back rather than adjusting back the last time. This addresses a customer reported problem where the total was resetting one interval sooner than expected.
  42. Network Planner Enhancement - Added support for the CR300, RF451, CR6-WIFI, CR6-RF451, RavenXTV, LS300G, RF407, RF412, and RF422.
  43. Network Planner Enhancement - Added support for using the RS232 port on the CR6 CPI connector.
  44. Network Planner Enhancement - Added a search control to the device palette.
  45. Network Planner Enhancement - Added code that will provide a button in the property sheet shown by the LoggerNet device type for USB serial ports that will allow the user to install the USB driver for the associated slave device.
  46. Network Planner Enhancement - Eliminated the RF450 Network "Use Repeater Frequency" property and now automatically generate this setting based upon the network topology.
  47. Network Planner Enhancement - Changed the code that generates settings for the CRVW and RF450/RF451 so that these settings are properly generated.
  48. Network Planner Bug Fix - Changed the way that bridged TCP connections work with the CR1000, CR3000, and CR800 dataloggers. Rather than having the bridged TCP link going through the NL200 or NL240, the link will now come from the datalogger's IP stack using a new IP interface (this is the way that the CR6 already does this).
  49. Network Planner Bug Fix - Fixed a bug where attempting to generate settings for a CR800 with a bridged NL2xx device was causing an exception to be thrown.
  50. Network Planner Bug Fix - Fixed a bug in the code that generates settings for the RF401A where the active interface was not set to USB if that was the interface selected.
  51. Network Planner Bug Fix - Fixed a bug where the wifi configuration generation for the NL240 was being stored as a string but, instead of using the choice values, the choice names were being stored.
  52. Device Configuration Utility Enhancement - Added support for the CR300, A100, RF451, CR6-WIFI, CR6-RF451, RF407, SDM-SIO1A, SDM-SIO4A, SoilProf3, TX321, and CDM-A100 Series.
  53. Device Configuration Utility Enhancement - Changed the settings editor panel so that a search control is used to help locate settings rather than the combo box previously used.
  54. Device Configuration Utility Enhancement - Changed the datalogger restore wizard by adding a page that will allow the user to select the files that will be restored.
  55. Device Configuration Utility Enhancement - Added a search control immediately above the device types list. This control will allow the user to restrict the devices shown to those whose description matches a subset of what the user typed.
  56. Device Configuration Utility Enhancement - Added support for a fixed 76800 baud rate on all CR1000, CR8xx, CR3000, and CR6 serial ports.
  57. Device Configuration Utility Bug Fix - Fixed a bug in the constants customization panel where, if the configuration had more than one file and a program file had no constants but it still needed to be saved, DevConfig would attempt to compile the program while it was still trying to save the other files.
  58. Device Configuration Utility Bug Fix - Fixed a bug in the serial number view for the CD295 where the apply button had no effect because of the code that checked for needing to commit did not recognize when the serial number had changed.
  59. Device Configuration Utility Bug Fix - Fixed a problem where the SC115 device description called for the wrong name for the sc115_msd driver resulting in this driver not being signed.
  60. CoraScript Enhancement - Added support for the CR300
  61. CoraScript Enhancement - Added options to the connect command to connect via a messaging proxy.
  62. CoraScript Enhancement - Added a new command, udp-discover, that can be used to have the LoggerNet server scan its local area network for TCP based devices.
  63. CoraScript Enhancement - Changed the get-task-setting, list-task-settings, set-task-setting, set-task-settings, trigger-task, and remove-task commands so that the user can now specify the name of the task or, optionally, the task identifier. This will allow the scripting of being able to add and configure tasks.
  64. CoraScript Enhancement - Added a new value, at-most-interval, to the tableCollectMode collect area setting as well as a new collect area setting, tableMaxIntervalToPoll, that will specify a maximum time interval to poll.
  65. CoraScript Enhancement - Added a command, validate-snapshot, that can be used to validate a snapshot file without having to send it to the LoggerNet server.
  66. CoraScript Bug Fix - Fixed a bug where the values specified for a uint4 set were not being parsed.
  67. Server Enhancement - Added support for the CR300.
  68. Server Enhancement - Changed the BMP5 set variable operation so that it can handle double data types.
  69. Server Enhancement - Added support for the new LgrNet UDP Discover transaction.
  70. Server Enhancement - Changed the connection rules so that a generic modem can be created as a child to a pooled serial port or a pooled terminal server device.
  71. Server Enhancement - Added support for a new value for the tableCollectMode collect area setting that will allow the client to specify that a limited set of records should be selected based upon a time interval relative to the newest record. This collect mode is only supported for some BMP5 dataloggers (not the CR200) and BMP1 dataloggers.
  72. Server Enhancement - Changed security policy so that security can be enabled when the server is configured for standard LoggerNet. In this mode, only one account can be added and security will not be enforced for local connections.
  73. Server Bug Fix - Fixed a problem in the base class for classic datalogger commands where, if the command failed because of an invalid echo and the server immediately started on another command (say an failed "F" command followed by a "G" command), there server would make no attempt to resynchronize the link with the datalogger. This would end up sending the characters for the subsequent command as if they were a part of the preceding command.
  74. Server Bug Fix - Fixed a bug in the interpretation of the classic logger ports byte reported through the K command where the code was using a multiply operator rather than a mask operator when picking out the value for the fourth port. The result of this error was that the fourth port would be reported high if any other port was high.
  75. Server Bug Fix - Fixed a bug where a data broker could attempt to mount two tables with the same name and, when this happened, one table status would be marked as needing to mount. This was caused by a bug in the unicode string comparison function where, if doing a case insensitive comparison, the conversion to upper case would silently fail for non-ascii characters.
  76. Server Bug Fix - Fixed a bug where the post_kill_event() method for classic datalogger commands where the notification could be posted multiple times for the same failure. A flag is now used to track whether the event has already been posted. This addresses a problem reported by a customer using an RF-MD9-classic logger link where multiple fault messages were posted for the same failed command. This led to inflation of the error rate and a corresponding decrease in packet size.
  77. Server Bug Fix - Fixed a bug, introduced in LN 4.3, where retries were no longer enabled for the classic datalogger position modem pointer (G) command.
  78. Server Bug Fix - Added code in the BMP5 file synch operation to use a colon to separate the file spec from the drive when it is specified when requesting a directory from the datalogger. This addresses a problem where the datalogger was returning an empty file set when the drive and file name pattern were both specified.
  79. Server Bug Fix - Added code to ensure that the comms provider objet is not accessed without first checking its validity. This may address a problem that a customer is experiencing with crashing the LN Linux server while user serial port pools.
  80. Server Bug Fix - Added code to the exception handler for the code that posts a message when bytes have been read so that the flag is set that will allow future posts if the post fails. This code will now post a message to the object state log. This may address a problem that a customer has encountered while using modem pools on LN/Linux.
  81. Server Bug Fix - Added code to ensure that the flag that prevents sending redundant bytes received posts gets cleared after one second of inactivity and also gets cleared when the port is opened.
  82. Server Bug Fix - Removed code that was posting object state log messages from the root level provider thread. This could lead to corruption in the log queue.
  83. Server Bug Fix - Changed the Posix implementation of the TCP socket so that, when bytes are written to the socket, the MSG_NOSIGNAL flag is specified to keep the sockets layer from crashing the application with an unwanted signal.
  84. Server Bug Fix - Fixed a bug where the overloads in BMP1 and BMP5 table collect areas for the report_hole_added() method no longer had the right signature. The result of this was that the station wouldn't check to see if it needed to collect holes when those holes were detected. This addresses a problem reported by a customer where hole collection was only happening every other time that one way data was received.
  85. Server Bug Fix - Changed the BMP5 implementation of the hole collect operation so that, if the response sent by the datalogger is outside the range expected by the computer, all pending holes will be considered lost and no new holes will be added. Previously, the server was assuming that the entire table could be collected as hole and the end result was that the server could get stuck in a loop where the same records were being collected over and over.
  86. Server Bug Fix - Changed the automated BMP5 hole collection operation so that it will only operate on non-cloned areas. This addresses a bug where hole collection was taking place on a cloned area (set up by the connect screen table monitor) when one way data came in.
  87. Server Bug Fix - Fixed as bug where records using an older table definition could get added to the record cache (used to prevent excess allocation of records). Found this while testing file control immediately followed by a get program stats for a BMP3 datalogger. The result was that the get program stats would fail with a communication error due to an unhandled exception thrown when the native record was copied to a cached record.
  88. Server Bug Fix - Changed the advise cursor for collected order so that, if the start option indicates a relative to newest time stamp or start at date, matching blocks of newer records will be considered even if their time is farther away than other blocks. This addresses a problem found with an XTD table that was filled using data advise. If an advise cursor was started with a backfill and newer matching records were logged before an older block of holes was collected, the newer records would be omitted from the set reported by the cursor. This also affected cloned tables since these also used collected order.
  89. Server Bug Fix - Updated the Debian init scripts for the LNLinux daemons.