I'm new to Arduino board can someone please help me solve this issue. I have my university project submission within a week and I got stuck with this

Yeah, sure. Thanks a lot. I'm completely new to this so I don't really know what I'm doing, just following some websites and doing something.

Thanks all.

Have a great day ahead.

You are welcome. I'm glad if I was able to be of assistance.

If you have now been able to upload successfully, you are welcome to switch back to using the "Upload" button or the Ctrl+U keyboard shortcut if you prefer to upload that way. Just make sure not to press the Shift when you do it.

I believe that, 12 years or so back, holding the Shift key while clicking the "Upload" button caused the Arduino IDE to print verbose upload output.

Unfortunately there are still some ancient tutorials hanging around out there that recommend doing this when you are having trouble with uploading. Following those tutorials only guarantees that the upload will fail.

Yes sure I won't use shift while uploading, Thanks a lot for your guidance and valuable feedback. Have a nice day ahead :slight_smile:

Can you tell me which lines are relevant to determine that? I don't have MKR boards so can't play; I suspect that it's the use of openocd, but not sure.

You got it right.

You can see the command here:

The ID of the "recipe" used to generate the "Upload" command is defined by the upload.tool platform property in the board definition:

https://github.com/arduino/ArduinoCore-samd/blob/1.8.13/boards.txt#L196-L197

mkrwifi1010.upload.tool=bossac

and the pattern here:

https://github.com/arduino/ArduinoCore-samd/blob/1.8.13/platform.txt#L168-L173

tools.bossac.cmd=bossac
tools.bossac.cmd.windows=bossac.exe

tools.bossac.upload.params.verbose=-i -d
tools.bossac.upload.params.quiet=
tools.bossac.upload.pattern="{path}/{cmd}" {upload.verbose} --port={serial.port.file} -U {upload.native_usb} -i -e -w -v "{build.path}/{build.project_name}.bin" -R

So we will expect a bossac command for a normal "Upload" operation.

The ID of the pattern used to generate the "Upload Using Programmer" command is defined by the program.tool platform property in the programmer definition. For example:

https://github.com/arduino/ArduinoCore-samd/blob/1.8.13/programmers.txt#L20-L21

edbg.program.tool=openocd

and the pattern here:

https://github.com/arduino/ArduinoCore-samd/blob/1.8.13/platform.txt#L205-L207

https://github.com/arduino/ArduinoCore-samd/blob/1.8.13/platform.txt#L218-L220

tools.openocd.cmd=bin/openocd
tools.openocd.cmd.windows=bin/openocd.exe

[...]

tools.openocd.program.params.verbose=-d2
tools.openocd.program.params.quiet=-d0
tools.openocd.program.pattern="{path}/{cmd}" {program.verbose} -s "{path}/share/openocd/scripts/" -f "interface/{protocol}" -c "set telnet_port 0" {extra_params} -f "target/at91samdXX.cfg" -c "telnet_port disabled; program {{build.path}/{build.project_name}.hex} verify reset; shutdown"

So we will expect an openocd command for a normal "Upload" operation.