Arduino uploading problem (USB problem?!?!)

Arduino: 1.8.5 (Windows 10), Board: "Arduino/Genuino Uno"

Sketch uses 928 bytes (2%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM1 -b115200 -D -Uflash:w:C:\Users\tmsc\AppData\Local\Temp\arduino_build_872977/Blink.ino.hex:i 

avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM1
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: ser_open(): can't open device "\\.\COM1": The system cannot find the file specified.



avrdude done.  Thank you.

Problem uploading to board.  See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

My problem is with this error message.
In short, I purchased an Arduino today, but since I'm new to the Arduino community, I didn't know that there were clones being sold. I accidentally happened to have purchased one. And I've spent half of my day trying to figure out what could be causing this.

The problem is uploading code to the Arduino UNO itself. I decided to try and blink an LED first, to see if it works. Well, it didn't. Next, I tested on port 13 to see if just the Arduino clone was faulty, it wasn't, it worked and I knew there was a bootloader for sure as well. Then I found out that unlike the original Arduinos, I had to install a CH340 driver.

This is where the problem comes in. In the Device manager, there's nothing indicating that there's an Arduino connected. For some people there might be a PORT COM present that needs to be changed, or there just might be an "Unknown device" that needs to be set up with the proper driver. For me, there's nothing. Could that be an USB issue? I mean, the USB technically does work, since it powers up the Arduino, but does that mean it could be faulty (not being able to upload code)? ? ?

In case the information is needed, I tried uploading code to the Arduino on the following platforms :
Two laptops and a PC with Windows 10 64-bit (Fall Creators Update)
A laptop with an Ubuntu 64-bit 16.04 (Xenial)

There are clones and there are clones.

I have clone Arduino Unos which were not purchased from arduino.cc but they do not need the CH340 driver because the boards do not have the CH340 chip.

There are clones which have that chip and they need the driver.

I am not understanding what you mean by testing on port 13.

Is there anything in the tools -> ports menu? Windows COM port numbering is weird, it might not be COM1.

Do you get the "new hardware" sound when you plug it in? If not, that's a really bad sign... DOA clones are rare, but they do exist (in at least one case I've fixed one by locating a bad solder joint on the board and reflowing it).

Sometimes they are just not bootloaded too. Had one from Adafruit like that - had some sketch on it, but no bootloader, and that Lilypad model didn't have the ICSP pins broken out. They replaced it. Later I got a SMD programming adapter cable and bootloaded it myself.
Hobbyking still carries the header to 32 TQFP, have to search for Atmega. I used some male-male wires to mate it to my AVR ISP MKii

The pins in the white block are pressed in place over Reset, Power, Gnd, SCK, MISO, MOSI, and you can install a bootloader that way.

Try a different USB cable.

Am unbootloaded board gives a different error (sync error). He's not getting that far.

Good call on the usb cable suggestion, there are lots of data only and straight up defective usb cables

It is almost certainly NOT COM 1 or COM 2 as they are generally reserved in the windows stack.

How do you know it was a CH340/341 ?
There are a few variations on a few clones so a decent picture or the text from the chip near the USB port would be great for us to know for sure.

As its windows (and 10 at that) there are a few possible issues.

  1. Ensure you are using a USB 2.0 port.

  2. Dont use USB 3.0 cables

  3. Ensure you installed the drivers as Administrator or turned OFF driver enforcement.

  4. Where exactly did you get the drivers (LINK) as there are some known BAD drivers. (please dont tell me you used a driver finder program as most of those can be pretty nasty).

  5. Unknown device but with what error code in device manager (maybe 10) which relates back to driver ?

I have clone Arduino Unos which were not purchased from arduino.cc but they do not need the CH340 driver because the boards do not have the CH340 chip.

I had to assume, it doesn't say anything on the chip. But even if it did, there's nothing in the device manager to install the driver on.

Is there anything in the tools -> ports menu? Windows COM port numbering is weird, it might not be COM1.

It's greyed out. I doubt the IDE would be able to detect it, if the device manager can't. I'm aware of the COM port being a different number. But there's not even a COM port to begin with. (Or anything else indicating a device connected)

Sometimes they are just not bootloaded too. Had one from Adafruit like that - had some sketch on it, but no bootloader, and that Lilypad model didn't have the ICSP pins broken out. They replaced it. Later I got a SMD programming adapter cable and bootloaded it myself.

I don't know, what exactly was the error message you got? If it had a sketch uploaded, but not a bootloader and was perfectly able to upload code, I doubt it would complain about a missing port.

An unbootloaded board gives a different error (sync error). He's not getting that far.

Good call on the usb cable suggestion, there are lots of data only and straight up defective usb cables

Huh, on Linux with a CH340 driver compiled and loaded it gives a sync error. If we don't come to a conclusion, I might buy a new (original) Arduino though.

It is almost certainly NOT COM 1 or COM 2 as they are generally reserved in the windows stack.

It defaults to those, even if I do change the command line argument to a different port, it won't work. No ports or "Other devices" or "Unknown devices" are visible in the device manager.

How do you know it was a CH340/341 ?
There are a few variations on a few clones so a decent picture or the text from the chip near the USB port would be great for us to know for sure.

I don't know if I said it in the original post already, but there's nothing on the chip. So I just had to assume.

  1. Ensure you are using a USB 2.0 port.

  2. Dont use USB 3.0 cables

  3. Ensure you installed the drivers as Administrator or turned OFF driver enforcement.

  4. Where exactly did you get the drivers (LINK) as there are some known BAD drivers. (please dont tell me you used a driver finder program as most of those can be pretty nasty).

  5. Unknown device but with what error code in device manager (maybe 10) which relates back to driver ?

1,2. I'm definitely using the proper cable in the right USB port.
3. Have already disabled the driver signature enforcement.
4. Many refer to WCH's website as the "official source for the CH340 driver", so I downloaded it from there.
No, I NEVER use driver finder software.
5. Since it didn't appear in the device manager, I decided to "add legacy hardware", hopefully somehow it magically does the job and then tried installing the driver, well it didn't work.

You forgot this:

gdsports:
Try a different USB cable.

You may have a charge-only or defective USB cable.

In windows you dont need to change any command line options for the IDE or com ports so not sure what you are attempting ?

Are you 100% sure there is no COM & LPT option in device manager in windows ?

In win 10 it may be listed by "show hidden devices"

As I said before include a picture as it would let us work out better what you have.

WCH was the correct place to go if it is a CH340/341.

Please make sure NOTHING else is connected to the board during set up and testing.

In windows you dont need to change any command line options for the IDE or com ports so not sure what you are attempting ?

Are you 100% sure there is no COM & LPT option in device manager in windows ?

In win 10 it may be listed by "show hidden devices"

I saw JSON files with default data being exposed for the IDE to use, one of which was the COM port being set to 1, I tried changing it but it still passes PCOM1 as an argument to avrdude, that's what I'm trying to achieve. I might try doing it manually, instead of relying on the IDE. "You don't have to do that on Windows" is false. Since the Arduino IDE itself does that.

Yes, I'm absolutely one hundred THOUSAND percent sure there's NOTHING in the device manager. One of the first things I tried yesterday was to show hidden devices, nothing.

As I said before include a picture as it would let us work out better what you have.

I might do that when I get home, but I don't think it would change anything. There's nothing printed on the USB-to-serial chip.

You may have a charge-only or defective USB cable.

I'm starting to think that it might be defective. Literally no one faces such issues.

Quite often it is possible to identify a UNO usb chip by its outline / package.

If you cannot see any listing for COM & LPT ports in your device manager then something in your windows installation my be faulty. Trust me it is there.

Until you resolve that under windows then there is little you can do in that OS.

Are you the sole owner of the windows computers ?
Some borrowed EDUCATIONAL / COMPANY computers may have a policy in effect to restrict access.

Clone USB cables are known for poor quality and until you have tried a couple more then once again its not much use anyone offering much more help.

IHateClones:
I'm starting to think that it might be defective. Literally no one faces such issues.

Actually it's a fairly common cause of problems reported here. You should verify the cable works for data on another device or use a known-good cable.

If you cannot see any listing for COM & LPT ports in your device manager then something in your windows installation my be faulty. Trust me it is there.

Until you resolve that under windows then there is little you can do in that OS.

Are you the sole owner of the windows computers ?
Some borrowed EDUCATIONAL / COMPANY computers may have a policy in effect to restrict access.

Clone USB cables are known for poor quality and until you have tried a couple more then once again its not much use anyone offering much more help.

Oh no, trust me. It ISN'T there. Yes, the computers are mine, I thought it could've ran with restricted access too and have already ran it on all machines as an administrator. It might be the USB, it's probably a POS, although only on the Ubuntu machine it printed out a "n out of 10 sync error resp=somehexadecimalnumber"

That msg in Linux is pretty much the same as you would see under windows in the IDE if you had the correct COM port but a fail in between for communications.

If there is no com & lpt port listing in windows device manager then I doubt it is just the USB cable and something with the windows boxes that is wrong or a rare and exceptionally bad clone with maybe bad soldering that you should check.

For Linux see this article.

gdsports:
For Linux see this article.

Diagnosing Arduino Problems in Linux | Majenko's Hardware Hacking Blog

It's not a Linux problem.

He's got a bigger problem if what he claims is true and the Arduino doesn't even show up in Windows 10 Device Manager.

I have a laptop running Windows 10 though not 1709, and I have no problems with IDE 1.8.3 and my Arduino Uno clone.

Choices are:

  1. bad port on his PC
  2. bad cable
  3. bad USB chip on Arduino

He's got a bigger problem if what he claims is true and the Arduino doesn't even show up in Windows 10 Device Manager.

I have a laptop running Windows 10 though not 1709, and I have no problems with IDE 1.8.3 and my Arduino Uno clone.

Choices are:

  1. bad port on his PC
  2. bad cable
  3. bad USB chip on Arduino

Umm, what makes you think I'm lying?? And yes, it's very likely because of my first Arduino purchase being a clone. I'm just going to draw the conclusion that it's either a messed up USB or the clone's USB-to-serial chip being faulty. I will just go and buy an original one and a new USB to be sure.

Hey i have some kind of trouble close to your trouble. I try everything possible, try different arduino uno card ( real, fake...), tryc the CH driver, etc...Everything work well on linux but I need it on my windows 10. Do you find the solution ? I think there is some driver issues with windows 10.