Skip to content

Fix SDO server bugs#38

Merged
mcbridejc merged 3 commits intomainfrom
fix-sdo-server-bugs
Dec 22, 2025
Merged

Fix SDO server bugs#38
mcbridejc merged 3 commits intomainfrom
fix-sdo-server-bugs

Conversation

@mcbridejc
Copy link
Copy Markdown
Owner

This fixes two issues, one major, one minor:

  • The major one is that segmented upload was very broken. When process was called without a new SdoRequest, the state erroneously changed from UploadSegmented to DownloadSegmented, resulting in an Abort of the transfer.
  • The minor one is that segmented uploads were returning the updated object index, when they should not have (the upload is a read, it does not update the object).

Exercises two key things:
- Calling process an extra time between messages
- Checking the returned updated index on upload, which shouldn't be set
  because uploads don't update the object value
When process was called without a pending SdoRequest (a normal occurrence)
the DownloadSegmented state was returned instead of UploadSegmented. This
can result in an incorrect abort with AbortCode 0x5040001 /
InvalidCommandSpecifier
Uploads are reads, they don't update the object so this should not be
returned.
@mcbridejc mcbridejc merged commit f557b83 into main Dec 22, 2025
1 check passed
@mcbridejc mcbridejc deleted the fix-sdo-server-bugs branch January 4, 2026 21:59
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.

1 participant