- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, I want to use the CCG3 (3120) for the typeC to DP (or HDMI) alt mode, and i also needs an usb HID mouse like function. The ordinary way is use an USB hub. but i want to use CCG3 usb function, and use composite device to simulate a usb mouse, it's possiable or not?
Thanks.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Astankvai,
If you need billboard (typeC to DP (or HDMI) alt mode) and also a USB HID mouse, so far, CCG3 cannot support it. Since billboard is mandatory for ALT mode and occupied USB interface. The Billboard is HID class. If you need to support HID mouse without any hardware changes (add a USB2.0 hub), the billboard cannot be supported.
Best Regards,
Lisa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Lisz, I know the billboard device occpied the usb. I means use a usb composite device to emulate 2 interface. one is for billboard device, and another is for the hid mouse.
and i checked the code, the interface num is 0 in the device desciriptor? it's normal? or the SDK have bug? My sdk version is 3.1.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi user_6629094,
I was mistake your requirements. I thought you are going to connect HID mouse directly. If you just want to add a interface on HID and parallel with billboard. You could add additional interface under HID description. We have example you could reference. The example code is CYPD3123 CTD firmware example which is include billboard and USB to I2C bridge.
Best Regards,
Lisa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Lisz,
Thanks and I was checking now.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Lisz,
thanks, we just made the board and will test it. thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi!
We have managed to hack the CCG3 DP dongle code-base from the SDK so that it supports additional endpoints in parallell to the built-in billboard device. When we connect a PC we get both the Billboard device and our custom HID device. There is already a HID device that is used by the bootloader and we change that a bit. Check in file usb_hid.h för the device descriptors. Then you have to modify usb_hid.c file to respond to your own USB HID status reports etc.
I'm not sure if the billboard device is still working (we are not using that in our case), but at least in windows it pops up the dialog and under Device Manager there is still a Billboard device.
Cheers
Olof
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Olof,
used the composite device via changing the interface number?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi!
Device descriptor below. Again, we are still in hack-phase so I can't guarantee this is the way to do it, but HID communication works (status reports) and I believe the Billboard device is still operational since it pops up on Windows.
I don't have a dump of how this looked like before we modified it, but I believe it looked the same (in the CYPD3120-40LQXI_dp_dongle project) and the HID device is used for the booloader to download new firmeware into a dongle over USB HID.
The device is a USB-C LED Driver by the way, world's first
/Olof
Information for device LED Driver (VID=0x04B4 PID=0x3120):
Connection Information:
------------------------------
Device current bus speed: FullSpeed
Device supports USB 1.1 specification
Device supports USB 2.0 specification
Device address: 0x0003
Current configuration value: 0x01
Number of open pipes: 1
Device Descriptor:
------------------------------
0x12 bLength
0x01 bDescriptorType
0x0201 bcdUSB
0x00 bDeviceClass
0x00 bDeviceSubClass
0x00 bDeviceProtocol
0x08 bMaxPacketSize0 (8 bytes)
0x04B4 idVendor
0x3120 idProduct
0x0000 bcdDevice
0x01 iManufacturer "Ochno"
0x02 iProduct "LED Driver"
0x03 iSerialNumber "11AD1D0438F24705101B0B00"
0x01 bNumConfigurations
Configuration Descriptor:
------------------------------
0x09 bLength
0x02 bDescriptorType
0x002B wTotalLength (43 bytes)
0x02 bNumInterfaces
0x01 bConfigurationValue
0x04 iConfiguration "Billboard Configuration"
0x80 bmAttributes (Bus-powered Device)
0x32 bMaxPower (100 mA)
Interface Descriptor:
------------------------------
0x09 bLength
0x04 bDescriptorType
0x00 bInterfaceNumber
0x00 bAlternateSetting
0x00 bNumEndPoints
0x11 bInterfaceClass
0x00 bInterfaceSubClass
0x00 bInterfaceProtocol
0x05 iInterface "Billboard Interface"
Interface Descriptor:
------------------------------
0x09 bLength
0x04 bDescriptorType
0x01 bInterfaceNumber
0x00 bAlternateSetting
0x01 bNumEndPoints
0x03 bInterfaceClass (Human Interface Device Class)
0x00 bInterfaceSubClass
0x00 bInterfaceProtocol
0x06 iInterface "Control Interface"
HID Descriptor:
------------------------------
0x09 bLength
0x21 bDescriptorType
0x0111 bcdHID
0x00 bCountryCode
0x01 bNumDescriptors
0x22 bDescriptorType (Report descriptor)
0x0062 bDescriptorLength
Endpoint Descriptor:
------------------------------
0x07 bLength
0x05 bDescriptorType
0x81 bEndpointAddress (IN endpoint 1)
0x03 bmAttributes (Transfer: Interrupt / Synch: None / Usage: Data)
0x0040 wMaxPacketSize (1 x 64 bytes)
0xFF bInterval
Microsoft OS Descriptor is not available. Error code: 0x0000001F
String Descriptor Table
--------------------------------
Index LANGID String
0x00 0x0000 0x0409
0x01 0x0409 "Ochno"
0x02 0x0409 "LED Driver"
0x03 0x0409 "11AD1D0438F24705101B0B00"
0x04 0x0409 "Billboard Configuration"
0x05 0x0409 "Billboard Interface"
0x06 0x0409 "Control Interface"
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Olof,
Thanks for your answer.
I'll try and find out the result.