View previous topic :: View next topic |
Author |
Message |
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
Queries regarding usage of CCS USB-CDC drivers. |
Posted: Mon Oct 03, 2011 11:28 pm |
|
|
Hi,
I have managed to develop a USB based application using 18F4550 mcu. I used the CCS's usb_cdc.h driver code in the PICC folder.
I used the Microchip Vendor ID for my application.
My question..
1. is it legal to use the Microchip's USB Vendor ID in my commercial units? I think our production would not exceed 100000 units, I believe Microchip has a license to sub let their Vendor ID to others provided quantities do not exceed the 100000 limit.
2. Is it Ok to use the CCS driver (usb_cdc.h) without modification in my commercial projects ??
3. Also Is it legal to modify the descriptor in the usb_desc_cdc.h file so that it reflects my company's name instead of CCS ?? Can the same be done for the cdc_NTXP.inf driver file provided in the PICC folder ??
Of course the ideal solution would be develop a driver for the application but I think this could take considerable time and effort, using readily available drivers would help a lot.
thanks
a |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19504
|
|
Posted: Tue Oct 04, 2011 6:38 am |
|
|
On the Microchip VID, you need to ask them. If I remember there is a fairly clear licensing document available from them.
On the CCS code drivers/examples, read the last couple of lines in the header supplied with them all:
"Derivative programs created using this software in object code form are not restricted in any way."
The .inf file will have to be modified to use your different VID/PID, and if you look is identical to ones supplied for many other products anyway.
Best Wishes |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
|
Posted: Tue Oct 04, 2011 7:33 am |
|
|
thanks for clearing up the doubts.
I have modified the descriptor file, it works perfectly on Windows system, but it does not work in Linux (Ubuntu 64 bit OS)
What modification would be required to make it work on Linux ??
dmesg shows the device as ttyACM0 and not the usual ttyUSB0
I am searching Google for this kind of problem, I don't think it should be difficult.
thanks
a |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19504
|
|
Posted: Tue Oct 04, 2011 8:05 am |
|
|
Just like with the .inf file in Windows, Linux needs to be told to use the generic driver, for your VID/PID. The best method will depend on the age of the kernel involved. On older systems, 'man hotplug' should help, while on newer systems, 'man udev'. On these latter systems, normally there should be a directory "/etc/udev/rules.d", and can then create a 'rules' file inside this, with an 'add' rule, for your VID/PID, telling udev what to do when it sees this VID/PID.
Have a look at:
<http://blog.bofh.it/debian/id_267>
Which shows what is needed for Debian.
While this thread, gives a more generic overview of adding rules to udev:
<http://piklab.sourceforge.net/files/libusb_udev_hotplug.txt>
Best Wishes |
|
|
E_Blue
Joined: 13 Apr 2011 Posts: 417
|
|
Posted: Tue Oct 04, 2011 8:27 am |
|
|
Thanks for the info Ttelmah!
I will need this for a personal project. _________________ Electric Blue |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
RE; |
Posted: Thu Oct 06, 2011 2:40 am |
|
|
Thanks for the information, I have tried out the solution given in the link, but for some reason I get an invalid directory.
Meanwhile I will post the problem in an Ubuntu forum, maybe someone has worked out a solution
thanks anyway.
a |
|
|
|