GRANITE 6 OS 3.00
Updated: 12-09-2024

  1. (New Feature) CRITICAL - The data logger's UID (unique identifier) is now utilized for enhancing security. a) When Factory Defaults are applied: i) PakBus Encryption key is assigned to the UID. ii) An HTTP user account is created (user: admin, password: UID). iii) WiFi defaults to “Create a Network” mode with the password set to the UID. iv) The FTP service is disabled, and the password is set to the UID. b) If your device does not have a UID the above changes will not apply. c) The UID is set during the manufacturing process. If your device does not have a UID you may obtain one by contacting Campbell Scientific.
  2. (New Feature) Added "USB Port Not Trusted" setting. The default is '0' (Trusted), allowing connections on the USB port without requiring PakBus encryption.
  3. (New Feature) Added "USB Disable" setting. Default is '0' (USB port active). Set to '1' (Disable) to deactivate the port, which will take effect after a datalogger reboot.
  4. (New Feature) Added support for the CR1000Xe.
  5. (New Feature) Added the ability for "SFTPPrivateKey" and "SFTPPublicKey" to be set with the CRBasic instruction SetSetting().
  6. (New Feature) Added an optional parameter "StdDevType" to StdDevRun(). See CRBasic help for details.
  7. (New Feature) Added the ability to initialize an array with all the same values when declared. For example, Public array(50) as Boolean = True, or Public array(50) = 10.
  8. (New Feature) Added two additional communication port configurations for SerialOpen(). a) Option 6 RS-485 Tx Only - In this configuration the transceiver is left on so the A(-) and B(+) idle in a marking state (logical '1'). b) Option 7 RS-422 - This configuration is full-duplex and the transceiver for the transmit pair is left on. The transmit pair A(-) and B(+) idle in a marking state (logical '1').
  9. (Major) Updated the LWIP stack.
  10. (Major) Fixed a condition when a watchdog timer IP Panic pbuf_free: p->ref > 0 triggered.
  11. (Major) Fixed a ComRS232-specific serial data overrun issue that manifested during intense PPP sessions.
  12. (Major) Fixed an intermittent watchdog that could be generated when connecting to an On-and-off MQTT broker.
  13. (Major) MQTT tasks now detect an unopened TCP/IP socket and initiate primary retries immediately, without waiting for the keep-alive timeout to expire.
  14. (Minor) Fixed an uncommon watchdog event triggered when an attached Volt108/116 has intermittent power.
  15. (Minor) Resolved a potential memory allocation issue on the Miro SD card that could arise when the "Delete CardOut files if CardOut data table mismatch" setting is enabled.
  16. (Minor) Addressed communication issues with the SDM-SIO1A/SIO4/SIO2R, resolving the associated flush events that affected the adjacent channel's input and output buffers.
  17. (Minor) Resolved a compile error that occurred when using SemaphoreGet(4).
  18. (Minor) Fixed an issue where an unintended null byte was being appended to the payload message in MQTTPublish().
  19. (Minor) Fixed the terminal watch for outbound HTTP traffic in the IPTrace > HTTP option.
  20. (Minor) Fixed an erroneous ApplyAndRestartSequence CRBasic compile error.
  21. (Minor) Added a compiler check for out-of-bounds errors in aliased array elements used during measurement repetitions.
  22. (Minor) Resolved the issue allowing the publish MQTT statusInfo topic to be disabled.
  23. (Minor) Fixed a problem where the MQTT publishing rate might slow down because of timeouts waiting for an ACK.
  24. (Minor) Updated the syntax for accessing DataTable structures using FieldNames(): TableName.FieldName_StructureMemberName.