Skip to content

CanKit.Pro.CANopen.Sdo Namespace

Classes
SdoAbortException Thrown when an SDO transfer terminates with an Abort frame (CiA 301 §7.2.4.3.17). Carries the failing (Index, Subindex) and the raw 32-bit AbortCode — matched against SdoAbortCode when possible. Derives from CanKitException so L2/L3/L4 failures can be caught uniformly across the library (NFR-006 error architecture, arc42 ADR-12).
Enums
SdoAbortCode The CiA 301 §7.2.4.3.17 Table 22 SDO abort codes this node emits or matches. Values are the exact 32-bit codes carried in an SDO Abort frame's data bytes 4..7 (little-endian).
SdoAbortOrigin Which side ended the transfer that an SdoAbortException reports. The abort code alone cannot say: the peer sends 0504 0000h ("SDO protocol timed out", CiA 301 Table 22) when <em>its</em> timer expired, and this node sends the same code to the peer when its own request timer did. A caller retrying on "we gave up" and giving up on "the peer refused" needs the distinction, and so does anyone reading a log.
SdoTransferMode Selects which CiA 301 SDO transport the SdoUploadAsync / SdoDownloadAsync APIs on ICanOpenNode should use for a single transfer.