Releases: mac-can/RusokuCAN.dylib
Releases · mac-can/RusokuCAN.dylib
Service Release of June 10, 2024
Major changes:
- Updated CAN API V3 sources to rev. 1312
- Updated CAN API V3 Xcode testing to rev. 1334
- Updated CAN API V3 GoogleTest testing to rev. 1336
- Removed the upper size limit of string properties
- Reworked CAN API V3 return values (C vs. C++)
- Added a workaround for issue #32 (bus error states)
- Integrated generic CAN API V3 Utilities (rev. 1323)
- Updated release documents
Release of April 25, 2024
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 andbuild_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
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
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
andbrse
fromstruct 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 floatbtr_bitrate2index
: returns the index if an index is givenbtr_bitrate2string
: no range checks anymorebtr_sja10002bitrate
: set data phase field acc.OPTION_CANBTR_DATA_FIELDS
btr_compare_bitrates
: comparision on basis of transmission rates (new function)- Removed flag
fdoe
andbrse
fromstruct 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
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
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 toMakefile
of the Trial program - Updated the Swift and Python examples
Service release of December 27, 2021
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
- rename sub-folders in
- 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
- 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
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
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
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