Intro: 5 Most Common Arduino Nano Clone Problems and Their Solutions
we all know that Arduino is so important for Hobbyists like you and me, who love to make our own electronics based projects, or say any project, we all want to customize our own projects according to our purpose, but buying an original (genuine) arduino isn't quite possible for everyone. Arduino being open-source, has many copies legally avialable in market to purchase like the one's found on Ebay for around 3$, which is quite reasonable, so these CLONE NANO's are associated with some problems, because of alternate parts being used to make it cheaper, so in this instructable, we will identify and solve 5 major arduino nano clone problems.
Step 1: Video Representation.
here is a video which you can follow for steps and visual representation of settings performed on computer and Nano board.
Step 2: Understanding the Problem Associated to Your Board. (index)
there are 5 main problems associated with clone nano.
1.Missing Serial Communication (CH340) drivers.
when you are unable to select the arduino port on your I.D.E., it would be possibly because of missing drivers.
2.Improper Port selected.
when you don't select proper port on which your arduino is connected to, you would find that your code in IDE isn't uploading. also it shows error " programmer isnt responding "
3.Improper Board Settings.
when you haven't selected the required settings on I.D.E., you would observe this problem of code not getting uploaded on your arduino clone.
even after applying all settings properly, when you cant upload your code, its possibly because of missing bootloader on your Atmega328p chip.
even after setting everything perfectly fine, with Boot-Loader installed, if you cant upload your code, that means your board has faced some serious static damage while shipping.
Step 3: Missing Serial Communication Drivers (CH340 Drivers)
the arduino nano ( genuine) version, has a FTDI's FT232Rl serial communication chip, which is replaced with similar chinese version of serial communication chip called as CH340, which isnt recognized by our drivers, beacuse windows doesnt has this CH340 drivers preinstalled.
to fix this problem,
1. got to the website
http://www.wch.cn/download/CH341SER_ZIP.html to download the drivers,
this is official website, but it is in chinese, you can google CH340 drivers for alternative english website for downloading the CH340 drivers.
2. Install Drivers.
depending on your Operating System on computer, select the version x32 or x64 drivers, then click install.
3.Check if Board is Discovered.
now once you have installed the CH340 drivers, check if the IDE discovers your device, means the port option will now be available to select.
once the port option is available, try to upload the blink example from the IDE>File>Example>Basic>Blink, if the code is uploaded successfully, it means that you are good to go, your arduin nano clone is set successfully.
if not, follow the steps further.
Step 4: Improper Port Selected
when you select improper port on IDE, you would still be unable to upload your code on arduino, in that case, you should follow these steps.
1. press windows button.
2. open the device manager.
3.Expand ( Ports and LPT).
4.select USB-Seial CH340
when you open the USB-Serial CH340 port, the COM port number will be mentioned there.
under Tools> Port> select your port number which you found out from the device manager.
upload BLINK example from the basic category under examples, upload the program.
if the sketch is successful uploaded, your board is set and ready to use, if there are errors in uploading, follow the further steps.
Step 5: Improper Board Settings.
when you do not select the proper required board settings, you wouldn't be able to upload any code onto your Arduino board, so copy these settings on your IDE.
under tools menu, board option, select the ARDUINO NANO option from the list.
under tools menu, processor option, select the ATmega32p option from the list.
under tools menu, port option, select (your com port number) option from the list.
under tools menu, Programmer option, select "Arduino as ISP" option from the list.
now test your arduino board using the same blink example.
if you still cant upload your code, it is because your ATmega328p is missing BOOT-LOADER, follow the steps further to fix it.
Step 6: Missing BOOT-LOADER
if all the above steps are not working for you, that means your Clone Nano is missing the Boot-Loader.
Bootloader is what makes this ATmega328p chip what we are familiar with as "Arduino",
sometimes the clone arduinos are just copy of hardware and they miss to load the arduino bootloader into the ATmega328p,
so you would require a few things before we bootload this nano
1. working ARDUINO UNO.
2. Male to Female jumper Wires(6).
we will use Master Slave Serial Peripheral Interfacing (S.P.I.) method to bootload the arduino board.
Step 1: Connections
make the connections on arduino uno to nano in the following manner.
nano ICSP UNO
pin 1 - D12
pin 2 - VCC
pin 3 - D13
pin 4 - D11
pin 5 - D10
pin 6 - GND
connection diagram and ICP Pin out attached.
Step 2: Open Arduino ISP
from the file menu, under examples, select ArduinoISP example.
Step 3: Copy Settings
copy these settings in the arduino IDE
1. under tools menu, board option, select the ARDUINO UNO option from the list.
2. under tools menu, port option, select (your com port number) option from the list.
3.under tools menu, Programmer option, select "Arduino as ISP" option from the list.
Step 4: Upload the ArduinoISP code on Master UNO
once the above mentioned settings are copied on your IDE, upload the code on your master UNO.
Step 5: Change Target Board
once the example is uploaded, Change the Board type from Aruino UNO to Arduino NANO, keeping the rest settings intact.
Step 6: Upload Bootloader.
once the board type is changed, from UNO to NANO, select the "BOOT-LOADER" option from the tools menu.
you should see serial rx and tx L.E.D. flickering while burning the Bootloader.
once done uploading, you should be able to upload your code onto Clone NANO.
Step 7: Static Damage
Even after following all the above steps, if you are unable to get your code onto arduino that could be possibly because of Static Damage.
Electrostatic discharge (ESD) is the sudden flow of electricity between two electrically charged objects caused by contact, an electrical short, or dielectric breakdown. A buildup of static electricity can be caused by tribocharging or by electrostatic induction. The ESD occurs when differently-charged objects are brought close together or when the dielectric between them breaks down.
While shipping the circuit, there might be chance of board getting damaged, so in that case, get you can change your ATMEGA328p chip which is a SMD package,
And if you have no idea about smd soldering, check out my video about soldering which is linked in description below.
if your supplier allows replacement, you should propably avoid changing the atmega 328p chip and rather get your board replaced.
still if you don’t have any luck in setting up your arduino, do mention your error in comments section, we will try to solve it together!
Step 8: Conclusion
by following these simple yet effective ways of updating driver, setting up board properly and bootlaoding will solve most of the arduino nanos common problems.
in case of any doubts or confusion, feel free to comment down.