- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are using the CYUSB4347 in one of our projects, we are able to see it in the Windows 10 Device Manager:
Device USB\VID_04B4&PID_2347\5&12ec354d&0&1 was configured.
Driver Name: usbhub3.inf
Class Guid: {36FC9E60-C465-11CF-8056-444553540000}
Driver Date: 11/08/2018
But we cannot “Get Status” via the EZ-USB HX3PD Configuration Utility:
Querying dock status
Opening handle to dock
No dock devices found
Connecting device failed
Failed to connect device
HX3PD get status failed
Consequently we are not able to update the firmware. Any pointers what to try or look at to solve this?
Thanks,
Brett
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
It does seem like the firmware update process is able to proceed more with the timeout increased so I think it might be a hardware issue and more specifically signal integrity issue in this case. After reviewing the schematics, I had the following comments-
Please ensure that the power sequencing is followed as per- https://www.cypress.com/file/410976/download
Pull up resistors of 10K and 100K are recommended to be connected on the OVCUR and PRWEN pins respectively.
Please ensure that the Reset timings are met with respect to 3.3V and 1.2V as shown in section 2.4 of the above App Note.
-Kindly also check the layout guidelines mentioned in the App Note and if they are met on your board.
-Please let us know if you were able to get the correct DMC enumeration and firmware update to complete when using the same cable with our EVK?
-Although you mentioned that the SWD pins arent brought out on the board, would it be possible to somehow update the DMC firmware?
Best Regards,
Sananya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Brett,
The HX3PD Configuration Utility uses the DMC vendor interface to update the firmware to the DMC, PD and Hub controllers in HX3PD. The logs shown indicate that the DMC may not have enumerated properly on the host and hence the utility may not be able to detect the dock.
Please check if the DMC is present on DS8 of the hub in device manager or USBView application. If not, please update the DMC firmware through SWD programming and once it enumerates, you could check for the status on the utility and update all the components with the composite image.
Best Regards,
Sananya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sananya,
Thank you for your response - Here is the USBView info.
Connecting from Root Hub Port 3 to the Device. I don't see anything connected to any of the ports 1-8 on the Device. Perhaps that device is being held in reset???
[Port3] : Generic USB Hub
External Hub: USB#VID_04B4&PID_2347#5&12ec354d&0&3#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Is Port User Connectable: yes
Is Port Debug Capable: no
Companion Port Number: 19
Companion Hub Symbolic Link Name: USB#ROOT_HUB30#4&30f696d2&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Protocols Supported:
USB 1.1: yes
USB 2.0: yes
USB 3.0: no
Hub Power: Self Power
Hub type: USB 2.0 Hub
Number of Ports: 8
Power switching: Individual
Compound device: No
Over-current Protection: Individual
High speed capable: Yes
High speed: Yes
Multiple transaction translations capable: Yes
Performs multiple transaction translations simultaneously: Yes
Hub wakes when device is connected: No
Hub is bus powered: No
Hub is root: No
---===>Device Information<===---
English product name: "Cypress HX3PD Hub"
ConnectionStatus:
Current Config Value: 0x01 -> Device Bus Speed: High (is SuperSpeed or higher capable)
Device Address: 0x3B
Open Pipes: 1
===>Device Descriptor<===
bLength: 0x12
bDescriptorType: 0x01
bcdUSB: 0x0210
bDeviceClass: 0x09 -> This is a HUB Device
bDeviceSubClass: 0x00
bDeviceProtocol: 0x02
bMaxPacketSize0: 0x40 = (64) Bytes
idVendor: 0x04B4 = Cypress Semiconductor
idProduct: 0x2347
bcdDevice: 0x0616
iManufacturer: 0x01
English (United States) "Cypress Semiconductor"
iProduct: 0x02
English (United States) "Cypress HX3PD Hub"
iSerialNumber: 0x00
bNumConfigurations: 0x01
---===>Open Pipes<===---
===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x03 -> Interrupt Transfer Type
wMaxPacketSize: 0x0002 = 1 transactions per microframe, 0x02 max bytes
bInterval: 0x0C
---===>Full Configuration Descriptor<===---
===>Configuration Descriptor<===
bLength: 0x09
bDescriptorType: 0x02
wTotalLength: 0x0029 -> Validated
bNumInterfaces: 0x01
bConfigurationValue: 0x01
iConfiguration: 0x00
bmAttributes: 0xE0 -> Self Powered
-> Remote Wakeup
MaxPower: 0x00 = 0 mA
===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x00
bAlternateSetting: 0x00
bNumEndpoints: 0x01
bInterfaceClass: 0x09 -> HUB Interface Class
bInterfaceSubClass: 0x00
bInterfaceProtocol: 0x01
iInterface: 0x00
===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x03 -> Interrupt Transfer Type
wMaxPacketSize: 0x0002 = 1 transactions per microframe, 0x02 max bytes
bInterval: 0x0C
===>Interface Descriptor<===
bLength: 0x09
bDescriptorType: 0x04
bInterfaceNumber: 0x00
bAlternateSetting: 0x01
bNumEndpoints: 0x01
bInterfaceClass: 0x09 -> HUB Interface Class
bInterfaceSubClass: 0x00
bInterfaceProtocol: 0x02
iInterface: 0x00
===>Endpoint Descriptor<===
bLength: 0x07
bDescriptorType: 0x05
bEndpointAddress: 0x81 -> Direction: IN - EndpointID: 1
bmAttributes: 0x03 -> Interrupt Transfer Type
wMaxPacketSize: 0x0002 = 1 transactions per microframe, 0x02 max bytes
bInterval: 0x0C
===>BOS Descriptor<===
bLength: 0x05
bDescriptorType: 0x0F
wTotalLength: 0x002A
bNumDeviceCaps: 0x03
===>USB 2.0 Extension Descriptor<===
bLength: 0x07
bDescriptorType: 0x10
bDevCapabilityType: 0x02
bmAttributes: 0x00000006 -> Supports Link Power Management protocol
===>SuperSpeed USB Device Capability Descriptor<===
bLength: 0x0A
bDescriptorType: 0x10
bDevCapabilityType: 0x03
bmAttributes: 0x00
wSpeedsSupported: 0x0E
-> Supports full-speed operation
-> Supports high-speed operation
-> Supports SuperSpeed operation
bFunctionalitySupport: 0x01 -> lowest speed = full-speed
bU1DevExitLat: 0x08 -> less than 8 micro-seconds
wU2DevExitLat: 0x00BE -> less than 190 micro-seconds
===>Container ID Capability Descriptor<===
bLength: 0x14
bDescriptorType: 0x10
bDevCapabilityType: 0x04
bReserved: 0x00
Container ID: 9F4B56F0-1DF6-11E0-AC64-0800200C9A66
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We did see the "Get Status" successfully find the Device in the Configuration Utility once and attempted to program but it was unsuccessful. Unfortunately our board does not have access to the SWD interface, it is not brought out from the BGA .
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sananya,
I have had another successful Get Status, just got lucky and tried it at the right time???. Here is the output:
Querying dock status
Opening handle to dock
Connecting to the DMC
=================================HX3PD IDENTITY=================================
CDTT version : 1
VID : 0x04B4
PID : 0x521B
Vendor : Cypress Semiconductor
Product : EZ-USB HX3PD Gen 2 Hub
Signed FW Update : FALSE
==============================CURRENT HX3PD STATUS==============================
Last FW update status : Factory (0x0)
Device count : 3
Composite dock image version : 1.3.0.0
--------------------------------------------------------------------------------
Device#0
Device type : DMC
Component ID : 0
Current image : Image-1
Bootloader Version
Base Version : 3.3.0.1732
Application Version : dm.1.0.229
Image-0 Status : VALID (0x1)
Base Version : 3.3.0.1883
Application Version : dm.1.1.17
Image-1 Status : VALID (0x1)
Base Version : 3.3.0.1883
Application Version : dm.1.1.17
--------------------------------------------------------------------------------
Device#1
Device type : HX3PD PD Controller
Component ID : 1
Current image : Bootloader
Bootloader Version
Base Version : 3.3.0.1707
Application Version : md.1.0.219
Image-0 Status : UNKNOWN (0x0)
Base Version : 3.3.0.1883
Application Version : md.1.1.17
Image-1 Status : UNKNOWN (0x0)
Base Version : 3.3.0.1883
Application Version : md.1.1.17
--------------------------------------------------------------------------------
Device#2
Device type : HX3PD Hub Controller
Component ID : 2
Current image : Image-0
Image-0 Status : INVALID (0x2)
(Last known good version)
Version : 0
Image-1 Status : INVALID (0x2)
(Last known good version)
Version : 0
================================================================================
Starting update D:\Projects\USB-cypress\HX3PD\HX3PD\EZ-USB_HX3PD_CYUSB4347_FW\EZ-USB_HX3PD_CYUSB4347_FW\CYUSB4347_Composite_FW\CYUSB4347-BZXC_FW_1_3_0.bin
Loading dock composite image file
Verifying hash of image#0
Segment #0
Segment #1
Verifying hash of image#1
Segment #0
Segment #1
Verifying hash of image#2
Segment #0
Segment #1
Verifying hash of image#3
Segment #0
Segment #1
Verifying hash of image#4
Segment #0
Verifying hash of image#5
Segment #0
Opening handle to dock
Connecting to the DMC
Starting FW upgrading
Sending start command
Waiting for FW request
Writing image #0 : DMC (Comp-id: 0), Image-0
Segment #0
Sending image write command
Segment #1
Sending image write command
Waiting for FW request
Received re-enumeration notification
Length mismatch in received message
DMC disconnected, waiting for re-connection with DMC
time out = 60000
Timeout occurred while waiting for re-connect
HX3PD firmware update failed
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
-Could you please share the part of the schematics with HX3PD if its not confidential since it is a custom board? This would help us understand if the DMC connection issues are related to the hardware.
-When you are able to see the DMC enumerate, could you please try the firmware update with a higher timeout value?
-Since the logs show that the hub controller firmware is Invalid, it would be ideal if we could reflash the SPI EEPROM with a valid hub firmware (https://www.cypress.com/documentation/software-and-drivers/ez-usb-hx3pd-firmware ) and then check the DMC enumeration.
Best Regards,
Sananya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The DMC on our board takes 15 minutes to connect. So I set the timeout to 950 seconds and it did get further in the update process but still failed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi SananyaM. Here is most of the HX3PD schematic piece. I can share more if i missed something. Hopefully the resolution is sufficient. I did not intentionally degrade it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here is a log of the attempt to update flash:
Starting update D:\Projects\USB-cypress\EZ-USB_HX3PD_CYUSB4347_FW\CYUSB4347_Composite_FW\CYUSB4347-BZXC_FW_1_3_0.bin
Loading dock composite image file
Verifying hash of image#0
Segment #0
Segment #1
Verifying hash of image#1
Segment #0
Segment #1
Verifying hash of image#2
Segment #0
Segment #1
Verifying hash of image#3
Segment #0
Segment #1
Verifying hash of image#4
Segment #0
Verifying hash of image#5
Segment #0
Opening handle to dock
Connecting to the DMC
Starting FW upgrading
Sending start command
Waiting for FW request
Writing image #1 : DMC (Comp-id: 0), Image-1
Segment #0
Sending image write command
Segment #1
Sending image write command
Waiting for FW request
Received re-enumeration notification
Length mismatch in received message
DMC disconnected, waiting for re-connection with DMC
time out = 1200000
Starting FW upgrading
Sending start command
Waiting for FW request
Writing image #0 : DMC (Comp-id: 0), Image-0
Segment #0
Sending image write command
Segment #1
Sending image write command
Waiting for FW request
Received re-enumeration notification
DMC disconnected, waiting for re-connection with DMC
time out = 1200000
Starting FW upgrading
Sending start command
Waiting for FW request
HX3PD firmware update failed
Log is stored in file C:\Users\a7497\AppData\Roaming\HX3PDConfigUtility\Logs\dock_update_11_09_10_58.txt
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
It does seem like the firmware update process is able to proceed more with the timeout increased so I think it might be a hardware issue and more specifically signal integrity issue in this case. After reviewing the schematics, I had the following comments-
Please ensure that the power sequencing is followed as per- https://www.cypress.com/file/410976/download
Pull up resistors of 10K and 100K are recommended to be connected on the OVCUR and PRWEN pins respectively.
Please ensure that the Reset timings are met with respect to 3.3V and 1.2V as shown in section 2.4 of the above App Note.
-Kindly also check the layout guidelines mentioned in the App Note and if they are met on your board.
-Please let us know if you were able to get the correct DMC enumeration and firmware update to complete when using the same cable with our EVK?
-Although you mentioned that the SWD pins arent brought out on the board, would it be possible to somehow update the DMC firmware?
Best Regards,
Sananya