scapy.contrib.automotive.obd.pid.pids_20_3F

class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID20(_pkt, /, *, supported_pids=<Flag 0 ()>)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID20'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FlagsField (OBD_PID20).supported_pids>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID21(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID21'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID21).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID22(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID22'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID22).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID23(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID23'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID23).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID24(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID24'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID25(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID25'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID26(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID26'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID27(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID27'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID28(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID28'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID29(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID29'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2A(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2A'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2B(_pkt, /, *, equivalence_ratio=0, voltage=0)[source]

Bases: _OBD_PID24_2B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2B'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID24_2B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).equivalence_ratio>, <ScalingField (_OBD_PID24_2B,OBD_PID24,OBD_PID25,OBD_PID26,OBD_PID27,OBD_PID28,OBD_PID29,OBD_PID2A,OBD_PID2B).voltage>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2C(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2C'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID2C).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2D(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2D'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID2D).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2E(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2E'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID2E).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2F(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID2F'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID2F).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID30(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID30'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID30).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID31(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID31'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID31).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID32(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID32'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID32).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID33(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID33'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID33).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID34(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID34'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID35(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID35'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID36(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID36'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID37(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID37'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID38(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID38'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID39(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID39'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3A(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3A'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3B(_pkt, /, *, equivalence_ratio=0, current=0)[source]

Bases: _OBD_PID34_3B

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3B'>, <class 'scapy.contrib.automotive.obd.pid.pids_20_3F._OBD_PID34_3B'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).equivalence_ratio>, <ScalingField (_OBD_PID34_3B,OBD_PID34,OBD_PID35,OBD_PID36,OBD_PID37,OBD_PID38,OBD_PID39,OBD_PID3A,OBD_PID3B).current>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3C(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3C'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID3C).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3D(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3D'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID3D).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3E(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3E'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID3E).data>]
class scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3F(_pkt, /, *, data=0)[source]

Bases: OBD_Packet

aliastypes = [<class 'scapy.contrib.automotive.obd.pid.pids_20_3F.OBD_PID3F'>, <class 'scapy.contrib.automotive.obd.packet.OBD_Packet'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ScalingField (OBD_PID3F).data>]