@digistump: I have on one box a 1.5.5R2 and verified the md5-checksum: Its just the same!
@Kaeltis:
- What does listcomports.exe respons, if you disconnect the DigiX?
- Can you disconnect more COM-Ports?, What is the result than?
The usual way, searching the internet for
"windows" "80010005" and perhaps
"VBS"leads to many type mismatch-errors.
I expect, that you have an device, where an NULL error is returned instead of some information, listcomports expects.
I really hate the way Arduino has implemented the solution with the two different VID/PID entries, depending in which state the DUE/DigiX is.
When a program is running, the DigiX has "2341:003E" and an associated COM-Port, e.g. COM10. When you now try to upload a new sketch, the only thing COM10 is used, is to trigger an erase followed by an reset, so that the CPU is starting in SAM-BA mode. In that case the VID/PID pair is: 03EB:6124, where Atmel is the owner of 03EB. For example on two of my boxes the DigiX is recognized as LEGO NXT brick in firmware update mode, because i have installed the LEGO-driver there.
As Windows reserves for each device an unique device name, 03EB:6124 will be recognized as e.g. COM14. That will change, when it is connected next time to another USB port!
So Arduino searches with listcomports.exe the devices, and takes the first one, it finds which has the VID/PID 03EB:6124.
Awful. When I tried to compare some issues between real DUE and two DigiX, my sketch went several times to the wrong device, when I have not disconnected the others before :-(
So I really like, what I am seeing in JTAG possibilities:
http://digistump.com/board/index.php/topic,1275.0.htmlHere each device is tied to one serial port, which will even not go away, when the DigiX reboots! So it is very stable to the programming host!
Furthermore you need no fancy USB-serial port checking in the firmware, as the Original DUE firmware does every loop. You are able to reprogram a running device without any problem.
When you wish to use the USB port for your own programs, the port is 100% yours, you have not to take care, what to core firmware does.
Maybe the one or other will join, working on that way.