Skip to content

Conversation

@samsamfire
Copy link
Contributor

Hello,

During some testing I noticed some strange behaviour of the sdo client. ==> during block transfer it sends the "end block" after aborting.
I made adjustments to the sdo client block upload : do not send the "end" block if there was an abort, client side.
Also added some missing aborts.
I think there some other small implementation errors here and there that I will try to send PRs for.

samsamfire and others added 6 commits January 5, 2023 21:39
Also synchronous RPDOs should now be transmitted on sync reception
Need to add more tests for this last part
…#345)

* Fixed incorrect min (LowLImit) and max (HighLimit) values when using signed integer types.
* Fixed min/max for non-signed datatypes and added tests
* Removed type hints
…case of abort

Added missing aborts :
- One for timeout at beginning of comm
- One for re-transmit timeout
- The one with the different received index/subindex than requested is not considered so that it doesn't break an ongoing comm with another client
Copy link
Member

@acolomb acolomb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't really tested these changes in production, but I did notice the same error on a real bus lately. Your fix looks sensible and I think it should work as intended.

@christiansandberg I'll wait on your veto for one week before merging.

@christiansandberg christiansandberg merged commit 0e6e510 into canopen-python:master Apr 18, 2024
jonastittmannpinion pushed a commit to PinionGmbH/canopen that referenced this pull request Apr 30, 2024
@acolomb acolomb added this to the v2.3.0 milestone Jun 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants