Pages: [1]   Go Down
Author Topic: Connecting to Windows via USB  (Read 683 times)
0 Members and 1 Guest are viewing this topic.
USA
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Let's say I want to give the world a revolutionary musical instrument based on Arduino (naturally).
This instrument needs to be connected to any Windows PC by musicians, not computer programmers or other nerds like me.
I don't wan't to insult the good musicians by asking them to go to the Control Panel, middle-tripple click on USB Serial port in the Administrative Computer Management, find the driver, download an updated driver, try again, and then trow the revolutionary music istrument out of the window.

Is there a way I can make a setup program, which would install the correct driver without any user interaction?
Or maybe I don't even need a driver? Maybe I can somehow use the default device, which is installed when I connect the Arduino?
I want my customers to run the setup program once, connect the USB cable, and never think about the connection again.

I did do some research and could not find anything which I can easily incorporate into my setup.
I'm planning to use Arduino Micro, if it matters.

Thank you for all your helpful responses.
Logged

USA
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Now I see how helpful it is ask a question here: as soon as you post a question, an answer pops up all by itself.
I have no idea why would people suggest to update the driver manually from a control panel and by looking for it in the Arduino IDE folder.
Why not just run a setup executable from FTDI site ? ( http://www.ftdichip.com/Drivers/VCP.htm )

I guess now I need to find a way to uninstall the IDE driver and try to install the FTDI driver from scratch.
Hope it works.
Please let me know if you have tried installing the drivers this way on a new computer, I mean without installing the Arduino IDE first.
Logged

Fort Lauderdale, FL
Offline Offline
Faraday Member
**
Karma: 71
Posts: 6144
Baldengineer
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

If you are using the Micro, FTDI drivers won't get you very far.

Does the serial protocol even make sense for your project?  Since you are using the ATmega32u4 (the one in the Micro) You could write another USB Protocol Stack to use that is more appropriate, so you don't need to have the user install a driver.  Or you write a custom stack which forces them to install a driver.
Logged

Capacitor Expert By Day, Enginerd by night.  ||  Personal Blog: www.baldengineer.com  || Electronics Tutorials for Beginners:  www.addohms.c

USA
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I was right after all, it's not that simple. Dude, thanks for the reply, but how dow I know "whether the serial makes sense"?
I need to transfer those little things we call "bytes" between Arduino and PC.
Can you please give me a link to an example of a PC program, preferably in C++, which talks to Arduino over USB without a driver?
I could never find anything which shows how to talk to USB directly, there is always a driver which translates into it.

And I'm just curious, why Micro would be different?
What if I find out that I need to switch to another model, with more inputs or more memory? Is it a whole new story?

Thanks for your help.
Logged

Fort Lauderdale, FL
Offline Offline
Faraday Member
**
Karma: 71
Posts: 6144
Baldengineer
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

how dow I know "whether the serial makes sense"?
Figure out what you are sending and determine if serial makes sense.  That's not really something you can google and get an answer.

If it really is a small amount of data or it isn't time sensitive, then maybe serial does make sense.  However you have to weigh that against your issue of having people install something.  Look around the forums, there is a user who has a modified IDE that sets up the serial drivers (which aren't really drivers, it is just an INF file) automatically.  Maybe you can do what he is doing.


Can you please give me a link to an example of a PC program, preferably in C++, which talks to Arduino over USB without a driver?
No, I can't.  Why would anyone do that?  There's a good chance most operating systems wouldn't allow it or require some pretty interesting hooks to allow it.  You would do what every other hardware manufacturer does:  write a driver for your USB device and communicate with the driver.   There are many "protocols"/profiles/stacks already built into operating systems.  You can probably use one of those.  (e.g. Serial)


And I'm just curious, why Micro would be different?
Because it doesn't have a FTDI chip?
Logged

Capacitor Expert By Day, Enginerd by night.  ||  Personal Blog: www.baldengineer.com  || Electronics Tutorials for Beginners:  www.addohms.c

USA
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you, James. I'll think about writing my own driver.

Anybody else? Did anybody try to communicate with Arduino devices from Windows, without installing the IDE and updating the drivers?
Logged

Pages: [1]   Go Up
Jump to: