uds.utilities.conversions

Module with various conversion functions.

Functions

bytes_to_hex(bytes_list)

Convert a list of bytes to hex string.

bytes_to_int(bytes_list[, endianness])

Convert a list of bytes to integer value.

int_to_bytes(int_value[, size, endianness])

Convert integer value to a list of bytes.

obd_dtc_to_int(obd_dtc)

Convert text with DTC in OBD format into integer value (DTC in UDS format).

int_to_obd_dtc(dtc)

Encode integer value (DTC in UDS format) into text with DTC in OBD format.

get_signed_value_decoding_formula(bit_length)

Get formula for decoding signed integer value.

get_signed_value_encoding_formula(bit_length)

Get formula for encoding signed integer value.

Module Contents

uds.utilities.conversions.bytes_to_hex(bytes_list)[source]

Convert a list of bytes to hex string.

Parameters:

bytes_list (uds.utilities.common_types.RawBytesAlias) – List of bytes to convert.

Returns:

String with provided list of bytes presented as hexadecimal values.

Return type:

str

uds.utilities.conversions.bytes_to_int(bytes_list, endianness=Endianness.BIG_ENDIAN)[source]

Convert a list of bytes to integer value.

Parameters:
Returns:

The integer value represented by provided list of bytes.

Return type:

int

uds.utilities.conversions.int_to_bytes(int_value, size=None, endianness=Endianness.BIG_ENDIAN)[source]

Convert integer value to a list of bytes.

Parameters:
  • int_value (int) – Integer value to convert.

  • size (Optional[int]) – Number of bytes in the output. Use None to use the smallest possible number of bytes.

  • endianness (uds.utilities.enums.Endianness) – Order of bytes to use.

Raises:
  • TypeError – At least one provided value has invalid type.

  • ValueError – At least one provided value is out of range.

  • InconsistencyError – Provided value of size is too small to contain entire int_value.

Returns:

The value of bytes list that represents the provided integer value.

Return type:

bytes

uds.utilities.conversions.obd_dtc_to_int(obd_dtc)[source]

Convert text with DTC in OBD format into integer value (DTC in UDS format).

Parameters:

obd_dtc (str) – Text with DTC in OBD format.

Raises:
  • TypeError – Provided value is not str type.

  • ValueError – Provided value is not DTC in OBD format.

Returns:

Integer value representation of this DTC in UDS format.

Return type:

int

uds.utilities.conversions.int_to_obd_dtc(dtc)[source]

Encode integer value (DTC in UDS format) into text with DTC in OBD format.

Parameters:

dtc (int) – Integer with DTC in UDS format.

Raises:
  • TypeError – Provided value is not int type.

  • ValueError – Provided value is not DTC in OBD format.

Returns:

Text value representation of this DTC in OBD format.

Return type:

str

uds.utilities.conversions.get_signed_value_decoding_formula(bit_length)[source]

Get formula for decoding signed integer value.

Parameters:

bit_length (int) – Number of bits used for signed integer value.

Raises:
Returns:

Formula for decoding singed integer value from unsigned integer value.

Return type:

Callable[[int], int]

uds.utilities.conversions.get_signed_value_encoding_formula(bit_length)[source]

Get formula for encoding signed integer value.

Parameters:

bit_length (int) – Number of bits used for signed integer value.

Raises:
Returns:

Formula for encoding singed integer value into unsinged integer value.

Return type:

Callable[[int], int]