Skip to content

Releases: pylessard/python-can-isotp

v2.0.6

02 Aug 02:38
Compare
Choose a tag to compare

Bugfix

  • Fix #129. Sending single frames (small payload that fits in a single message) was broken when blocking_send was set to True

v2.0.5

26 Jun 12:57
Compare
Choose a tag to compare

Bugfixes

  • Does not report error in listen mode when rx address is the address of a transmitter

Improvements

  • Added py.typed marker to repo

v2.0.4

06 Feb 04:55
Compare
Choose a tag to compare

Bugfix

  • Fix performance issue with stop_receiving that is called before each transmission by udsoncan

v2.0.3

23 Jan 02:13
Compare
Choose a tag to compare

Improvement

  • Significantly improved timing under windows. (#113) credits : @pgreenaland

v2.0.2

14 Jan 21:34
Compare
Choose a tag to compare

Bugfix

  • Bugfix for exception thrown when calling stop_sending (required by udsoncan connection)

v2.0.1

09 Jan 04:49
78f1ce3
Compare
Choose a tag to compare

Bugfix

  • Fixed #110. Compatibility with python3.7 to python3.9 is restored

v2.0

09 Jan 03:13
f517322
Compare
Choose a tag to compare

Major changes

  • The TransportLayer handle its own timing by running an internal thread. No need to call process anymore
  • The user provided rxfn is expected to be blocking and respect a timeout passed as an argument. CPU throttling will be applied by calls to sleep() if the given timeout is not respected.
  • squash_stmin_requirement has been replaced by override_receiver_stmin
  • Many internal methods/properties have been prefixed with an underscore to indicates that they are internal
  • The error handler is called from a different thread.
  • The isotp.socket.recv does not return None on Timeout anymore
  • Minimal Python version is 3.7
  • isotp.socket.bind now requires an isotp.Address object and is no more backward compatible with old interface

Improvements

  • Timing behaviors has been globally improved. The pure python implementation running in the user space is able to reach similar timings as the kernel module when running on a vcan interface
  • Blocking sends are now possible
  • Added NotifierBasedCanStack which is an improved version of the CanStack object using a can.Notifier improving performances and avoiding starvation of other readers.
  • Asymmetric addressing is possible, meaning sending and receiving with different address schemes
  • ConsecutiveFrame wait period can be achieved by a user-passed function (default to time.sleep)
  • Possible to send data using a generator
  • Test suite is more robust
  • Type hints are coupled with the code

Bugfix

  • Fixed missing parameter check in Address
  • Receiving a wait frame when wftmax is set to 0 triggers the error handle only when reception is not idle.

v1.9.0

12 Aug 19:00
Compare
Choose a tag to compare

improvements

  • #69 : Improved interraction with python-can by passing down timeout parameter (credit @mikisama)
  • #77 : Add support for optional non-standard CAN IDs in addressing modes Mixed 29 bits and NormalFixed 29 bits. (credits: @Zcholm)
  • Increased tooling version for documentation + few typos.

Bugfix

  • #61 : Rate limiter would fail when applying throttling on a multi-packet message. (reported by @dpatel20)

v1.8

07 Mar 00:22
Compare
Choose a tag to compare

Bug Fixes:

  • #63 - Consecutive Frame timeout sometime not raised properly. Remainings #41 Fixed in v1.7
  • #56 - Correctly consider address prefix (address extension) when deciding to use a Single Frame.
  • Few documentation and error messages correction.

Improvements:

  • Added parameter default_target_address_type to easily switch between Physical and Functional message from a layer of software above.
  • #57 - Added some mypy support
  • #61 - Added a rate limiter feature to avoid overflowing the CAN device driver in some particular cases.
  • #59 - Added "Listen Mode"

v1.7

30 Apr 14:38
Compare
Choose a tag to compare

Bug Fixes :

  • #41 : Correctly raises a timeout when no FC is received

Improvements:

  • Handle bitrate_switch flag for python-can compatibility with CAN FD
  • Sleep timing of the stack can be modified with set_sleep_timing
  • Add blocking send option for ISOTP sockets.