How to change programmer in Arduino IDE

ArduinoArduino BoardsArduino IDEArduino Programming Language

If you wish to program your board using the USB Cable, then you don't need to make any changes in the default settings. Read further only if you have an external programmer. If you do wish to program the board using an external programmer, you can select the programmer of your choice by going to Tools –> Programmer.

Please note that if you want to upload your sketch using an external programmer, then clicking the upload button will not work. You need to go to Sketch -> Upload using Programmer.

Now, you may be wondering if there are any advantages of programming the board using an external programmer as against the USB Cable. The answer is that with an external programmer, you can burn sketches to the Arduino without using the bootloader. This gives you more space for your application code. Think of the bootloader as code present in a section of the program memory that is reserved. In this reserved memory, instructions are present which allow the board to copy the data coming from USB to the correct area of the flash memory. Now, because this bootloader occupies some space, less space is left for the actual application. Using an external programmer, the bootloader will not be required because the programmer itself will copy the data to the correct locations in the flash. You can read more about using external programmers here:

As mentioned in the above link, if you wish to switch back to the normal way of programming the Arduino (using the USB), you will need to burn the bootloader using your external programmer. This can be done by first selecting your programmer from Tools -> Programmer and then selecting Tools -> Burn Bootloader.

Please note that you need an external programmer to burn the bootloader. USB Cable can't burn the bootloader.

Published on 23-Mar-2021 15:48:30