scapy.contrib.automotive.obd.mid.mids

class scapy.contrib.automotive.obd.mid.mids.OBD_MID00(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MID00                          
OBD_MID00 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MID20(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MID20                          
OBD_MID20 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MID40(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MID40                          
OBD_MID40 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MID60(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MID60                          
OBD_MID60 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MID80(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MID80                          
OBD_MID80 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MIDA0(_pkt, /, *, supported_mids=<Flag 0 ()>)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SUPPORTED MIDS                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MIDA0                          
OBD_MIDA0 fields

supported_mids

FlagsField

<Flag 0 ()>

class scapy.contrib.automotive.obd.mid.mids.OBD_MIDXX(_pkt, /, *, standardized_test_id=1, unit_and_scaling_id=1, test_value=None, min_limit=None, max_limit=None)[源代码]

基类:OBD_Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|STANDARDIZED TE|UNIT AND SCALIN|           TEST VALUE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           MIN LIMIT           |           MAX LIMIT           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. OBD_MIDXX                          
OBD_MIDXX fields

standardized_test_id

ByteEnumField

1

unit_and_scaling_id

ByteEnumField

1

test_value

MultipleTypeField (ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortEnumField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortField)

0

min_limit

MultipleTypeField (ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortEnumField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortField)

0

max_limit

MultipleTypeField (ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortEnumField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ScalingField, ShortField)

0

standardized_test_ids = {1: 'TID_01_RichToLeanSensorThresholdVoltage', 2: 'TID_02_LeanToRichSensorThresholdVoltage', 3: 'TID_03_LowSensorVoltageForSwitchTimeCalculation', 4: 'TID_04_HighSensorVoltageForSwitchTimeCalculation', 5: 'TID_05_RichToLeanSensorSwitchTime', 6: 'TID_06_LeanToRichSensorSwitchTime', 7: 'TID_07_MinimumSensorVoltageForTestCycle', 8: 'TID_08_MaximumSensorVoltageForTestCycle', 9: 'TID_09_TimeBetweenSensorTransitions', 10: 'TID_0A_SensorPeriod'}
unit_and_scaling_ids = {1: 'Raw Value', 2: 'Raw Value', 3: 'Raw Value', 4: 'Raw Value', 5: 'Raw Value', 6: 'Raw Value', 7: 'rotational frequency', 8: 'Speed', 9: 'Speed', 10: 'Voltage', 11: 'Voltage', 12: 'Voltage', 13: 'Current', 14: 'Current', 15: 'Current', 16: 'Time', 17: 'Time', 18: 'Time', 19: 'Resistance', 20: 'Resistance', 21: 'Resistance', 22: 'Temperature', 23: 'Pressure (Gauge)', 24: 'Pressure (Air pressure)', 25: 'Pressure (Fuel pressure)', 26: 'Pressure (Gauge)', 27: 'Pressure (Diesel pressure)', 28: 'Angle', 29: 'Angle', 30: 'Equivalence ratio (lambda)', 31: 'Air/Fuel ratio', 32: 'Ratio', 33: 'Frequency', 34: 'Frequency', 35: 'Frequency', 36: 'Counts', 37: 'Distance', 38: 'Voltage per time', 39: 'Mass per time', 40: 'Mass per time', 41: 'Pressure per time', 42: 'Mass per time', 43: 'Switches', 44: 'Mass per cylinder', 45: 'Mass per stroke', 46: 'True/False', 47: 'Percent', 48: 'Percent', 49: 'volume', 50: 'length', 51: 'Equivalence ratio (lambda)', 52: 'Time', 53: 'Time', 54: 'Weight', 55: 'Weight', 56: 'Weight', 57: 'Percent', 129: 'Raw Value', 130: 'Raw Value', 131: 'Raw Value', 132: 'Raw Value', 133: 'Raw Value', 134: 'Raw Value', 138: 'Voltage', 139: 'Voltage', 140: 'Voltage', 141: 'Current', 142: 'Current', 144: 'Time', 150: 'Temperature', 156: 'Angle', 157: 'Angle', 168: 'Mass per time', 169: 'Pressure per time', 175: 'Percent', 176: 'Percent', 177: 'Voltage per time', 253: 'Pressure', 254: 'Pressure'}
class scapy.contrib.automotive.obd.mid.mids.OBD_S06_PR(_pkt, /, *, data_records=[])[源代码]

基类:Packet

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          DATA RECORDS         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. OBD_S06_PR                          
OBD_S06_PR fields

data_records

PacketListField

[]

class scapy.contrib.automotive.obd.mid.mids.OBD_S06_PR_Record(_pkt, /, *, mid=0)[源代码]

基类:Packet

aliastypes
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      MID      |
+-+-+-+-+-+-+-+-+

                      Fig. OBD_S06_PR_Record                      
OBD_S06_PR_Record fields

mid

ByteEnumField

0

on_board_monitoring_ids = {0: 'OBD Monitor IDs supported ($01 - $20)', 1: 'Oxygen Sensor Monitor Bank 1 - Sensor 1', 2: 'Oxygen Sensor Monitor Bank 1 - Sensor 2', 3: 'Oxygen Sensor Monitor Bank 1 - Sensor 3', 4: 'Oxygen Sensor Monitor Bank 1 - Sensor 4', 5: 'Oxygen Sensor Monitor Bank 2 - Sensor 1', 6: 'Oxygen Sensor Monitor Bank 2 - Sensor 2', 7: 'Oxygen Sensor Monitor Bank 2 - Sensor 3', 8: 'Oxygen Sensor Monitor Bank 2 - Sensor 4', 9: 'Oxygen Sensor Monitor Bank 3 - Sensor 1', 10: 'Oxygen Sensor Monitor Bank 3 - Sensor 2', 11: 'Oxygen Sensor Monitor Bank 3 - Sensor 3', 12: 'Oxygen Sensor Monitor Bank 3 - Sensor 4', 13: 'Oxygen Sensor Monitor Bank 4 - Sensor 1', 14: 'Oxygen Sensor Monitor Bank 4 - Sensor 2', 15: 'Oxygen Sensor Monitor Bank 4 - Sensor 3', 16: 'Oxygen Sensor Monitor Bank 4 - Sensor 4', 32: 'OBD Monitor IDs supported ($21 - $40)', 33: 'Catalyst Monitor Bank 1', 34: 'Catalyst Monitor Bank 2', 35: 'Catalyst Monitor Bank 3', 36: 'Catalyst Monitor Bank 4', 50: 'EGR Monitor Bank 2', 51: 'EGR Monitor Bank 3', 52: 'EGR Monitor Bank 4', 53: 'VVT Monitor Bank 1', 54: 'VVT Monitor Bank 2', 55: 'VVT Monitor Bank 3', 56: 'VVT Monitor Bank 4', 57: 'EVAP Monitor (Cap Off / 0.150")', 58: 'EVAP Monitor (0.090")', 59: 'EVAP Monitor (0.040")', 60: 'EVAP Monitor (0.020")', 61: 'Purge Flow Monitor', 64: 'OBD Monitor IDs supported ($41 - $60)', 65: 'Oxygen Sensor Heater Monitor Bank 1 - Sensor 1', 66: 'Oxygen Sensor Heater Monitor Bank 1 - Sensor 2', 67: 'Oxygen Sensor Heater Monitor Bank 1 - Sensor 3', 68: 'Oxygen Sensor Heater Monitor Bank 1 - Sensor 4', 69: 'Oxygen Sensor Heater Monitor Bank 2 - Sensor 1', 70: 'Oxygen Sensor Heater Monitor Bank 2 - Sensor 2', 71: 'Oxygen Sensor Heater Monitor Bank 2 - Sensor 3', 72: 'Oxygen Sensor Heater Monitor Bank 2 - Sensor 4', 73: 'Oxygen Sensor Heater Monitor Bank 3 - Sensor 1', 74: 'Oxygen Sensor Heater Monitor Bank 3 - Sensor 2', 75: 'Oxygen Sensor Heater Monitor Bank 3 - Sensor 3', 76: 'Oxygen Sensor Heater Monitor Bank 3 - Sensor 4', 77: 'Oxygen Sensor Heater Monitor Bank 4 - Sensor 1', 78: 'Oxygen Sensor Heater Monitor Bank 4 - Sensor 2', 79: 'Oxygen Sensor Heater Monitor Bank 4 - Sensor 3', 80: 'Oxygen Sensor Heater Monitor Bank 4 - Sensor 4', 96: 'OBD Monitor IDs supported ($61 - $80)', 97: 'Heated Catalyst Monitor Bank 1', 98: 'Heated Catalyst Monitor Bank 2', 99: 'Heated Catalyst Monitor Bank 3', 100: 'Heated Catalyst Monitor Bank 4', 113: 'Secondary Air Monitor 1', 114: 'Secondary Air Monitor 2', 115: 'Secondary Air Monitor 3', 116: 'Secondary Air Monitor 4', 128: 'OBD Monitor IDs supported ($81 - $A0)', 129: 'Fuel System Monitor Bank 1', 130: 'Fuel System Monitor Bank 2', 131: 'Fuel System Monitor Bank 3', 132: 'Fuel System Monitor Bank 4', 133: 'Boost Pressure Control Monitor Bank 1', 134: 'Boost Pressure Control Monitor Bank 2', 144: 'NOx Adsorber Monitor Bank 1', 145: 'NOx Adsorber Monitor Bank 2', 152: 'NOx Catalyst Monitor Bank 1', 153: 'NOx Catalyst Monitor Bank 2', 160: 'OBD Monitor IDs supported ($A1 - $C0)', 161: 'Misfire Monitor General Data', 162: 'Misfire Cylinder 1 Data', 163: 'Misfire Cylinder 2 Data', 164: 'Misfire Cylinder 3 Data', 165: 'Misfire Cylinder 4 Data', 166: 'Misfire Cylinder 5 Data', 167: 'Misfire Cylinder 6 Data', 168: 'Misfire Cylinder 7 Data', 169: 'Misfire Cylinder 8 Data', 170: 'Misfire Cylinder 9 Data', 171: 'Misfire Cylinder 10 Data', 172: 'Misfire Cylinder 11 Data', 173: 'Misfire Cylinder 12 Data', 176: 'PM Filter Monitor Bank 1', 177: 'PM Filter Monitor Bank 2'}
payload_guess

Possible sublayers: OBD_MID00, OBD_MID20, OBD_MID40, OBD_MID60, OBD_MID80, OBD_MIDA0, OBD_MIDXX