Firmware update

This section documents how to update the device firmware.

The device supports USB Device-Firmware-Upgrade (DFU) allowing the device to be updated when new firmwares become available.


Update procedure

  1. Connect the CL2000 to the PC in DFU mode, see DFU mode

  2. Ensure that the DFU driver is installed, see DFU USB driver

  3. Download and unzip firmware update tool and device firmware file

  4. Move the firmware.bin to the directory containing the firmware update tool (dfuprog.exe)

  5. Run firmware_update.bat to perform the update

  6. The device now starts the new firmware and enters MSD mode (as the USB is connected). Make sure to safely eject the MSD safely (see here), before disconnecting the USB cable.

Note

The firmware version can be verified by inspecting a log file header generated after the firmware update.


Firmware update tool

Device-Firmware-Update (DFU) tool (.zip)

Note

The DFU tool is a available as a Windows binary only


DFU USB driver

Windows:

Device-Firmware-Update (DFU) driver (.zip)

  1. Unzip the driver package

  2. Connect the CL2000 in DFU mode

  3. Go to Device Manager

  4. Locate the device (Stellaris Device Firmware Upgrade)

  5. Right-click and select install/update

  6. Browse to the directory containing the driver (from step 1)


Firmware Files


Changelog

# Change Log
All notable changes to CLX000 firmware will be documented in this file.
Note that changes listed in the "Unreleased" section have not yet been released.

## [Unreleased]
-

## [5.86] - 2021-05-31

### Changed
- Configuration revision increased to 15

### Added
- Support for hardware revision 8.2X
- Transmit messages can now be disabled (without removing them) using the "transmitEnb" field

## [5.85] - 2021-05-31
### Added
- Support for tranmission of CAN-bus messages via the USB interface

## [5.84] - 2020-12-22
### Added
- Support for hardware revision 8.1X

## [5.83] - 2020-02-24
### Fixed
- Creation of empty files when SD-card almost full fixed

## [5.82] - 2020-02-19
### Changed
- Re-enters bus after timeout in case of busoff
- Retries write to SD-card in case of card errors

### Removed
- Lost field (optional) in log file removed

## [5.81] - 2020-01-28
### Fixed
- CL3000 SD-card stability

## [5.79] - 2019-04-26
### Fixed
- Cyclic logging stability improvement

## [5.78] - 2019-03-14
### Changed
- Minor internal change used in production only

## [5.77] - 2018-10-16
### Fixed
- Missing "space-left" in heartbeat signal fixed

## [5.76] - 2018-09-25
### Added
- Support for hardware revision 7.10 and 7.20

## [5.75] - 2018-08-03
### Changed
- Improved burst message log performance

## [5.74] - 2018-15-06
### Added
- CL3000: Internal support for WiFi controller firmware version 4.00.03

### Changed
- CL3000: WiFi controller firmware version added to log file header

## [5.71] - 2018-23-05
### Fixed
- Compatibility issue with 6.xx hardware

## [5.70] - 2018-16-04
### Added
- Time based log file split feature
- Added cyclic logging data limit feature

### Changed
- "fileSplitLimit" configuration field changed to "fileSplitSize"
- Changed number of virtual channels from 4 to 8
- Changed the number of downsample IDs for each virtual channel from 25 to 10
- Minor change to green LED behaviour
- Log file header device type names changed to CL1000, CL2000 and CL3000

## [5.61] - 2018-03-22
### Added
- CL3000, RTC auto-sync
- Improved FTP push long-term stability

### Changed
- Default file split size changed to 20 MB (from 100 MB)

## [5.60] - 2018-02-01
### Added
- Possibility to hide WiFi, http access and FTP passwords in configuration file

### Changed
- Configuration file revision 13
- Logger ID string max length changed to 15 chars (from 10)
- FTP password max length changed to 24 chars (from 32)
- Minor changes to CL3000 web page text

## [5.51] - 2017-12-10
### Fixed
- Improved FTP upload stability

## [5.50] - 2017-11-19
### Added
- CL3000 web interface improved
- Webinterface force-split-log-file-now button added
- Webinterface allows user to delete log files on device
- Experimental: Automatic push of log files to remote server using FTP

## [5.40] - 2017-08-27
### Added
- Support for CL3000 functionality

## [5.33] - 2017-08-11
### Fixed
- Logger sometimes not booting properly when connected to a bus with high load

## [5.32] - 2017-06-30
### Changed
- Improved serial interface speed

## [5.31] - 2017-05-08
### Changed
- Card size scan during boot now indicated by red LED on
- Device will no longer change state to logging mode when MSD is disconnected

### Fixed
- Faster shutdown when USB or DSUB connector disconnects

## [5.30] - 2017-04-19
### Added
- Transmit messages support (up to 20 configurable transmit messages)
- Improved serial interface to bus monitoring from PC
- Layered serial interface protocol inspired by HDLC
- Unique sequential file name numbering, across power cycles
- Unique log session numbering in header, across power cycles
- Introduction of file split number in header
- Full log file header added to all split log files
- Cyclic logging setting added to header
- Two new message types added, transmit msg standard (7) and transmit msg extended (8)
- Hardware revision added to header

### Changed
- New log file name format, LOG0001.txt -> 0000001.txt
- Config field "fileMaxSize" changed name to "fileSplitLimit"
- Log file message type field name changed from "S(0)/E(1)" to "Type"
- "Device.txt" file no longer created by logger. Information moved to log file header
- Bytes in data log field no longer separated by the value separator, e.g. 01;02;03 -> 010203
- Line entry line break changed from carriage return + line feed to just line feed

### Removed
- Log field "sequence number" removed
- Possibility to write ID and data as decimal values removed (now always in hex)

### Fixed
- Improved power loss detection

## [5.20] - 2016-12-03
### Added
- Added PCB version 6.00 support. 

## [5.13] - 2016-09-03
### Fixed
- The milisecond counter can sometimes count to 1000 instead of max 999

## [5.12] - 2016-08-06
### Fixed
- Bug which sometimes collapsed the logfile to 0kB.

## [5.11] - 2016-07-31
### Changed
- The message timestamp is no longer relative to the time in log file header, but now absolute.
- The timestamp on hardware without RTC capabilities start from 20000101T000000000

### Added
- More log file header information. Now contains timestamp formatting, logger ID and more.
- Timestamp formatting settings added to configuration. Allows customizable timestamp detail level and separators. 
- Logger ID added to configuration. The logger ID will be added to the log file header such that log files from different loggers can be distinguished.

## [5.10] - 2016-05-28
### Fixed
- Bug which sometimes had the device not properly mount as mass storage device
- Bug which could result in the configuration file not be properly parser (lines with long comments)

### Added
- Possibility to select base of data in log file (decimal or hexadecimal)
- Possibility to select more delimiters to be used in the log file
- Possibility to set default logging state to enabled / disabled in configuration
- Introduction of heartbeat signal with logging enable / disable state, the device time and remaining space available
- Improved SD-card read/write performance
- Control message implemented, which can be used to change the logging state between enable and disable
- New LED indication introduced. Used when memory card could not be properly initialised.

### Changed
- Message type field (standard/extended) changed from characters S/E to numbers 0/1 to simplify import of data

## [5.00] - 2016-03-12
### Added
- Support for real-time-clock on CL2000 hardware
- Wall-time timestamp added to log file header if real time clock is available
- Wall-time timestamp added to CAN-bus monitoring using USB serial connection
- Wall-time timestamp added to log file file-information
- Default CONFIG.INI extended with RTC section used to configure the time

## [4.13] - 2016-02-24
### Added
- Support for PCB version 5. 

## [4.12] - 2016-01-03
### Fixed
- A bug which sometimes had the device reject the configuration file fixed.

## [4.11] - 2016-01-01
### Added
- Down-sampling functionality
- When CAN-bus bit-rate auto-detection is enabled, the detected bit-rate is written to the log file header.

### Changed
- Configuration revision changed to 6
- Down sampling prescaler added to configuration file 

## [4.10] - 2015-11-06
### Added
- Support of cyclic data logging mode - oldest log file is removed when file system is full.

### Changed
- Configuration file to support configuration of cyclic data logging mode
- Configuration revision changed to 5

## [4.01] - 2015-10-05
### Fixed
- Now correctly detects hardware revision 4
- Typos in configuration file (valueSeperator -> valueSeparator, dataLenght -> dataLength )

## [4.00] - 2015-08-12
### Added
- Configuration to allow time stamps on messages (1 ms resolution)

### Changed
- The firmware revision number format has been changed from X.Y.Z to X.YY
- The green LED now flashes in USB MSD mode to indicate that the device is in this mode.
- The file size limit has been relaxed to be an approximate limit to improve write performance.
- The USB MSD device description has been updated.
- Log file header is written only to the first log file in a sequence (first log file after device power on)

### Fixed
- Improved shutdown strategy to better secure that every message is successfully committed to the SD-card.

### Removed
- The CLI has been removed and replaced with a device info file stored on the SD-card.
- The "to terminal" configuration has been removed. Now the messages which are written to the log are also printed to the terminal

## [3.2.1] - 2015-07-12
### Fixed
- A problem with the file system on the SD-card sometimes broke when the device was mounted as a mass storage device on Windows.