Module ecu_diagnostics::uds

source ·
Expand description

Module for UDS (Unified diagnostic services - ISO14229)

Theoretically, this module should be compliant with any ECU which implements UDS (Typically any ECU produced after 2006 supports this)

Structs§

Enums§

  • Communication level toggle
  • ECU Communication types
  • [UdsCommand::ReadDTCInformation] sub-function definitions
  • ECU Communication types
  • Reset ECU subcommand
  • ! Functions and data for ReadScalingDataById UDS Service FIXME: Use ScalingExtension instead Note: #[deprecated] doesn’t work here due to https://github.com/rust-lang/rust/issues/30827 Scaling data byte extensions This enum is used to represent the following:
  • FIXME: Use ScalingType instead Note: #[deprecated] doesn’t work here due to https://github.com/rust-lang/rust/issues/30827 Scaling high nibble, representing the type of data without its size. The size is given by the low nibble.
  • Scaling data byte extensions This enum is used to represent the following:
  • Scaling high nibble, representing the type of data without its size. The size is given by the low nibble.
  • Security operation request
  • ECU communication subnet type
  • UDS Command Service IDs
  • UDS Error definitions
  • UDS Diagnostic session modes. Handled by SID 0x10

Functions§

  • Decode communication type and subnet from a single byte. If the low 4 bits are not a valid communication type, the low 4 bits are returned as an error.
  • Encode communication type and subnet into a single byte

Type Aliases§

  • Store a single byte, either as a Standard(CommunicationLevel), or as an Extended(u8).
  • Store a single byte, either as a Standard(DtcSubFunction), or as an Extended(u8).
  • Store a single byte, either as a Standard(ResetType), or as an Extended(u8).
  • Store a single byte, either as a Standard(Scaling), or as an Extended(u8).
  • Store a single byte, either as a Standard(ScalingExtension), or as an Extended(u8).
  • Store a single byte, either as a Standard(SecurityOperation), or as an Extended(u8).
  • Store a single byte, either as a Standard(UdsCommand), or as an Extended(u8).
  • Store a single byte, either as a Standard(UdsError), or as an Extended(u8).
  • Store a single byte, either as a Standard(UdsSessionType), or as an Extended(u8).