I had a hard time finding information on the Internet on how to burn the bootloader to a SMD chip. So I decided to write down because not much is available until you dig very deep into it.
First and foremost I am not sure whether the chips used in Arduino UNO SMD and Arduino NANO are the same.
If they are same(very likely) then I would definitely go for NANOs configuration so that I get A6 and A7 extra to use. KEEPING IN MIND THAT NANO HAS RETIRED
Burning the bootloader and uploading the sketch in the way this guy demonstrated which is very informative and currently the best solution for what I have found till now.
So according to him using UNO as an ISP still uploads UNOs bootloader(irrespective of the board selected, nano in this case) and not NANOs until Nano is used as an ISP also he has USED an FTDI Cable to upload the sketch.
If anybody has done this before I would like to ask
If I were using arduino uno as an ISP and uploading bootloader to a 328P AU (for Arduino Nano and not UNO, I get 2 Analog pins extra) I have to change the board type to nano after uploading the ISP sketch to UNO?
My next question to you would be can I burn the code by holding the shift key(Upload Using Programmer) to upload it to the chip itself bypassing the arduino ?
I know how to wire it up and I have a DIP socket too. What I am trying to avoid is the usage of a FTDI to burn the code to the chip after the bootloader is burned.
He appears in the referenced video to be doing nothing more than is contained in this guide on how to burn a bootloader to an Arduino https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard
which is quite accurate but the Fritzing diagrams have all the pin numbers obscured, which makes it a misery to use. All required pins are brought out (on modern boards) so there is no need to use anything special to make contact with the chip pins.
Once you've loaded the ArduinoISP sketch to the Arduino you are using to burn the bootloader, you have to select the target board, in this case a Nano, before you are burn the bootloader. However, if you want to burn the Optibootloader onto a Nano, you can select a Uno as the target device instead of the Nano.
You do not upload a boot loader with an FTDI programmer. The FTDI programmer relies on the existing Bootloader on the target device to upload a sketch. But, if your target device is a Nano, you do not require an FTDI programmer to load your sketch because the Nano has a USB interface built in.
MrJkComedy:
So according to him using UNO as an ISP still uploads UNOs bootloader(irrespective of the board selected, nano in this case) and not NANOs until Nano is used as an ISP
That's incorrect. The bootloader and fuse settings for the current Tools > Board selection will be used when you do Tools > Burn Bootloader. If the guy in the video actually said that then I'd probably not trust anything else in the video.
MrJkComedy:
If I were using arduino uno as an ISP and uploading bootloader to a 328P AU (for Arduino Nano and not UNO, I get 2 Analog pins extra)
../standard/pins_arduino.h is the variant file the Uno uses. This means that the only thing related to the extra analog pins is the value of NUM_ANALOG_INPUTS. If your sketch and the libraries it uses don't rely on the value of NUM_ANALOG_INPUTS then you can still use the extra analog pins with the Uno board selection with no issues. NUM_ANALOG_INPUTS is not used anywhere in the Arduino core. It is used in the Firmata library, I'm not aware of any other libraries that use it. If possible I would recommend using Uno board selection because it will allow you to use more of the available flash memory since the Uno's bootloader is 1.5kB smaller than the Nano bootloader(yes I know you're not using the bootloader but the Arduino IDE isn't smart enough to realize that). Other than that it really doesn't matter which you use if you're not going to use the bootloader.
MrJkComedy:
My next question to you would be can I burn the code by holding the shift key(Upload Using Programmer) to upload it to the chip itself