CR300 Series OS 4
Updated: 17-11-2016

  1. (WARNING) Upgrading the Operating System could reset all the CR300’s settings back to factory defaults. Sending this Operating System remotely can be done but is not recommended. To restore settings after the update, it is recommended that a backup be made of the current logger settings or take programmatic measures to ensure your settings can be restored. This can be done using Device Configuration Utility’s (DevConfig) backup utility or the CRBasic instruction SetSetting(). Watch the Video Tutorial: Sending an OS to a Local Datalogger. to learn how to use the DevConfig backup utility.
  2. (WARNING) The only TCP/IP instructions supported are DNP3, ModBus TCP/IP, PakBus TCP/IP, PPP, NetworkTimeProtocol(), TCPOpen(), and TCPClose(). Other TCP/IP instructions exist, but are in beta. Use at your own risk.
  3. Fixed a PakBus/IP memory leak.
  4. Fixed a communications memory leak when using terminal commands.
  5. Updated the TCP/IP Memory configuration.
  6. Fixed TCP/IP memory alignment hard fault.
  7. Fixed an issue that caused Telnet to interrupt communications with other communications.
  8. Fixed a watchdog issue that corrupted the file system when creating a watchdog.
  9. Fixed ppp_close() to not executed a call back function that has not yet been initialized. This can happen if PPP is opened but the program closes PPP before the call back function is initialized.
  10. Fixed an issue that caused errant "Could not find DataTable" compile errors.
  11. Fixed the PakBus hello that did not get sent when responding to a beacon with TCP/IP.
  12. Fixed a pointer reference issue when using Table.Timestamp.
  13. Fixed default channel mask for radio versions.
  14. Adjusted low temperature clock compensation.
  15. Fixed an issue that caused a communications memory watchdog when using the radio.
  16. Updated watchdog file to use an alternate memory source if communications memory is not available.
  17. Added resource checking to the PPP timeout.
  18. Fixed the ArrayLength() instruction.
  19. Updated the CRBasic compiler and parser.
  20. Fixed a DHCP issue that could cause the DHCP to fail after a network loss.
  21. UDP datagrams are now limited to 10 packets at a time.
  22. Setting Status.FullMemReset to a value of 98765 will format CPU, restore default settings, clear memory, and restart the logger.
  23. Removed extra space between <html> and <head> that was not needed in the Web API html output.
  24. Removed extra <!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\"> that was being added to the html output of WebAPI commands ListFiles, SetValue, BrowseSymbols, and ClockCheck.
  25. Modified the datalogger's web server to have <HEAD> and <TITLE> tags and to report the title with the same message that is sent in the http header. For example, a 404 error now reports "404" not "Found".
  26. Fixed FileOpen() with mode "r" which did not drop carriage return.
  27. Fixed DataTableNames() instruction.
  28. DataEvent() changed so that if the end record count is negated then the start trigger condition will end the after end trigger count down.
  29. Fixed an issue that caused UDPOpen() to incorrectly close the socket.
  30. PPPClose() will now allow the CR300 to drop to a low power state.
  31. Updating from operating system versions 1, 2, and 3, settings will be restored and not lost.
  32. Updated “Out of comms memory” watchdog.
  33. Fixed an issue that caused data table storage to occasionally erase the serial flash twice.
  34. Fixed an issue that caused the default IP Net to enter an infinite loop.
  35. Fixed an issue that caused a table with a DataInterval() with units of a "Mon" to create a new record every time a call table was issued.
  36. Fixed GetVariables() instruction to allow a variable index on the destination.
  37. Fixed an issue that caused the number of TLS buffers calculated to be double what was required by the program.
  38. Fixed an issue that caused Modbus packets with 0xBD to be processed as PakBus.
  39. ETsz() instruction now formats the units MJ/m² in UTF-8.
  40. PeriodAvg() timeout did not always result in a NAN. (Destination results in a negative value that should be a NAN.)
  41. PeriodAvg() compile error added. "NumCycles must be greater than 1."
  42. USB error recovery issue resolved.
  43. Fixed Modbus receive that could fail if the Modbus packet was broken apart.
  44. Updated serial flash wakeup from sleep.
  45. Fixed an issue that caused an extra 5mA current draw on devices with 128MB serial flash.
  46. Fixed an issue that could cause PakBus data collection to return an incorrect number of records, which would cause data collection errors and failures.
  47. Fixed an issue that caused HTTP POST to be incorrectly processed as an HTTP PUT.
  48. Fixed an issue that caused communication through GOES instructions to fail.