Pages: [1]   Go Down
Author Topic: Navie USB port drivers (Arduino Due mode)  (Read 6297 times)
0 Members and 1 Guest are viewing this topic.
Wahiawa, Hawaii
Offline Offline
God Member
*****
Karma: 29
Posts: 600
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

For the Native USB port I have installed the "BOSSA programming port" under Windows XP Pro SP3.  It works okay for uploading a sketch.

However, once the sketch runs the usb port changes to "Arduino Due" mode and the driver does not install.  It appears that Windows XP cannot find the driver?  Is the "Arduino Due" usb driver supported under Windows XP?  Or am I misunderstanding how the Native port works?

Logged

Wahiawa, Hawaii
Offline Offline
God Member
*****
Karma: 29
Posts: 600
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Windows Device Manager lists the Arduino Due, Hardware ids:
USB\Vid_2341&Pid_003e&Rev_0100
USB\Vid_2341&Pid_003e

However the included ArduinoDue.inf in the drivers folder is showing:
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00
[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00

Could this be why they are not matching?

Logged

Austin, TX
Offline Offline
God Member
*****
Karma: 12
Posts: 524
carpe diem
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Try removing the &MI_00 from the description in the .inf and try to install again.

The way that Windows tries to find a match is to match the VID and PID first and then will get more specific depending on what is specified in the .inf
If we don't want or need to have different drivers for specific REVs, etc. then just specifying the VID and PID is sufficient for Windows to find a matching device.
Logged

Wahiawa, Hawaii
Offline Offline
God Member
*****
Karma: 29
Posts: 600
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Yep, that works by removing the &MI_00 from the end of the line.  Windows XP now correctly installs the Arduino Due driver for the Native USB port.  I now can use it for uploading as well as serial communications.

Logged

Wahiawa, Hawaii
Offline Offline
God Member
*****
Karma: 29
Posts: 600
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I don't know if the "&MI_00" is need for other Windows versions, so instead of removing it you can also try appending additional hardware Ids to the end of the line.  This works great for my Windows XP Pro SP3 installation.

To summarize if you are having trouble installing the "Arduino Due" USB driver for the Native USB Port for Windows, you may need to edit the \arduino-1.5.1r2\drivers\Arduino Due.inf file:

Change these lines from:
Code:
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00

[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00


To these lines(appended Hardware Ids):
Code:
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00, USB\VID_2341&PID_003E

[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00, USB\VID_2341&PID_003E

Logged

Parma/Italy
Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Having trouble installing the "Arduino Due" USB driver for the Native USB Port for Windows XP Pro SP3, I edited the \arduino-1.5.1r2\drivers\Arduino Due.inf file as suggested :

[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_2341&PID_003E&MI_00, USB\VID_2341&PID_003E

Windows XP now correctly installs the Arduino Due driver for the Native USB port.
But sketch "keyboarSerial" don't work.
I upload sketch (ok), open Serial Monitor, digit a letter (inCHAR) and press "send", no replay (inChar+1).
What is the problem?


Logged

Austin, TX
Offline Offline
God Member
*****
Karma: 12
Posts: 524
carpe diem
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


You will need to apply this commit to your Arduino code base to solve your problem ( a release with this fix has not been made, yet ):
https://github.com/arduino/Arduino/commit/70351fc34150b1288079996839082e751b176821

Read this thread for all the details:
http://arduino.cc/forum/index.php/topic,129869.0.html

With the changes above, you should uninstall the driver, change back the .inf to original, then install the driver with the original .inf
Logged

Parma/Italy
Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have done.
Windows XP correctly installs the Arduino Due driver for the Native USB port.
But sketch "KeyboarSerial" still don't work.
Logged

Parma/Italy
Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have done some test.
With this code
void setup() {
  Keyboard.begin();
}
 void loop() {
delay(2000);
  Keyboard.press(KEY_PAGE_UP);
     Keyboard.releaseAll();
 }

It work ok.

With  "KeyboarSerial" sketch I digit a letter in the Serial Monitor window,press "send", but no replay (inChar+1) I recive.
Is 't correct this test of the sketch ?
Thanks.


After others tests I founded that if connect Arduino Due to programming Port "KeybordSerial" sketch work as aspected.
« Last Edit: December 13, 2012, 11:03:55 am by magi2556 » Logged

Forum Administrator
Milano, Italy
Offline Offline
Sr. Member
*****
Karma: 23
Posts: 292
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


The problem is in the Serial port numbering on the Due.

Serial => RX0/TX0 and Programming Port
SerialUSB => Native Port

To make the example working with only one cable, you should use SerialUSB instead of Serial, but this will make the example fails on Arduino Leonardo (and derivatives)
Logged

C.

Pages: [1]   Go Up
Jump to: