scapy.contrib.automotive.xcp.cto_commands_master

class scapy.contrib.automotive.xcp.cto_commands_master.AllocDaq(_pkt, /, *, reserved=0, daq_count=0)[source]

Bases: Packet

Allocate DAQ lists

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.AllocDaq'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (AllocDaq).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.AllocOdt(_pkt, /, *, reserved=0, daq_list_num=0, odt_count=0)[source]

Bases: Packet

Allocate ODTs to a DAQ list

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.AllocOdt'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (AllocOdt).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <ByteField (AllocOdt).odt_count>]
class scapy.contrib.automotive.xcp.cto_commands_master.AllocOdtEntry(_pkt, /, *, reserved=0, daq_list_num=0, odt_num=0, odt_entries_count=0)[source]

Bases: Packet

Allocate ODT entries to an ODT

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.AllocOdtEntry'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (AllocOdtEntry).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <ByteField (AllocOdtEntry).odt_num>, <ByteField (AllocOdtEntry).odt_entries_count>]
class scapy.contrib.automotive.xcp.cto_commands_master.BuildChecksum(_pkt, /, *, reserved=0, block_size=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.BuildChecksum'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.ClearDaqList(_pkt, /, *, reserved=0, daq_list_num=0)[source]

Bases: Packet

Clear DAQ list configuration

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ClearDaqList'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ClearDaqList).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.Connect(_pkt, /, *, connection_mode=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Connect'>, <class 'scapy.packet.Packet'>]
commands = {0: 'NORMAL', 1: 'USER_DEFINED'}
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (Connect).connection_mode>]
class scapy.contrib.automotive.xcp.cto_commands_master.CopyCalPage(_pkt, /, *, segment_num_src=0, page_num_src=0, segment_num_dst=0, page_num_dst=0)[source]

Bases: Packet

This command forces the slave to copy one calibration page to another. This command is only available if more than one calibration page is defined

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.CopyCalPage'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (CopyCalPage).segment_num_src>, <ByteField (CopyCalPage).page_num_src>, <ByteField (CopyCalPage).segment_num_dst>, <ByteField (CopyCalPage).page_num_dst>]
class scapy.contrib.automotive.xcp.cto_commands_master.Disconnect(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Disconnect'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.Download(_pkt, /, *, nr_of_data_elements=0, alignment=b'', data_elements=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Download'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (Download,DownloadNext,Program,ProgramNext).nr_of_data_elements>, <scapy.fields.ConditionalField object>, <StrLenField (Download,DownloadNext,Program,ProgramNext).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.DownloadMax(_pkt, /, *, alignment=b'', data_elements=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.DownloadMax'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.fields.ConditionalField object>, <StrLenField (DownloadMax,ProgramMax).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.DownloadNext(_pkt, /, *, nr_of_data_elements=0, alignment=b'', data_elements=b'')[source]

Bases: Download

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.DownloadNext'>, <class 'scapy.contrib.automotive.xcp.cto_commands_master.Download'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (Download,DownloadNext,Program,ProgramNext).nr_of_data_elements>, <scapy.fields.ConditionalField object>, <StrLenField (Download,DownloadNext,Program,ProgramNext).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.FreeDaq(_pkt, /)[source]

Bases: Packet

Clear dynamic DAQ configuration

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.FreeDaq'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetCalPage(_pkt, /, *, access_mode=0, data_segment_num=0)[source]

Bases: Packet

Get calibration page

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetCalPage'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetCalPage).access_mode>, <ByteField (GetCalPage).data_segment_num>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetCommModeInfo(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetCommModeInfo'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqClock(_pkt, /)[source]

Bases: Packet

Get DAQ clock from slave

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqClock'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqEventInfo(_pkt, /, *, reserved=0, event_channel_num=0)[source]

Bases: Packet

Get specific information for an event channel

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqEventInfo'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetDaqEventInfo).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqListInfo(_pkt, /, *, reserved=0, daq_list_num=0)[source]

Bases: Packet

Get specific information for a DAQ list

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqListInfo'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetDaqListInfo).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqListMode(_pkt, /, *, reserved=0, daq_list_number=0)[source]

Bases: Packet

Get mode from DAQ list

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqListMode'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetDaqListMode).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqProcessorInfo(_pkt, /)[source]

Bases: Packet

Get general information on DAQ processor

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqProcessorInfo'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetDaqResolutionInfo(_pkt, /)[source]

Bases: Packet

Get general information on DAQ processing resolutioin

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetDaqResolutionInfo'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetId(_pkt, /, *, identification_type=0)[source]

Bases: Packet

Get identification from slave

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetId'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (GetId).identification_type>]
types = {0: 'ASCII', 1: 'file_name_without_path_and_extension', 2: 'file_name_with_path_and_extension', 3: 'URL', 4: 'File'}
class scapy.contrib.automotive.xcp.cto_commands_master.GetPagProcessorInfo(_pkt, /)[source]

Bases: Packet

Get general information on PAG processor

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetPagProcessorInfo'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetPageInfo(_pkt, /, *, reserved=0, segment_number=0, page_number=0)[source]

Bases: Packet

Get specific information for a PAGE

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetPageInfo'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetPageInfo).reserved>, <ByteField (GetPageInfo).segment_number>, <ByteField (GetPageInfo).page_number>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetPgmProcessorInfo(_pkt, /)[source]

Bases: Packet

Get general information on PGM processor

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetPgmProcessorInfo'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetSectorInfo(_pkt, /, *, mode=0, sector_number=0)[source]

Bases: Packet

Get specific information for a SECTOR

address_mode = {0: 'get_address', 1: 'get_length'}
aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetSectorInfo'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (GetSectorInfo).mode>, <ByteField (GetSectorInfo).sector_number>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetSeed(_pkt, /, *, mode=0, resource=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetSeed'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (GetSeed).mode>, <ByteEnumField (GetSeed).resource>]
res = {0: 'resource', 1: 'ignore'}
seed_mode = {0: 'first', 1: 'remaining'}
class scapy.contrib.automotive.xcp.cto_commands_master.GetSegmentInfo(_pkt, /, *, mode=0, segment_number=0, segment_info=0, mapping_index=0)[source]

Bases: Packet

Get specific information for a SEGMENT

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetSegmentInfo'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (GetSegmentInfo).mode>, <ByteField (GetSegmentInfo).segment_number>, <ByteField (GetSegmentInfo).segment_info>, <ByteField (GetSegmentInfo).mapping_index>]
info_mode = {0: 'get_basic_address_info', 1: 'get_standard_info', 2: 'get_address_mapping_info'}
class scapy.contrib.automotive.xcp.cto_commands_master.GetSegmentMode(_pkt, /, *, reserved=0, segment_number=0)[source]

Bases: Packet

Get mode for a SEGMENT

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetSegmentMode'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (GetSegmentMode).reserved>, <ByteField (GetSegmentMode).segment_number>]
class scapy.contrib.automotive.xcp.cto_commands_master.GetStatus(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.GetStatus'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.ModifyBits(_pkt, /, *, shift_value=0, and_mask=0, xor_mask=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ModifyBits'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ModifyBits).shift_value>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.Program(_pkt, /, *, nr_of_data_elements=0, alignment=b'', data_elements=b'')[source]

Bases: Download

Program a non-volatile memory segment

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Program'>, <class 'scapy.contrib.automotive.xcp.cto_commands_master.Download'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (Download,DownloadNext,Program,ProgramNext).nr_of_data_elements>, <scapy.fields.ConditionalField object>, <StrLenField (Download,DownloadNext,Program,ProgramNext).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramClear(_pkt, /, *, mode=0, reserved=0, clear_range=0)[source]

Bases: Packet

Clear a part of non-volatile memory

access_mode = {0: 'absolute_access', 1: 'functional_access'}
aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramClear'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ProgramClear).mode>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramFormat(_pkt, /, *, compression_method=0, encryption_mode=0, programming_method=0, access_method=0)[source]

Bases: Packet

Set data format before programming

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramFormat'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ProgramFormat).compression_method>, <ByteField (ProgramFormat).encryption_mode>, <ByteField (ProgramFormat).programming_method>, <ByteField (ProgramFormat).access_method>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramMax(_pkt, /, *, alignment=b'', data_elements=b'')[source]

Bases: DownloadMax

Program a non-volatile memory segment (fixed size)

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramMax'>, <class 'scapy.contrib.automotive.xcp.cto_commands_master.DownloadMax'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.fields.ConditionalField object>, <StrLenField (DownloadMax,ProgramMax).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramNext(_pkt, /, *, nr_of_data_elements=0, alignment=b'', data_elements=b'')[source]

Bases: Download

Program a non-volatile memory segment (Block Mode)

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramNext'>, <class 'scapy.contrib.automotive.xcp.cto_commands_master.Download'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (Download,DownloadNext,Program,ProgramNext).nr_of_data_elements>, <scapy.fields.ConditionalField object>, <StrLenField (Download,DownloadNext,Program,ProgramNext).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramPrepare(_pkt, /, *, not_used=0, code_size=0)[source]

Bases: Packet

Prepare non-volatile memory programming

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramPrepare'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ProgramPrepare).not_used>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramReset(_pkt, /)[source]

Bases: Packet

Indicate the end of a programming sequence

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramReset'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramStart(_pkt, /)[source]

Bases: Packet

Indicate the beginning of a programming sequence

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramStart'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.ProgramVerify(_pkt, /, *, verification_mode=0, verification_type=0, verification_value=0)[source]

Bases: Packet

Program Verify

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ProgramVerify'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (ProgramVerify).verification_mode>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
start_mode = {0: 'request_to_start_internal_routine', 1: 'sending_verification_value'}
class scapy.contrib.automotive.xcp.cto_commands_master.ReadDaq(_pkt, /)[source]

Bases: Packet

Read element from ODT entry

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ReadDaq'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetCalPage(_pkt, /, *, mode=<Flag 0 ()>, data_segment_num=0, data_page_num=0)[source]

Bases: Packet

Set calibration page

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetCalPage'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FlagsField (SetCalPage).mode>, <ByteField (SetCalPage).data_segment_num>, <ByteField (SetCalPage).data_page_num>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetDaqListMode(_pkt, /, *, mode=<Flag 0 ()>, daq_list_num=0, event_channel_num=0, transmission_rate_prescaler=0, daq_list_prio=0)[source]

Bases: Packet

Set mode for DAQ list

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetDaqListMode'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FlagsField (SetDaqListMode).mode>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <ByteField (SetDaqListMode).transmission_rate_prescaler>, <ByteField (SetDaqListMode).daq_list_prio>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetDaqPtr(_pkt, /, *, reserved=0, daq_list_num=0, odt_num=0, odt_entry_num=0)[source]

Bases: Packet

Data acquisition and stimulation, static, mandatory

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetDaqPtr'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (SetDaqPtr).reserved>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <ByteField (SetDaqPtr).odt_num>, <ByteField (SetDaqPtr).odt_entry_num>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetMta(_pkt, /, *, reserved=0, address_extension=0, address=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetMta'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <ByteField (SetMta).address_extension>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetRequest(_pkt, /, *, mode=<Flag 0 ()>, session_configuration_id=0)[source]

Bases: Packet

Request to save to non-volatile memory

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetRequest'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FlagsField (SetRequest).mode>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.SetSegmentMode(_pkt, /, *, mode=<Flag 0 ()>, segment_number=0)[source]

Bases: Packet

Set mode for a SEGMENT

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.SetSegmentMode'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FlagsField (SetSegmentMode).mode>, <ByteField (SetSegmentMode).segment_number>]
class scapy.contrib.automotive.xcp.cto_commands_master.ShortDownload(_pkt, /, *, len=None, reserved=0, address_extension=0, address=0, data_elements=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ShortDownload'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (ShortDownload).len>, <ByteField (ShortDownload).reserved>, <ByteField (ShortDownload).address_extension>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <StrVarLenField (ShortDownload).data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.ShortUpload(_pkt, /, *, nr_of_data_elements=0, reserved=0, address_extension=0, address=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.ShortUpload'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (ShortUpload).nr_of_data_elements>, <ByteField (ShortUpload).reserved>, <XByteField (ShortUpload).address_extension>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.StartStopDaqList(_pkt, /, *, mode=0, daq_list_number=0)[source]

Bases: Packet

Start/stop/select DAQ list

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.StartStopDaqList'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (StartStopDaqList).mode>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
mode_enum = {0: 'stop', 1: 'start', 2: 'select'}
class scapy.contrib.automotive.xcp.cto_commands_master.StartStopSynch(_pkt, /, *, mode=0)[source]

Bases: Packet

Start/stop DAQ lists (synchronously)

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.StartStopSynch'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (StartStopSynch).mode>]
mode_enum = {0: 'stop', 1: 'start', 2: 'select'}
class scapy.contrib.automotive.xcp.cto_commands_master.Synch(_pkt, /)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Synch'>, <class 'scapy.packet.Packet'>]
class scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmd(_pkt, /, *, sub_command_code=255)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmd'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (TransportLayerCmd).sub_command_code>]
payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'sub_command_code': 255}, <class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetSlaveId'>), ({'sub_command_code': 254}, <class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetDAQId'>), ({'sub_command_code': 253}, <class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdSetDAQId'>)]
sub_commands = {253: 'SET_DAQ_ID', 254: 'GET_DAQ_ID', 255: 'GET_SLAVE_ID'}
class scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetDAQId(_pkt, /, *, daq_list_number=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetDAQId'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
class scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetSlaveId(_pkt, /, *, x=88, c=67, p=80, mode=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdGetSlaveId'>, <class 'scapy.packet.Packet'>]
echo_mode = {0: 'identify_by_echo', 1: 'confirm_by_inverse_echo'}
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XByteField (TransportLayerCmdGetSlaveId).x>, <XByteField (TransportLayerCmdGetSlaveId).c>, <XByteField (TransportLayerCmdGetSlaveId).p>, <ByteEnumField (TransportLayerCmdGetSlaveId).mode>]
class scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdSetDAQId(_pkt, /, *, daq_list_number=0, can_identifier=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.TransportLayerCmdSetDAQId'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]
sub_command = {253: 'SET_DAQ_ID'}
class scapy.contrib.automotive.xcp.cto_commands_master.Unlock(_pkt, /, *, len=None, seed=b'')[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Unlock'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<FieldLenField (Unlock).len>, <StrVarLenField (Unlock).seed>]
class scapy.contrib.automotive.xcp.cto_commands_master.Upload(_pkt, /, *, nr_of_data_elements=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.Upload'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (Upload).nr_of_data_elements>]
class scapy.contrib.automotive.xcp.cto_commands_master.UserCmd(_pkt, /, *, sub_command_code=0)[source]

Bases: Packet

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.UserCmd'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (UserCmd).sub_command_code>]
class scapy.contrib.automotive.xcp.cto_commands_master.WriteDaq(_pkt, /, *, bit_offset=0, size_of_daq_element=0, address_extension=0, address=0)[source]

Bases: Packet

Data acquisition and stimulation, static, mandatory

aliastypes = [<class 'scapy.contrib.automotive.xcp.cto_commands_master.WriteDaq'>, <class 'scapy.packet.Packet'>]
fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteField (WriteDaq).bit_offset>, <ByteField (WriteDaq).size_of_daq_element>, <ByteField (WriteDaq).address_extension>, <scapy.contrib.automotive.xcp.utils.XCPEndiannessField object>]