Funduino Mega 2560 USB upload connection problem

I have purchased a new Funduino MEGA 2560 board and trying to load the blink program. I have installed the IDE. I have a laptop running Windows 8 that has 4 3.0 USB ports. When plugging in the board the laptop sounds out that it recognizes a new device. In looking under device manager > ports (COM & LPT) I see that it has loaded "Arduino MEGA 2560 (Com3)" which I am assuming is the correct driver. But when I try to upload the program it is giving me an error message uploading to board:

"ser_drain():read error: The handle is invalid."

When I press the SHIFT key when uploading to give more details it gives me this error message:

"usbdev_open(): Did not find any USB device "usb" "

The boards green light is on and the yellow LED flashes slowly on and off. Every now and then the RX LED blinks but the TX light has never blinked.
Within the Arduino IDE program under Tools>Board
I have chosen "Arduino/Genuino Mega or 2560"
Processor: ATMega 2560
Port: COM3
I have tried to see if there is another driver I need to use for this board but not been successful.
I have swapped USB cables and get the same results.
Any one else had the same problem that can help me?
Thank you
Stephen Williams

When I press the SHIFT key when uploading to give more details

That's actually wrong information on the Troubleshooting page, I've reported it to the developers a little while ago but so far it's been ignored. When you do shift+upload it does Upload Using Programmer. That's why you get:

it gives me this error message:

"usbdev_open(): Did not find any USB device "usb" "

That's the expected error because you don't have a programmer connected. Unlike the "ser_drain():read error: The handle is invalid." error, it does not indicate any problem with your system or Arduino board.

To get more details during upload you need to do File > Preferences > Show verbose output during: > upload(check) then upload again. Note also that you may not be able to see the entire output in the black console window at the bottom of the Arduino IDE window. You can resize the console window and/or use the scroll bar to view all the output. After there is an error you will see a button "Copy error message" on the right side of the orange bar. If you click on that button it copies the entire output and adds some extra useful information and then you can paste it into a text editor to make it easier to read/search or paste it in a forum message(please use the </> code tags button!) to get help with the error.

Thank you for your reply and clarifying what the SHIFT key does. I checked the box under preferences for verbose output during upload and got the following output:
Arduino: 1.6.7 (Windows 8.1), Board: "Arduino Mega ADK"

Sketch uses 1,518 bytes (0%) of program storage space. Maximum is 253,952 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 8,183 bytes for local variables. Maximum is 8,192 bytes.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega2560 -cwiring -PCOM4 -b115200 -D -Uflash:w:C:\Users\STEPHE~2.SWI\AppData\Local\Temp\build9c9ef3bdfe2fccb480bc6e4bac749e41.tmp/Blink.ino.hex:i

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean,
Copyright (c) 2007-2009 Joerg Wunsch

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

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

avrdude: ser_drain(): read error: The handle is invalid.

Problem uploading to board. See for suggestions.

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

I have tried both the Arduino MEGA ADK and the Arduino MEGA 2560 and it gives the same results.
It seems it is having trouble finding a file. Could I have a library in the wrong place?
Thank you
Stephen Williams

I just noticed that I am set to COM3 when I check the driver but the IDE is trying to use COM4. Why is the program trying to communicate out of COM4?
Stephen Williams

I have no clue why it's doing that but you're the second person I've seen report this issue. Do you have any other ports available in the Tools > Port menu(yes I know they're not your Arduino)? If so, what happens if you try to upload with that port selected?

Not sure if it will help but you could try upgrading to Arduino IDE 1.6.9: That version was pretty good and shouldn't have any bugs that 1.6.7 doesn't have and some fixed ones too. I would skip 1.6.10 since it has an issue that could cause certain sketches to no longer compile and the Arduino AVR Boards 1.6.12 that comes with it is a nightmare.

I switched to 1.6.9 version but it did the same thing. I changed COM ports and it did not fix it. I had an old XP machine and I downloaded the Arduino software to that machine, It locked up downloading 1.6.9 so I tried 1.6.11 and it downloaded to the PC. I tried uploading to my board and it worked great!!. So then I tried version 1.6.11 on my windows 8 machine and it worked great too. So they have evidently fixed something in version 11. Thanks for your guidance to try different com ports and versions but I am up and running now.

Stephen Williams

Glad to hear! So far Arduino IDE 1.6.11/Arduino AVR Boards 1.6.13 seems to be a stable version. I've only seen one new bug that's actually caused by the IDE not handling incorrectly formatted 3rd party boards files gracefully.