Driver Ti Cc2540 Usb Cdc Download

-->

The Virtual COM port driver for the CC2540USB dongle and the LaunchPads can be found in (default): C: Program Files Texas Instruments SmartRFTools drivers vcp. BLE Device Monitor first use Serial port driver installation. On Windows 7 and 10 the serial port driver installs automatically when the BLE host is connected for the first time. To find the latest driver for your computer we recommend running our Free Driver Scan. TI CC2540 USB CDC Serial Port (COM3) - Driver Download. Vendor: Texas Instruments. TI CC2540 USB CDC Serial Port (COM3) - Driver Download. Vendor: Texas Instruments. Product: TI CC2540 USB CDC Serial Port (COM3). Hardware Class: Ports. Search For More Drivers.: Go! PC Matic Newsletter. Our weekly newsletter is packed with computer tips & tricks.

Versions supported

  • Windows 10
  • Windows 8.1

Applies to

  • Device manufacturers of CDC Control devices

Microsoft-provided in-box driver (Usbser.sys) for your Communications and CDC Control device.

In Windows 10, the driver has been rewritten by using the Kernel-Mode Driver Framework that improves the overall stability of the driver.

  • Improved PnP and power management by the driver (such as, handling surprise removal).
  • Added power management features such as USB Selective Suspend.

In addition, UWP applications can now use the APIs provided by the new Windows.Devices.SerialCommunication namespace that allow apps to talk to these devices.

Usbser.sys installation

Load the Microsoft-provided in-box driver (Usbser.sys) for your Communications and CDC Control device.

Note

If you trying to install a USB device class driver included in Windows, you do not need to download the driver. They are installed automatically. If they are not installed automatically, contact the device manufacturer. For the list of USB device class driver included in Windows, see USB device class drivers included in Windows.

Windows 10

In Windows 10, a new INF, Usbser.inf, has been added to %Systemroot%Inf that loads Usbser.sys as the function device object (FDO) in the device stack. If your device belongs to the Communications and CDC Control device class, Usbser.sys is loaded automatically.You do not need to write your own INF to reference the driver. The driver is loaded based on a compatible ID match similar to other USB device class drivers included in Windows.

USBClass_02

USBClass_02&SubClass_02

  • If you want to load Usbser.sys automatically, set the class code to 02 and subclass code to 02 in the Device Descriptor. For more information, see USB communications device class. With this approach, you are not required to distribute INF files for your device because the system uses Usbser.inf.
  • If your device specifies class code 02 but a subclass code value other than 02, Usbser.sys does not load automatically. Pnp Manager tries to find a driver. If a suitable driver is not found, the device might not have a driver loaded. In this case, you might have to load your own driver or write an INF that references another in-box driver.
  • If your device specifies class and subclass codes to 02, and you want to load another driver instead of Usbser.sys, you have to write an INF that specifies the hardware ID of the device and the driver to install. For examples, look through the INF files included with sample drivers and find devices similar to your device. For information about INF sections, see Overview of INF Files.

Note

Microsoft encourages you to use in-box drivers whenever possible. On mobile editions of Windows, such as Windows 10 Mobile, only drivers that are part of the operating system are loaded. Unlike desktop editions, it is not possible to load a driver through an external driver package. With the new in-box INF, Usbser.sys is automatically loaded if a USB-to-serial device is detected on the mobile device.

Windows 8.1 and earlier versions

In Windows 8.1 and earlier versions of the operating system, Usbser.sys is not automatically loaded when a USB-to-serial device is attached to a computer. To load the driver, you need to write an INF that references the modem INF (mdmcpq.inf) by using the Include directive. The directive is required for instantiating the service, copying inbox binaries, and registering a device interface GUID that applications require to find the device and talk to it. That INF specifies 'Usbser' as a lower filter driver in a device stack.

The INF also needs to specify the device setup class as Modem to use mdmcpq.inf. Under the [Version] section of the INF, specify the Modem and the device class GUID. for details, see System-Supplied Device Setup Classes.

For more information, see this KB article.

Configure selective suspend for Usbser.sys

Usb

Starting in Windows 10, Usbser.sys supports USB Selective Suspend. It allows the attached USB-to-serial device to enter a low power state when not in use, while the system remains in the S0 state. When communication with the device resumes, the device can leave the Suspend state and resume Working state. The feature is disabled by default and can be enabled and configured by setting the IdleUsbSelectiveSuspendPolicy entry under this registry key:

To configure power management features of Usbser.sys, you can set IdleUsbSelectiveSuspendPolicy to:

  • '0x00000001': Enters selective suspend when idle, that is, when there are no active data transfers to or from the device.

  • '0x00000000': Enters selective suspend only when there are no open handles to the device.

That entry can be added in one of two ways:

  • Write an INF that references the install INF and add the registry entry in the HW.AddReg section.

  • Describe the registry entry in an extended properties OS feature descriptor. Add a custom property section that sets the bPropertyName field to a Unicode string, 'IdleUsbSelectiveSuspendPolicy' and wPropertyNameLength to 62 bytes. Set the bPropertyData field to '0x00000001' or '0x00000000'. The property values are stored as little-endian 32-bit integers.

    For more information, see Microsoft OS Descriptors.

Develop Windows applications for a USB CDC device

If you install Usbser.sys for the USB CDC device, here are the application programming model options:

  • Starting in Windows 10, a Windows app can send requests to Usbser.sys by using the Windows.Devices.SerialCommunication namespace. It defines Windows Runtime classes that can use to communicate with a USB CDC device through a serial port or some abstraction of a serial port. The classes provide functionality to discover such serial device, read and write data, and control serial-specific properties for flow control, such as setting baud rate, signal states.

  • In Windows 8.1 and earlier versions, you can write a Windows desktop application that opens a virtual COM port and communicates with the device. For more information, see:

    Win32 programming model:

    • .NET framework programming model:

Related topics


NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.


Cc2540
  • 1Prerequisites
    • 1.1Configuring the EVM Hardware

Prerequisites[edit]

  • A DaVinci DM355 EVM (USB peripheral device)
  • A computer running Linux (USB Host)
  • TI DaVinci LSP kernel source
  • A USB A to mini-B cable

Configuring the EVM Hardware[edit]

This section will cover how to configure the DaVinci hardware as a USB peripheral device.

DM355[edit]

  • J9 jumpered
  • J10 un-jumpered

Host PC[edit]

Connect the USB cable to a standard USB A socket. Connect the USB Mini-B end of the cable to the DM355 EVM (J5).

Kernel Config[edit]

USB Support:

Ti Cc2540

Driver Ti Cc2540 Usb Cdc Download

USB Gedget Support:

Downloads

Network Operation[edit]

Cdc

Driver Ti Cc2540 Usb Cdc Downloads

Connect the DM355 EVM to the Host PC via the USB cable.

Set the DM355 up as a Network Gadget:

Output from dmesg on the DM355 EVM:

Usb Cc2540 Hid Driver

The Host PC (running Linux) should have automatically loaded the necessary drivers for the USB CDC class: cdc_ether and usbnet.

Bring the network up and ping the USB device:

Output from dmesg on the Host PC:

Throughput Testing[edit]

Netcat is a very useful tool for sending and receiving data over the network.

Setup the DM355 EVM to receive data from the Host PC:

Create a test file on the Host PC and send this over the network to the USB device:

Therefore the throughput = ( 100MB * 8 / 68 sec ) = 11.76 Mbps

Conclusion[edit]

Ti Cc2540 Dongle Driver

  • The g_ether driver does not seem to work when musb_hdrc is using DMA, and tests using the g_file_storage driver show that PIO is 5 times slower. Perhaps patches have been submitted to fix this.
  • The above result is very close to 12Mbps, which is the maximum for full-speed USB. Is this a coincidence, or is something preventing high-speed USB rates ?

I expected the throughput to be much higher...

{{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Networking over USB here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article Networking over USB here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article Networking over USB here.DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article Networking over USB here.MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article Networking over USB here.OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Networking over USB here.OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article Networking over USB here.MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article Networking over USB here.For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article Networking over USB here.

}}

Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity

Retrieved from 'https://processors.wiki.ti.com/index.php?title=Networking_over_USB&oldid=20164'