parameters: (self, id_number, data)
docstring: Program the connected ID device located at the id_number with data.
  
          :param id_number: Extension header ID number (Range 1 - 16)
          :param data: A 64-byte data array to be programmed
          :return: Response status from the programming
docstring_summary: Program the connected ID device located at the id_number with data.
docstring_tokens: Program the connected ID device located at the id_number with data .
function: def program_id_chip(self, id_number, data):
          """
          Program the connected ID device located at the id_number with data.
  
          :param id_number: Extension header ID number (Range 1 - 16)
          :param data: A 64-byte data array to be programmed
          :return: Response status from the programming
          """
          self.logger.info("Programming ID chip...")
          try:
              self.check_command_exists(self.CMD_EDBG_PROGRAM_ID_CHIP)
          except NotImplementedError as err:
              self.logger.warning("Non-compliant command: %s", err)
  
              # Old EDBG implementations contained a non-compliant version of this command
              # Version 0 command
              packet = bytearray([self.CMD_EDBG_PROGRAM_ID_CHIP, self.CMD_VERSION0, id_number - 1] + data)
              resp = self.jtagice3_command_response_raw(packet)
              self.logger.debug("Program ID response: %s", self.response_as_string(resp[3]))
              return resp[3]
          else:
              # Version 1 command
              packet = bytearray([self.CMD_EDBG_PROGRAM_ID_CHIP, self.CMD_VERSION1, id_number] + data)
              status = self.check_response(self.jtagice3_command_response(packet))
              self.logger.debug("Program ID response: %s", self.response_as_string(status[0]))
              return status[0]
function_tokens: def program_id_chip ( self , id_number , data ) : self . logger . info ( "Programming ID chip..." ) try : self . check_command_exists ( self . CMD_EDBG_PROGRAM_ID_CHIP ) except NotImplementedError as err : self . logger . warning ( "Non-compliant command: %s" , err ) # Old EDBG implementations contained a non-compliant version of this command # Version 0 command packet = bytearray ( [ self . CMD_EDBG_PROGRAM_ID_CHIP , self . CMD_VERSION0 , id_number - 1 ] + data ) resp = self . jtagice3_command_response_raw ( packet ) self . logger . debug ( "Program ID response: %s" , self . response_as_string ( resp [ 3 ] ) ) return resp [ 3 ] else : # Version 1 command packet = bytearray ( [ self . CMD_EDBG_PROGRAM_ID_CHIP , self . CMD_VERSION1 , id_number ] + data ) status = self . check_response ( self . jtagice3_command_response ( packet ) ) self . logger . debug ( "Program ID response: %s" , self . response_as_string ( status [ 0 ] ) ) return status [ 0 ]