The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release of April 25, 2024
2 days ago
Major changes:
- Removed all **CANAL** references from the project
- Created a **new** TouCAN USB command interface
- Added common `Version.h` to the project
- Updated CAN API V3 sources to rev. 1270
- Updated CAN API V3 testing sources to rev. 1273
- Removed unused attributes from class `CTouCAN`
- Changed the resolution of `CTimer` to 64 bit
- Implemented identifier acceptance filtering
- Added test suites for acceptance filtering
- Added filtering option to utility `can_moni`
- Added option `--list-bitrates` to the utilities
- Fixed a bug with macro `DLC2LEN()`
- Updated `Makefile`s and `build_no.sh`
- Improved compiler and linker flags
- Updated the Python wrapper and examples
- Updated the Swift wrapper and examples
- Updated the deployment rules
Service release of November 12, 2023
23 weeks ago
Major changes:
- Updated MacCAN-Core sources to rev. 1816
- Updated CAN API V3 sources to rev. 1212
- Updated CAN API V3 testing sources to rev. 1219
- Updated GoogleTest to version 1.14.0
- Updated deployment rules
- Added linker flag `-rpath /usr/local/lib` (C++ examples)
Service release of September 24, 2023
30 weeks ago
Major changes:
- Updated MacCAN Core sources to rev. 1757 (core 0.4)
- Updated CAN API V3 sources to rev. 1187 and applied the changes
- Added old error code -40 as *queue overrun* error and renumbered error *error frame received* from -40 to -19
- Removed unused error code `CANERR_ERR_FRAME` (note: the error code -19 is marked as reserved)
- Removed flag `fdoe` and `brse` from `struct can_speed_t` (note: the flags are marked as reserved)
- Integrated reworked module `can_btr`:
- `btr_check_bitrate`: if FDOE w/o BRSE then check data phase field acc. `OPTION_CANBTR_DATA_FIELDS`
- `btr_bitrate2speed`: no range checks anymore, calculation is done completely in float
- `btr_bitrate2index`: returns the index if an index is given
- `btr_bitrate2string`: no range checks anymore
- `btr_sja10002bitrate`: set data phase field acc. `OPTION_CANBTR_DATA_FIELDS`
- `btr_compare_bitrates`: comparision on basis of transmission rates (new function)
- Removed flag `fdoe` and `brse` from `struct btr_speed_t` (standalone variant)
- Documented all interface functions by Doxygen comments
- Added header file `CANBTR_Defaults.h`
- Reworked the bit-rate string scanner (`btr_string2bitrate`):
- Return a flag if any data phase key is found
- Return a flag if no. samp. key is found
- Return `BTRERR_ILLPARA` on error
- Removed the range checks
- Set miminum frequency to 1
- Checked for duplicated keys
- Accept only case sensitive keys
- Reworked the bit-rate string printer (`btr_bitrate2string`):
- Added a parameter to output data phase keys
- Added a parameter to output no. samp. key
- Added a parameter for maximum buffer size
- Fixed a bug with `strtol` if a correct value is outside the range of representable values (note: long is 32 bit wide for MS compilers and 64 bit for gcc based compilers!)
- Added property values for transmit queue properties (note: values for filtering have been shifted by 8)
- Fixed a bug with saturation of CAN FD DLC conversion
- Updated description of compiler switches
- Reworked formatting of message flags
- Activated suppression of extended frames and remote frames
- Activated time-out handling for reading asynchronous pipes
- Fixed a bug with terminating the worker thread
- Reworked handling of status frames
- Added CAN API V3 Tests with GoogleTest (rev. 1205)
- Added Rusoku-specific bit-rate defaults
- Made the utilities more generic
- Updated the Python wrapper
- Updated the Swift wrapper
- Updated the trial program
- Updated the examples
Service release of August 5, 2022
1 year ago
Major changes:
- Updated CAN API V3 sources to rev. 1082
- Realized new property `GET_CAN_CLOCK`
- Applied changes from module `can_btr`
- Updated CAN API V3 Testing sources to rev. 1084
- Fixed a possible bug with USB device name length
- Fixed a bug with missing check of the CAN clock frequency (50MHz)
- Fixed a bug with tx message flags in the Swift wrapper (SwiftCAN issue #23)
- Fixed some findings from static code analysis
- Added a scanner for test case annotations
- Added `@rpath` to the library Makefiles
Service release of February 25, 2022
2 years ago
Major changes:
- Updated MacCAN-Core sources to rev. 1090
- Removed class `CMacCAN` from project (R.I.P.)
- Updated CAN API sources to rev. 1036 and applied the changes
- Fixed a bug with probing a device when it is used by another process
- Fixed a bug with string length of device vendor
- Added operations to class `CTouCAN` to query channel information
- Updated the utilities to get the list of channels from library
- Moved unit test suites into `$(PROJROOT)/Tests/UnitTests`
- Added `cppcheck` target to `Makefile` of the Trial program
- Updated the Swift and Python examples
Service release of December 27, 2021
2 years ago
Major Changes:
- Reworked the driver layer (to solve the copy constructor issue #16):
- rename sub-folders in `$(PROJROOT)/Sources`
- switch CAN API V3 wrapper from **C++** to **C**
- create a lot of new driver layer modules
- prepare the driver to support further devices
- no obvious functional changes
- Added a Swift wrapper including SPM configuration
- Added two simple Swift examples for sending and receiving CAN frames
- Added an Xctest target for CAN API V3 **C** interface to the trial program
- take over all test suites and test cases from [MacCAN-KvaserCAN](https://github.com/mac-can/KvaserCAN-Library/tree/main/Tests/UnitTests)
- test execution: 131 tests, 6 failed - but false positives
- Fixed a testing issue with unsupported acknowledge of transmit messages
- Fixed a testing issue with unsupported bit-timing index 1 (800kbps)
- Fixed a bug with unchecked device handle
- Fixed a bug with missing header file in class `CTouCAN`
- Fixed an omission with forgotten TouCAN specific properties
- Fixed a bug with non-boolean return value in a boolean function
- Fixed an issue with deprecated function `IOMasterPort` (first deprecated in macOS 12.0)
- Set all Xcode deployment targets to macOS **11.0** (`Makefile`s still work on OS X 10.13)
- Updated the `Makefile`s to build the artifacts as **Universal macOS Binary**
- Updated my beloved utilities
- Updated the C++ examples
Service release of June 5, 2021
2 years ago
Major changes:
- Fixed the hibernation issue (issue #11)
- Fixed a bug when trying to send a status message
- Fixed a bug when the channel number is invalid
- Fixed a bug when requested operation mode is not supported
- Fixed an out-of-bound violation in companion module `can_btr`
- Fixed some issues from code analysis
Release of February 28, 2021
3 years ago
Major change(s):
- Worked in the latest changes from MacCAN-Core (SVN rev. 986)
- Added a CAN API V3 compatible Phython wrapper and two Python examples
- Added two simple C++ examples for sending and receiving CAN frames
- Weakened the sizeof check while reading numerical properties
- Fixed a bug with a locked mutex when device is not present
- Fixed a bug with signalling a wait condition
- Updated the trial program and the utilities
Service release no. 1 of the MacCAN-TouCAN driver
3 years ago
Major change(s):
- Fixed a bug with looping over the list of registered devices
- Fixed a bug with non-dereferenceable void* array
- Fixed a bug with SIGNAL_WAIT_CONDITION
- Plastic surgery
First release of the MacCAN-TouCAN driver
3 years ago
First release of the MacCAN-TouCAN driver as of April 19, 2020