Download Firmware Files
Mandatory update steps
Some upgrade steps are mandatory and cannot be skipped. Skipping mandatory update steps can result in unexpected behavior. The mandatory update sequence is illustrated below.
01.07.XX –> 01.08.XX
Warning
The S3 endpoint hostname is now verified against the server certificate common-name
and list of SANs. If the hostname is not found, the connection is rejected. The check is disabled (not relevant) when using an IP-address as endpoint .
01.03.XX –> 01.04.XX
Warning
From 01.04.XX TLS certificates placed as single files in certs_root are no longer supported. Make sure that certificates are migrated to the bundle format prior to performing the update as explained in Section S3 security.
01.02.XX –> 01.03.XX
Warning
From 01.03.XX TLS certificates placed as single files in certs_root are supported but obsolete. It is replaced by loading from a bundle file (for more information refer to S3 security). Support for single-files certificates is removed in the next minor or major update. It is recommended to migrate from single-files certificates to certificate bundle while the device is running firmware 01.03.XX
00.07.XX –> 01.02.XX
Warning
Firmware upgrade from 00.07.XX to 01.02.XX includes a one-time boot migration step. The migration step formats the SD-card resulting in loss of existing log files. The configuration and certificates are copied back to the card after migration
CANedge2 Firmware Files
- Firmware-01.08.03.zip
- Firmware-01.08.01.zip
- Firmware-01.07.05.zip
- Firmware-01.07.03.zip
- Firmware-01.07.02.zip
- Firmware-01.07.01.zip
- Firmware-01.06.04.zip
- Firmware-01.06.03.zip
- Firmware-01.06.02.zip
- Firmware-01.06.01.zip
- Firmware-01.04.02.zip
- Firmware-01.04.01.zip
- Firmware-01.03.01.zip
- Firmware-01.02.08.zip
- Firmware-01.02.06.zip
- Firmware-01.02.05.zip
- Firmware-01.02.04.zip
- Firmware-01.02.03.zip
- Firmware-00.07.05.zip
- Firmware-00.07.04.zip
- Firmware-00.07.03.zip
- Firmware-00.07.02.zip
- Firmware-00.07.01.zip
- Firmware-00.06.02.zip
- Firmware-00.06.01.zip
- Firmware-00.05.01.zip
- Firmware-00.04.04.zip
- Firmware-00.04.03.zip
- Firmware-00.03.01.zip
- Firmware-00.02.05.zip
- Firmware-00.02.04.zip
- Firmware-00.02.03.zip
Changelog
# Change Log
All notable changes to CANedge firmware will be documented in this file.
Types of changes:
- "Added": New features
- "Changed": Changes to existing functionality
- "Deprecated": Soon-to-be removed features
- "Removed": Removed features
- "Fixed": Bug fixes
- "Known issues": Known issues
- "Warning": Warnings
Abbreviations:
- CANedge1: CE1
- CANedge1-GNSS: CE1G
- CANedge2: CE2
- CANedge2-GNSS: CE2G
- CANedge3-GNSS: CE3G
## [Unreleased]
### Fixed
- CE3G: System log entry ("Error (_,186,_)") when network lost changed to "Warning".
## [01.08.03] - 2024-11-07
### Changed
- CE2, CE2G: Clear DNS cache on socket connect failure
## [01.08.02] - 2024-08-27
### Added
- CE3G: Support for hardware extension 00.01 (minor hardware change)
## [01.08.01] - 2024-08-19
### Warning
- CE2, CE2G: TLS certificate validation level increased when using hostname as endpoint (must match server cert. common-name or be in SANs)
### Added
- CE1, CE1G, CE2, CE2G, CE3G: Device run-time restart timer (restart_timer) added to configuration file
- CE1, CE1G, CE2, CE2G, CE3G: Reset-cause information added to device.json file
- CE2, CE2G: Web-server protocol type added
### Changed
- CE1, CE1G, CE2, CE2G, CE3G: System log, default level changed from 0 (disable) to 1 (error)
- CE1, CE1G, CE2, CE2G, CE3G: System log, severity level string added to log
- CE1, CE1G, CE2, CE2G, CE3G: Improved logging performance during creation of new log split files
- CE2, CE2G, CE3G: S3 meta-data `X-Amz-Meta-Timestamp` changed from `YYYYMMDDTHHMMSS` (local time) to `YYYYMMDDTHHMMSSZ` (UTC time)
- CE2, CE2G: WiFi module internal configuration change
- CE2, CE2G, CE3G: S3 response timeout increased to reduce risk of duplicated uploads
- CE1, CE1G, CE2, CE2G, CE3G: Minor adjustments to CAN-FD (BRS) Secondary-Sampling-Point (SSP)
- CE2, CE2G: The device will now sequentially attempt to connect to all found (and known) WiFi SSIDs, instead of stopping at first connection failure
- CE3G: The cellular IMEI is now written to the device.json file regardless of the presence of a SIM card
- CE2, CE2G, CE3G: System log "socket connect error" error code added
- CE2, CE2G: TLS verification of certificate common-name (and SANs) enabled when endpoint is hostname
- CE3G: TLS verification of certificate common-name (and SANs) disabled when endpoint is IP
- CE2, CE2G: Support for simple AP roaming (automatically switches between APs in a multi AP network)
### Fixed
- CE1, CE1G, CE2, CE2G, CE3G: MDF LIN incorrect frame length field
- CE1, CE1G, CE2, CE2G, CE3G: MDF CAN risk of incorrect remote frame
- CE1G, CE2G, CE3G: Periodic missing IMU data
- CE1G, CE2G, CE3G: Angular rate missing
- CE2, CE2G, CE3G: Certificates cleared instead of retained when bundle file removed
- CE2, CE2G, CE3G: Unable to upload to S3 when header field values contain multiple leading / trailing spaces
- CE3G: Rare cases where the GPS module does not boot during startup
### Removed
- CE3G: Static scheduled reboot after 24 hours of runtime removed (replaced by configurable restart_timer field)
### Known issues
- CE2, CE2G, CE3G: Network stability issues when powered for extended periods of time (can be alleviated using the "restart_timer")
- CE3G: Rare slow start up of GPS module
## [01.07.07] - 2023-12-14
### Changed
- CE3G: Scheduled reboot after 24 hours of runtime to alleviate known cellular degradation issue
### Known issues
- CE1G: CE2G, CE3G, periodic missing IMU data
- CE3G: Network stability gradually degrades when powered for extended periods of time
- CE3G: Rare cases where the GPS module does not boot during startup
## [01.07.06] - 2023-11-14
### Changed
- CE3G: Scheduled midnight reboot to alleviate known cellular degradation issue
### Fixed
- CE1: Firmware.bin file not deleted after firmware update completion
### Known issues
- CE1G: CE2G, CE3G, periodic missing IMU data
- CE3G: Network stability gradually degrades when powered for extended periods of time
- CE3G: Rare cases where the GPS module does not boot during startup
## [01.07.05] - 2023-10-10
### Changed
- Session counter value moved from file on SD-card (`meta/meta_log.json`) to internal memory
- Log files based on time splits are now closed upon timeout instead of upon first message in next log file
- Header format version for generic files is now 0x01, was 0x00
- Checksum added to compressed files (header version changed to 0x01)
- Files with the TMP extension will be renamed to ERR upon detection of unclean filesystem ejection
- S3, improved handling of device vs server time
- CE2, minor changes to WiFi power savings mode
### Fixed
- CAN messages with a DLC larger than 8 but no FD flag could reset the device
- GNSS, do not update if new firmware same as current
- CE3G, improved stability of RTC net sync
### Added
- CE3G, syslog.txt info improved for troubleshooting SIM card detection/reading
- The device attempts to auto-repair the file system if it becomes corrupted (e.g. after unclean ejection from PC)
### Known issues
- CE1, firmware.bin file not deleted after firmware update completion
- CE1G: CE2G, CE3G, periodic missing IMU data
- CE3G: Network stability gradually degrades when powered for extended periods of time
- CE3G: Rare cases where the GPS module does not boot during startup
## [01.07.04] - 2023-08-18
### Changed
- CE2, S3 meta-data field "X-Amz-Meta-Ssid" renamed to "X-Amz-Meta-Net"
- CE2, device.json field "certs_server" renamed to "certs_server_sha1"
### Added
- CE3G, IMEI added to device.json
### Fixed
- CE3G, fixed schema for encrypted PIN codes
- Multiple whitespace characters in the network name prevented S3 operations
### Known issues
- CE1, firmware.bin file not deleted after firmware update completion
- CE1G: CE2G, CE3G, periodic missing IMU data
- CE3G: Network stability gradually degrades when powered for extended periods of time
- CE3G: Rare cases where the GPS module does not boot during startup
## [01.07.03] - 2023-05-11
### Changed
- GNSS module updated to FW 2.16
### Added
- Support for GNSS ODO message (distance travelled)
- Optional RTC sync message added to internal CAN channel
### Fixed
- Improved handling of WiFi connection state
- Issue with WiFi channels 12, 13 & 14 fixed
- Issue with WiFi SNTP time sync stability fixed
- Issue with incorrect timestamps for some CAN-bus tx messages fixed
- Issue with loss of frames under high CAN-FD load fixed
- Issue with configuration rejected when more than 10 CAN-internal filters fixed
### Known issues
- CE1, firmware.bin file not deleted after firmware update completion
- CE1G: CE2G, CE3G, periodic missing IMU data
- CE3G: Network stability gradually degrades when powered for extended periods of time
- CE3G: Rare cases where the GPS module does not boot during startup
## [01.07.02] - 2023-02-20
### Fixed
- Issue with GNSS negative alignment angles fixed
- Issue with GNSS output messages timestamps fixed
- Issue with WiFi empty passwords fixed (allowed in schema)
- CAN-internal default extended filter "id_format" value corrected from 0 to 1
- MDF, wrong DLC for remote frames with extended ID
- Configuration schema updated to accept empty WiFi passwords
- Faster timeout when socket closed by server
- Faster timeout when WiFi connection lost
## [01.07.01] - 2022-11-22
### Changed
- CAN-bus control signal changed to use decoded signal values
- CAN-bus control signal can trigger based on messages from any bus
- Number of supported APs changed from 5 to 4 (to be able to support passive scan)
- S3 bucket name max length increased from 20 to 64
- Default configuration CAN-bus filters changed from "mask" to "range"
- Updated WiFi controller driver for better WiFi stability
### Added
- WiFi active and passive scan modes supported
- RTC sync from CAN-bus (internal or external)
- UI Schema added to SD-card
- Support for hardware version 0.3
### Removed
- WiFi RTC sync DHCP fallback option removed
- WiFi channel 12 support removed
### Fixed
- Throttle failed S3 connection attempts
## [01.06.04] - 2022-03-28
### Fixed
- Improved WiFi compatibility
## [01.06.03] - 2022-02-04
### Added
- Show additional SD card information in log and device files
### Fixed
- CAN bit-rate autodetect would fail with some CAN traffic patterns
## [01.06.02] - 2022-01-28
### Changed
- Improve speed to some TLS servers
### Fixed
- If RSSI thresholds were used, the signal strength from the WiFi interface was incorrectly calculated
## [01.06.01] - 2022-01-07
### Added
- Support for logging of CAN error frames:
- Bit-stuffing errors
- CRC errors
- Frame format errors
- Lack of acknowledgement on transmitted frames
- Bit level errors on transmitted frames
- Support for logging of errors on the LIN interfaces:
- Synchronization errors
- Checksum errors
- Frame format errors
- Lack of response for an ID marked as a subscriber message
- Bit level errors on transmitted frames
### Changed
- Certificate bundles stored on S3 sanity checked before being applied
### Fixed
- Issue where the LIN logging could be mis-aligned compared to incoming data
- Support of S3 regions up to 32 character
## [01.04.02] - 2021-03-31
### Warning
- Make sure to migrate single file certificates to bundle before upgrading from 01.03.XX to 01.04.XX
### Changed
- CH1/CH2 activity LEDs now constant off during bit-rate autodetect
- WiFi stability improved
### Fixed
- Issue with spaces in WiFi SSID and password fixed (cf. 01.04.01 known issues)
- Issue with mixed ID filters and/or mix of enabled/disabled filters with prescalers fixed
## [01.04.01] - 2021-01-14
### Warning
- Make sure to migrate single file certificates to bundle before upgrading from 01.03.XX to 01.04.XX
### Added
- LIN support for custom frame lengths
- LIN support for both Classic and Extended checksum formats
- LIN publisher mode added
- LIN transmit data for subscriber and publisher mode
- CAN reception and logging of RTR frames
- CAN transmission of RTR frames
- CAN FD ESI bit included in log file
- Support for open WiFi access points
### Fixed
- Missing CAN-bus retransmissions fixed
- Support for endpoints ending with a slash (e.g. www.abc.com/)
### Changed
- Schema for CAN filters updated, list is nested one level deeper
- Obsolete config and schema files are automatically removed from the SD-card
### Removed
- Single file TLS certificates no longer supported. Single file certificates are automatically removed from the SD-card.
### Known issues
- Cannot connect to WiFi access points with spaces in either SSID or password
## [01.03.01] - 2020-09-17
### Added
- Support for S3 virtual hosted request model
- Support for bundled certificates in a single file
- New entry `certs_server` in device.json to list loaded certs from bundle
- Support for over-the-air update of certificate bundle file
### Changed
- Improved S3 API compatibility, allowing for use with more S3 compatible services, such as Wasabi
- WiFi/S3 up to 60% transfer speed increase on high-latency networks (compared to 01.02.06)
### Fixed
- Format of S3 object meta data field `X-Amz-Meta-Timestamp` (local time) changed from `YYYYMMDDTHHMMSSZ` (UTC time) to `YYYYMMDDTHHMMSS` (local time)
- Fixed data prescaler "prescaler_value" schema rule to allow empty mask
### Deprecated
- Certificates placed as single files in `certs_root`
- List of single certificates `cert_hash` in device (is replaced by list `certs_root`)
## [01.02.08] - 2020-08-20
### Changed
- Improved access point compatibility
## [01.02.06] - 2020-05-19
### Changed
- Max log session count increased from 256 to 1024
## [01.02.05] - 2020-04-14
### Fixed
- Slow device reboot after creation of default configuration file
## [01.02.04] - 2020-04-07
### Changed
- TLS-SNI-01 validation no longer used (compatibility issues with AWS S3 over TLS)
- S3 log file names change from `...[SPLIT_NUMBER].[EXT]` to `...[SPLIT_NUMBER]-[EPOCH_TIME].[EXT]`
- Improved S3 performance on small files
- DNS caching for faster server connection using hostnames
## [01.02.03] - 2020-03-01
### Added
- Optional compression of log files using LZSS based algorithm
- Optional encryption of log files using AES GCM
- Optional S3 log file uploads using signed payloads. Defaults to off
- Device ID added to log file header
- SD-card storage added to log file header
- SD-card storage used added to device.json
- Time and data prescaling options added
- S3 meta data "X-Amz-Meta-Put-Index" added
### Changed
- New log file structure to improve file system performance. Refer to the manual for more details on the new structure
- Upper limit on number of sessions which can be stored on SD-card (to ensure consistent performance)
- Log file extensions now in all upper case (*.mf4 -> *.MF4)
- S3 meta data "X-Amz-Meta-Timestamp" changed from file upload time to file modified time
### Fixed
- Slow logging with potentially missed messages if all received CAN messages are filtered
- First message when using a prescaler different from 1 is not counted
- Logging now continues when space is freed by a log file upload on a full SD-card
- LIN messages on port 2 no longer mixed with port 1
- Shutdown delay introduced to better allow SD-card to finish internal operations
- Fix to ensure that both FAT copies maintained on power loss
- Higher priority to CAN/LIN bus service to improve on message loss
- Maximum number of WiFi access points in rules schema changed to 5 to match device capabilities
## [00.07.05] - 2019-12-27
### Fixed
- Improved stability with some access-points / hotspots
### Known issues
- Unable to connect to AWS S3 using https for some regions
## [00.07.04] - 2019-11-28
### Add
- TLS "server name" extension added to TLS Client-Hello to support servers with multiple certificates
### Changed
- Secondary port schedule array set to default empty in schema file (such that it loads without warnings)
### Known issues
- Unable to connect to AWS S3 using https for some regions
## [00.07.03] - 2019-11-04
### Changed
- Support for hardware 00.01.XX
## [00.07.02] - 2019-10-04
### Fixed
- Find oldest log file when uploading to S3 server
## [00.07.01] - 2019-10-01
### Added
- Secondary port power scheduling
- LIN-bus support
- CAN-bus control message to start/stop message reception/transmission from CAN-bus
- CAN-bus heartbeat message with device time, storage left and reception/transmission state
- Timezone information is stored in MDF metadata. DST field is not used.
### Changed
- Config schema now allows any S3 region string
## [00.06.02] - 2019-09-20
### Fixed
- Rejection of negative time zones (e.g. -1) fixed
## [00.06.01] - 2019-09-02
### Changed
- CAN-bus message retransmission default changed to enabled
- WiFi MAC address added to device.json file
- Number of tx messages pr channel changed to 64
### Fixed
- Accepts new lines after the terminating "}" in json files
- CAN-bus bit timing (advanced mode) for switched rate added to configuration
- Allows for 0 data byte tx messages
## [00.05.01] - 2019-08-16
### Added
- Configuration file and schema updated with "general section"
- Device meta data field added to general section
- Device meta data field added to log file headers
- Device meta data field added to device.json file
### Changed
- Configuration security and debug sections moved to "general" section
- Limit file size of syslog
### Fixed
- Potential stop of logging under high load
- Avoid empty entries in system log
## [00.04.04] - 2019-07-30
### Changed
- Reduced static overhead in MDF log files
- Accept "-" in S3 access keys
### Fixed
- RTC sync while logging no longer results in corrupted timestamps
- Support for MS Azure length secret keys in encrypted form
- Device ~20 s inactivity after configuration is defaulted fixed
### Known issues
- TLS mutual authentication missing
- LIN-bus support missing
- Risk of some CAN-bus frame loss
- Configuration is rejected if more than 32 transmit messages are entered
- Bit-rate configuration using bit-timing not loaded correctly
## [00.04.03] - 2019-06-19
### Added
- Configurable NTP server used for RTC auto sync (with DHCP provided fall-back)
- Configurable RTC auto sync tolerance
### Changed
- Log file sha256 digest added to log file name (e.g. `AAAAAAAA/BBBBBBBB/CCCCCCCC/DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD.mf4`, with D as digest)
- Certificate folder renamed to "certs_root" (previously "certs")
- CAN Bit-rate-switch flag to log file
- CAN FD flag to log file
- S3 file push now uses the signed payload option (x-amz-content-sha256)
- S3 support for longer access and secret keys
- MF4, in "UNFINALIZED" format to improve performance
- MF4, transmit messages moved to separate channels in mf4 files
- MF4, data length calculated from DLC as virtual channel (reduces file size)
### Fixed
- S3 upload instability
- S3 upload occasionally stops on Minio server fixed
- Improved server certificate support
- Bug in CAN-bus modes "Restricted" and "Monitoring" fixed
- Stability improvements to cyclic logging
- Time-split bug fixed (would sometimes create an additional file)
- Final log file not uploaded fixed
### Removed
- CSV file format support
### Known issues
- TLS mutual authentication missing
- LIN-bus support missing
- Risk of some CAN-bus frame loss
- Risk of corrupting MDF file if RTC sync during logging
## [00.03.01] - 2019-05-14
### Added
- WiFi and S3 server passwords can be encrypted in config file
- HTTPS support
### Deprecated
- CSV file format support
### Known issues
- TLS mutual authentication missing
- LIN-bus support missing
- Unable to accept configuration and firmware OTA when SD-card is full
- S3 upload instability
## [00.02.05] - 2019-04-27
### Fixed
- S3 upload stability
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Hidden WiFi / S3 passwords possibility missing
- Unable to accept configuration and firmware OTA when SD-card is full
## [00.02.04] - 2019-04-10
### Added
- Firmware-over-the-air support
### Fixed
- MDF file format time stamp
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Hidden WiFi / S3 passwords possibility missing
- Unable to accept configuration and firmware OTA when SD-card is full
## [00.02.02] - 2019-03-28
### Fixed
- WiFi compatibility issues (found for iPhone access point)
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Firmware-over-the-air support missing
- Hidden WiFi / S3 passwords possibility missing
- Unable to accept configuration and firmware OTA when SD-card is full
## [00.02.01] - 2019-03-22
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Firmware-over-the-air support missing
- Hidden WiFi / S3 passwords possibility missing
- WiFi compatibility issues (found for Iphone access point)
- Unable to accept configuration and firmware OTA when SD-card is full
## [00.01.03] - 2019-02-18
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Low S3 transfer speed
- Low S3 transfer stability
- Log files are deleted on logger if rejected by server
- Device does not shut down correctly if S3 is not available through WiFi
- Firmware-over-the-air support missing
- CAN-bus activity LEDs are not activated by transmit messages
- Cyclic logging feature missing (is listed in config)
- MDF / MF4 format missing (is listed in config)
- Hidden WiFi / S3 passwords possibility missing
- Time based file split missing (is listed in config)
- WiFi and S3 passwords do not accept special characters (such as +, !, ~)
- WiFi compatibility issues (found for iPhone access point)
- Unable to accept configuration and firmware OTA when SD-card is full
### Fixed
- S3 connect to ip as endpoint bug fixed
## [00.01.02] - 2019-02-14
### Known issues
- HTTPS / TLS support missing
- LIN-bus support missing
- Low S3 transfer speed
- Low S3 transfer stability
- Log files are deleted on logger if rejected by server
- Device does not shut down correctly if S3 is not available through Wifi
- Firmware-over-the-air support missing
- CAN-bus activity LEDs are not activated by transmit messages
- Cyclic logging feature missing (is listed in config)
- MDF / MF4 format missing (is listed in config)
- Hidden WiFi / S3 passwords possibility missing
- Time based file split missing (is listed in config)
- WiFi and S3 passwords do not accept special characters (such as +, !, ~)
- WiFi compatibility issues (found for iPhone access point)
- Unable to accept configuration and firmware OTA when SD-card is full