Skip to content

CanKit.Pro.IsoTp Namespace

Classes
IsoTp Factory entry point for opening IIsoTpChannel and IsoTpFunctionalClient instances. Non-instantiable.
IsoTpChannelOptions Configuration for an IIsoTpChannel.
IsoTpDatagramReceivedEventArgs Event data raised by DatagramReceived after a full ISO-TP PDU (Single-Frame, or First-Frame + all Consecutive Frames) has been reassembled.
IsoTpException Base type for ISO-TP protocol errors surfaced by IIsoTpChannel. Derives from CanKitException so L2/L3/L4 failures can be caught uniformly across the library (NFR-006 error architecture, arc42 ADR-12).
IsoTpFrameCodec Deterministic, side-effect-free codec for ISO 15765-2 (ISO-TP) Protocol-Control-Information frames on classic CAN and CAN-FD. This assembly deliberately contains no scheduler, no channel, no runtime and no vendor-adapter reference; every method here is a pure function over spans and value types.
IsoTpFunctionalClient ISO-TP functional (1:N broadcast) client per ISO 15765-2 §9 / ISO 14229-1 §7.5.4.
IsoTpFunctionalOptions Configuration for an IsoTpFunctionalClient.
IsoTpFunctionalResponse A single ISO-TP PDU received from one ECU in response to a functional (1:N) request.
IsoTpOverflowException Raised when the peer sends Overflow in response to a First Frame (SRS FR-TP-012).
IsoTpSendRejectedException Raised when the driver rejected a frame the channel tried to transmit (Rejected).
IsoTpTimeoutException Raised when an ISO-TP timeout (N_As, N_Bs or N_Cr) expires on a still-active PDU (SRS FR-TP-010).
IsoTpWaitFrameLimitExceededException Raised when the sender receives more than WftMax consecutive Wait Flow-Control frames (SRS FR-TP-011).
Structs
IsoTpEndpoint Minimal ISO-TP endpoint value type used by IsoTpFrameCodec to decide the TX/RX CAN identifiers and whether the first payload byte is reserved for an address-extension byte. Runtime channel/session objects live outside this codec-only assembly.
Pci Parsed ISO 15765-2 Protocol-Control-Information (PCI) view produced by TryParsePci(ReadOnlySpan<byte>, IsoTpEndpoint, bool, Pci). Only the fields relevant to the parsed PciType are populated; all other fields are default-valued.
Interfaces
IIsoTpChannel A single ISO 15765-2 (ISO-TP) channel bound to one IsoTpEndpoint (TX/RX CAN-ID pair, plus addressing mode). Threading model per SRS FR-TP-016 / FR-RAW-020..023: all protocol state is owned by a single IProtocolActor mailbox, so callers may invoke SendAsync(ReadOnlyMemory<byte>, CancellationToken) concurrently from arbitrary threads and receive frames from arbitrary threads; internal state is never mutated from more than one place at a time.
Enums
FlowStatus Flow-status field of an ISO 15765-2 Flow-Control (FC) frame; low nibble of the PCI byte.
IsoTpAddressingMode ISO 15765-2 addressing modes that the codec understands. The mode decides whether the first byte of the CAN payload is consumed by an address-extension byte or is available for PCI/data.
IsoTpTimer ISO 15765-2 network-layer timers observed by IsoTpTimeoutException.
PciType Protocol-Control-Information (PCI) type nibble used in the first byte of every ISO 15765-2 (ISO-TP) frame payload. The value is the high nibble of the PCI byte.