I recently ordered some Arduino Nano clones from a Chinese site called banggood.com. The price was hard to resist at €5.93 each, compared to twice as much for a clone bought locally or about six times as much for an “original” Nano. I had previously used Nanos in a few one-off projects and found them to be small, useful and easy to work with.
After a couple of weeks the goods arrived and I started playing with the boards. I did however immediately run into problems like the boards sometimes not being recognized by the Windows driver, but more often, after trying to upload a sketch, I was greeted with the infamous error message:
avrdude: stk500_getsync(): not in sync: resp=0x00
It seemed like the boards simply did not respond to the requests sent to them. Maybe I was able to program a board once (not sure), but that was at best a rare occurrence. Googling the above error message yields many, many hits – mostly forum discussions – claiming to have the solution to the problem. In reality there seems to be very many things that can cause it, including improper FTDI driver issues, wrong COM port or incorrect board type being selected.
After some tries at uninstalling and re-installing drivers I gave up that path and figured that maybe the bootloader/firmware was faulty in the Nano clones. It turns out that all that is needed to (re-)program a bootloader into an Arduino is present inside the Arduino environment and another (functional) Arduino can easily be used as the programmer. How this is done is described on this site. I had a working Nano since previously and it was straightforward to hook it up to a 6-pin header to connect to the ICSP connector on the Nano to be programmed.
Reprogramming worked fine, but the board still did not respond. I then realized that not only can one program a new bootloader into another Arduino using the ICSP connector, but it is actually easy to program a sketch that way as well. I did that with the “physical pixel” sketch that turns on or off an LED when the characters H or L is sent to the board. This experiment yielded no positive result. The LED remained off, despite the RX LED showing that some data was received by the Arduino.
I then tried a sketch that repeatedly sends the string “abc” back to the host computer once every second, but the characters did not appear in the serial monitor. Or rather there seemed to be some kind of non-printable characters data being sent from the Arduino, but not the string “abc”.
More googling gave hints that there are fake/counterfeit FT232RL USB-to-serial converter chips out there and I started suspecting that this was the case here as well.
Time for low-level troubleshooting. I hooked up an oscilloscope to the RX pin of a known good Nano and sent the character ‘a’ to the board. The resulting waveform can be seen as the light red upper trace in the figure below. I then did the same thing for the faulty Nano from Banggood.com and the waveform is shown in yellow below.
So the FT232RL chip on the faulty board just sent out a long low pulse instead of the ASCII bit pattern of the character. Regardless of what data was sent to the board, the same pulse appeared. So obviously the chip does not work as it should.
I ordered some FT232RL chips from a local vendor and replaced it on one of the Chinese boards. And eureka! The board started working! The new RX pin waveform is is shown below.
With the good chip in place, everything seems to work, including uploading sketches and to have sketches communicate over USB.
Below are close-up photos of the two chips. The one that I suspect to be fake looks a little different. The text seems to be laser engraved instead of printed, but that might not be a reliable indicator of fake FT232RL chips. I did however check the text on the FT232RL chip on a working Bus Pirate and that text was also printed, so maybe laser engraved text is something to look out for.
I reported the problems to Banggood.com and they replied after a couple of days and requested some photos and other documentation that I then provided. After that I did not hear anything for several more days.
Lessons learned: If you really need it to work, do not order stuff from one of those cheap Chinese sites. Counting the hours I have spent troubleshooting these boards, they turned out to be outrageously expensive rather than extremely cheap. But to be a bit positive, I am now an experience richer as I have (probably) encountered counterfeit chips for the first time. I also learned about how to use an Arduino to reprogram the bootloader of another Arduino. And I found yet another cause of the “stk500_getsync(): not in sync” error.
Update on September 18th
After some more e-mails back and forth with Banggood’s customer support, they offered to refund the cost of the Arduino clones. A few days later, the money appeared on my credit card balance. So Banggood seems to be at least somewhat reachable and responsive. Cudos to them for that. I hope they feed the scope plots and problem description I provided on to their supplier and make sure they stop shipping defective products. I will however not buy more Arduino clones from them. My time is much too valuable, and for ideological reasons it might be worth the extra money supporting the companies that actually contribute to the development of the Arduino ecosystem.
I ordered more FT232RL chips and replaced them on the four remaining boards. Two of the Arduino clones then worked as they should, but the other two did not, despite the soldering looking fine. The response code in the error message that came up when trying to program a sketch did change from 0x00 to 0xe0:
avrdude: stk500_getsync(): not in sync: resp=0xe0
It was also apparent that some more communication was going on with the Arduino clone based on the way the RX and TX LEDs were flashing. After some contemplation, I decided to update the firmware on the two broken units and lo and behold: Both boards started working! Perhaps I had already updated the bootloader of the two boards that happened to work after the chip replacements. In that case, it turns out that not only were there fake FT232RL chips on these Arduino clones, but also broken bootloaders.
Someone who does not have access to quite a bit of equipment and experience would be completely unable to get these Arduino clones to work.
After this episode I really cannot recommend buying “Arduino compatible” clones. I guess, sometimes, you really get what you pay for.
Update on January 4th
I finally received the new Arduino Nano from Banggood and I did a review on it in a new blog post. Unfortunately, there are still problems with the FT232RL chip on the new version.
A further detail is that I tried several times to leave a review of the Arduino Nanos on banggood.com to let others know that the ones I got did not work and probably had counterfeit FTDI chips. This was however in vain. My reviews never showed up at the site and my conclusion can hardly be anything other than that they only allow favourable reviews.
So beware, overall positive reviews might not at all reflect reality.
Dear friend, I am Thea from Banggood. And we have contact once for SKU066316’s problem. Thank you for your point out our SKU066316’s problem. Now we have changed our supplier. And make sure our SKU066316-one module of Arduino product is good. Please trust us. SKU066316’s problem has been deal with well. And this is the only problem we ever had in Arduino products. Other Arduino modules or chips are all good. Now, we have changed our supplier for SKU066316, that means, all of Arduino modules or chips or other products are all good for sure. Hope you can understand me. Hope you will delete this blog for me. I think everyone should be forgived if he has corrected his wrong.
Thank you so much!
Have a good day!
:)
Thea
Thanks for your response Thea. I am glad that you have taken action to fix the problem I pointed out (and spent many hours to research). I also appreciate (as I have written in the blog post above) that you eventually refunded me the money I paid for the faulty products.
I think I have accurately described what happened, including the resolution with the refund. Now you have also been given space to comment on the post and inform that you have made sure the Arduino Nanos from Banggood are now working.
In addition to descriptions of the problems with the products you shipped me and the acceptable way in which you handled the problems, the blog post also contains a substantial amount of information about troubleshooting and counterfeit chips that I think is of general interest and therefore of value.
So I do not feel that I should delete the post. And I do not think you have reason to think so either, since after all it shows in a rather positive way that you were responsive and how you handled the problems.
Best regards
Per
Thanks for this post. I just received my Nano from Banggood yesterday and had the same problem. Four different systems (windows and linux) and this thing just does not work.
I wasted four hours on this last night and your post has saved me another day of getting no where. Thank you Per!
Also I can confirm that they don’t accept any review that isn’t five starts. If you look through the Banggood website you’ll find either five stars or no ratings. It makes me very worried about the other Arduino related items that I ordered – I hope I didn’t waste my money.
Hi Michael,
Glad that I was able to shed some light on your issues.
I wonder if Banggood really fixed the problem and that you just happened to order before they started shipping the supposedly working Nanos.
Four hours wasted is not fun. Since they refunded me when I complained to customer support, at least you might be able to also get a refund if you complain. It is not much compensation for four hours of troubleshooting though…
Dear michael,
This is Thea from Banggood
Sorry for i have not skip this blog links for a long time.
We have changed our supplier for sure. But your chips is from our old supplier for sure. Because shipping time may need 15-30 days. That is why you told us your chip is bad after we have changed our supplier.
Tell me your order number, I can refund. Since we have changed a good reputation supplier, we have not received any compliant of chip fake problem from our customer.
Trust us, we have right our wrongs, if there is any problem of our products, we would give our customer a better solution always and forever.
I have received your review and refund you a week ago, dear Michael. We always think as a customer.
Per trust us I believe.
Dear Per,
You are right. Very thank you for your kind understanding. Hope you still is one of our good customer. Because we would like to sale products to customer like you. We will make sure every of our Arduino SCM products
Thea
Exactly the same problem with adaptors from “sag222” on eBay. I received two 232 to TTL modules from them and both have exactly the same prob as you described. I have just raised a case to get a refund. I had another board a few weeks ago from another supplier also with identical issues. I replaced the chip on that one because I had a spare “real” chip and it then worked fine.
Thanks for posting this – there is a real issue here with the cheap imports !
Shame to hear this. I was tempted by the Arduino “clones” on Banggood.
I’ve used Banggood previously to buy phones and been very happy with the results. Banggood tends to have a decent reputation but this would definitely put me in two minds about using them again.
Maybe Banggood should send you some of the product from their “new supplier” for you to test, though it sounds like even at free it would be costing you money.
Hi Anton,
Banggood has not sent me a sample of their new Arduino Nano. If they did I would test it and post the results here. I am actually a little tempted to order one just to see if the problem is indeed fixed.
Thanks
Booth for the articel as the respond.
I just get some SKU066316 in my hand and start googling for them.
I realy presuate the effort some people make to make the life moore easy.
I will build some timing device and are also using SKU099592.
The only dissapontment so far is that I only recevi tree packets of five!
But I belive in Santa Claus ;-)
@Anton Gully @Magnusson our new supplier’s boards are all right. Since I ‘ve changed our supplier, I ‘ve never heard this problem from my customer any more.
Dear Magnusson, if you want a new SKU066316, please write email to wangzhanxiemeijuan@banggood.cn
Thea
@Thea, I have now sent an e-mail to the address you gave and informed that if I get a new SKU066316, I will test it and report the results on this blog.
@Per Magnusson, I have replied you the email, and have arrange the resend issue for you. SKU066316 is in stock, I think it will be shipped to you soon.
Today I got the promised new Arduino Nano from Banggood. Unfortunately it still seems to have a faulty/fake/counterfeit FT232RL chip on it which makes it often malfunction and even crash the computer occasionally. I wrote a new blog post about it, here: http://axotron.se/blog/review-of-new-arduino-nano-from-bangood/
I just discovered banggood and but was dubious about the almost universal 5 star product ratings/reviews on their site. Your experience is certainly discouraging but unfortunately it reflects my own having bought low-cost Chinese electronics on ebay. Every now and then I need to be re-taught that you often get what you pay for. And often, you pay even more in time/money rectifying the problem. At least you honed your trouble-shooting skills right? So thanks for sharing your pain. It’ll save me some.
Hi noahmckinnon,
Yes, often you seem to get what you pay for. I bought a few headlamps though (from Dealextreme) some time ago and a few of those were very well worth the money. I also bought some ISM radio modules from Banggood and those were also a bargain (although many others sell similar items for similar prices). Unfortunately the modules were no longer available last time I checked, so I would have been screwed if I had based some design on it that I needed to make many more copies of.
You are right about the troubleshooting. After the initial frustration I decided to try to go to the bottom of the issue and figure out what was really going on. Not in order to save money, but to learn something and to be able to warn/help others.
Per
Hi,
I have found the blog where they state that laser engraved chips are REAL and printed ones are FAKE. This is totally opposite statement.
http://zeptobars.ru/en/read/FTDI-FT232RL-real-vs-fake-supereal
So who made a mistake?
Also notice, that latest driver from FTDI was even bricking fake chips by reseting silently their PID!
So identifying the correct marking for REAL FTDI is very important. Can you re-check your statement ?
Hi Montis,
I am 100% sure that the fake ones I got were all laser engraved and the good ones were printed. It may be that the kind of marking may vary both from the counterfeiters and from FTDI, so laser/printed marking may not be telling much at all, although all my counterfeit chips happened to be laser engraved and all my genuine chips happened to be printed.
Per
just been trapped in the same shit with mine…An afternoon trying to figure out what is wrong with this nano board… Not really equipped to unsolder the main chip, i’ll probably buy another one somewhere else :(