code: private void writeExecute() throws DfuException, DeviceDisconnectedException,
              UploadAbortedException, UnknownResponseException, RemoteDfuException {
  		if (!mConnected)
  			throw new DeviceDisconnectedException("Unable to read Checksum: device disconnected");
  
  		writeOpCode(mControlPointCharacteristic, OP_CODE_EXECUTE);
  
  		final byte[] response = readNotificationResponse();
  		final int status = getStatusCode(response, OP_CODE_EXECUTE_KEY);
  		if (status == SecureDfuError.EXTENDED_ERROR)
  			throw new RemoteDfuExtendedErrorException("Executing object failed", response[3]);
  		if (status != DFU_STATUS_SUCCESS)
  			throw new RemoteDfuException("Executing object failed", status);
  	}
docs: Sends the Execute operation code and awaits for a return notification containing status code.
  The Execute command will confirm the last chunk of data or the last command that was sent.
  Creating the same object again, instead of executing it allows to retransmitting it in case
  of a CRC error.
  
  @throws DfuException
  @throws DeviceDisconnectedException
  @throws UploadAbortedException
  @throws UnknownResponseException
  @throws RemoteDfuException thrown when the returned status code is not equal to
  {@link #DFU_STATUS_SUCCESS}.