scapy.contrib.automotive.obd.obd

class scapy.contrib.automotive.obd.obd.OBD(*args, **kargs)

Bases: scapy.contrib.isotp.ISOTP

aliastypes
answers(other)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    SERVICE    |
+-+-+-+-+-+-+-+-+

                             Fig. OBD                             
OBD fields

service

XByteEnumField

'0'

hashret()
payload_guess

Possible sublayers: OBD_S09_PR, OBD_S06_PR, OBD_S01_PR, OBD_S02_PR, OBD_NR, OBD_S01, OBD_S02, OBD_S03_PR, OBD_S03, OBD_S04_PR, OBD_S04, OBD_S06, OBD_S07_PR, OBD_S07, OBD_S08, OBD_S09, OBD_S0A_PR, OBD_S0A, OBD_S08_PR

services = {1: 'CurrentPowertrainDiagnosticDataRequest', 2: 'PowertrainFreezeFrameDataRequest', 3: 'EmissionRelatedDiagnosticTroubleCodesRequest', 4: 'ClearResetDiagnosticTroubleCodesRequest', 5: 'OxygenSensorMonitoringTestResultsRequest', 6: 'OnBoardMonitoringTestResultsRequest', 7: 'PendingEmissionRelatedDiagnosticTroubleCodesRequest', 8: 'ControlOperationRequest', 9: 'VehicleInformationRequest', 10: 'PermanentDiagnosticTroubleCodesRequest', 65: 'CurrentPowertrainDiagnosticDataResponse', 66: 'PowertrainFreezeFrameDataResponse', 67: 'EmissionRelatedDiagnosticTroubleCodesResponse', 68: 'ClearResetDiagnosticTroubleCodesResponse', 69: 'OxygenSensorMonitoringTestResultsResponse', 70: 'OnBoardMonitoringTestResultsResponse', 71: 'PendingEmissionRelatedDiagnosticTroubleCodesResponse', 72: 'ControlOperationResponse', 73: 'VehicleInformationResponse', 74: 'PermanentDiagnosticTroubleCodesResponse', 127: 'NegativeResponse'}