If you need a breadboard-friendy, well documented and supported Arduino board, your best choice is a Nano. Unfortunately an original Arduino Nano could cost you around $30 plus shipping so it makes sense to search for an alternative source. There are also some chinese clones that are around five times cheaper, even with worldwide shipping.
But wait! There’s always a reason why a clone of something is cheaper than the original product. In this case there can be two pitfalls you need to know about.
The bad
- Sometimes the FTDI chip which makes the USB communication possible is a counterfeit. This could cause problems when you install the official FTDI drivers and they just refuse to work.
- Usually there is no bootloader on the microcontroller. You need to upload it yourself and that means you need to have an appropriate programmer on hand.
Update 2015.12.15
I don’t recommend these clones anymore. Check out my other post about a clone based on the USB chip CH340G.
Using a counterfeit FTDI chip
If you are interested in the differences between a real and fake chip check out this article with wonderful microscope images. These fake chips used to work perfectly just as the original ones.
According to Wikipedia it all started in September 2014 when FTDI released a new driver that could detect fake chips and bricked them by setting their product id to “0000”. This driver was withdrawn from Windows Update but many devices got bricked already and the driver was still accessible for a long time.
FTDI stated that they were working on an updated version of the driver “which notifies the user of non-genuine FTDI products in a non-invasive manner”. Well, this driver was released in July and I was shocked what FTDI considers to be non-invasive:
Basically, with the new driver, all you can receive from the fake chip is “NON GENUINE DEVICE FOUND!”. The funny thing is that you only see this message when the device is transmitting. So if you have a new clone with an empty ATmega, you don’t really see anything suspicios. It will appear in the device manager correctly but every time you press upload, avrdude will fail with the following:
stk500_recv(): programmer is not responding
You can only see the “NON GENUINE DEVICE FOUND!” message if you use an ISP programmer to upload a program which transmits something with UART.
So if you are just starting to play with Arduino clones make sure that you are NOT using the latest drivers.
And now lets see how to get to a working Arduino nano from the worst possible scenario: bricked device (pid=0000), latest FTDI drivers and missing bootloader.
- First download the following files:
- FT_Prog and CDMUninstaller from FTDI Utilities
- Old FTDI driver from here.
- Make sure that the device appears in Device Manager and is recognized correctly. Double-click the device > Details > select Hardware Ids property and it should say “PID_0000” somewhere.
- Open up FT_Prog and select DEVICES > Scan and parse. It should display your device like this:
- Click on “Chip details” and change the PID back to 6001, then click DEVICES > Program and program the device with the new PID. Now the chip itself is in its original state, we only need to remove the new driver and make sure it never comes back.
- Disable automatic updates of drivers in Windows. This is extremely important, do not skip this step!
It might be slightly different for each Windows version but in Windows 10 open up Control Panel and navigate to System and Security > System > Advanced system settings > Hardware tab > Device Installation Settings. Make sure you have “No, let me choose what to do” and “Never install driver software from Windows Update” selected.
- Open up CDMUninstallerGUI, click “Add” to add the device to the list and click “Remove”. This removes every single instance of the FTDI drivers.
- Restart your computer.
- Open up Device Manager and you should see that the Arduino is not longer recognized as a virtual COM port.
- Install the “old” drivers manually.
- Connect the ISP programmer to the nano.
- Burn the bootloader with Arduino IDE.
- Remove the ISP programmer and connect again with mini USB.
After this, you should have a fully functional and future-proof Arduino Nano clone.
Summary
Product name: Nano V3.0 for Arduino (Works with Official Arduino Boards)
Source: DealExtreme
Price: $6.62
Pros
- Works like a real one as advertised
- Breadboard-friendly
- Comes with a USB cable
- Ideal for someone who starts DIY electronics
Cons
- The mess with the FTDI drivers
- The header on one of my modules is misaligned a bit (though it works perfectly)
Update 2015.12.15
I don’t recommend these clones anymore. Check out my other post about a clone based on the USB chip CH340G.
Update 2016.01.31
Today I found that my Windows somehow updated the driver to a new one (2016.01.06.) from FTDI. My boards seems to be bricked again :(. Tomorrow I’ll check if the above method still works or not.
Click here for the updated un-bricking method
Did this article help you to repair your arduino? If so, please consider buying me a coffee. Thanks!
thanx a lot
i tested this method in Windows 10 x64 with Arduino Nano v3.0 in which worked perfect
i unistalled 2.12 FTDI driver with CDM Unistaller
and installed again but older 2.8 FTD driver
[…] 1: Here are the steps to fix it: 1) Follow http://electropit.com/index.php/2015/09/06/arduino-nano-v3-0-clones/. When it talks about burning the bootloader then […]
[…] During installation we must make sure not to install any drivers as we are already using the FTDI drivers with the Bus […]
[…] êtes confrontés à un problème de communication avec votre Arduino, vous pouvez jeter un oeil ici (plus d’infos en vidéo ici, ici ou encore […]
[…] Arduino Nano clone for communication between the modules and doing some calculations […]
Best guide for this FTDI chip issue out there. Thank you guys!
Since i dont have ISP programmer to proceed, I took reference of the information in the below link and shorted the Pins 26 and 25 of the FTDI with a pencil tip while programming from Arduino IDE . Great !! the nano back to life!!
https://ketturi.kapsi.fi/2014/04/how-to-fix-moody-arduino-nano/
Wow, this is good to know.
Thanks for the tip, Partha!
Hi there,
I love to see your post talking about Arduino as I am a newbie in this stuff.
I just ordered an Arduino Nano clone, exactly same yours. But I could not make it be recognized on my Windows 10 🙁 Everytime I plug it in, the Windows show “USB Device not recognized”. And when I look at Device Manager, it show “Unknown USB device (Invalid Device Descriptor)”. And this is the log in Event tab when I doubled click on it:
Device USB\VID_0000&PID_0005\5&19c004d8&0&2 was configured.
Driver Name: usb.inf
Class Guid: {36FC9E60-C465-11CF-8056-444553540000}
Driver Date: 06/21/2006
Driver Version: 10.0.10240.16384
Driver Provider: Microsoft
Driver Section: BADDEVICE.Dev.NT
Driver Rank: 0xFF0000
Matching Device Id: USB\DEVICE_DESCRIPTOR_VALIDATION_FAILURE
Outranked Drivers: usb.inf:USB\DEVICE_DESCRIPTOR_VALIDATION_FAILURE:00FF2000
Device Updated: false
I don’t know if you have this kind of frustrating yet but if you can, please help me. Many thanks.
Regards,
White
Hello White,
Have you tried to follow the steps described in this updated post?
Cheers,
Adam
I reported FTDI to Microsoft for this BS. I do not know if anyone had done so yet, so I did so myself. I cannot disclose exactly what was said, but I can tell you that MS took it extremely seriously (I was escalated to an engineer that could understand the concern in depth) and will be in touch with FTDI.
FWIW, I went through the drivers with some tools and they have disguised the “NON GENUINE DEVICE” message, probably to prevent MS finding it. I would have to break out a kernel mode debugger to find it and I am not willing to go that far.
Oh, the clones are the best. I bought over 100 for school goers. All work amazing