HX3 Design Support

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello,

I'm using the CYUSB3304-68LTXC in my design and I'm having trouble getting it to work.  I am trying to download the HX3 firmware using an external I2C master, but the HX3 is unresponsive.  I have an I2C GPIO that is working but the HX3 is unresponsive.

I suspect that this is a hardware issue, below is my schematic.  I didn't use a power switch and left PWR_EN and SUSPEND NC, I was hoping those wouldn't be necessary but maybe they are and that's why this isn't working.  If you have any other ideas on why this isn't working or how I could improve my design please let me know.

pastedImage_0.png

0 Likes
1 Solution
Sananya_14
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hello,

Apologies for the confusion, I meant setting them both to 1 for Internal ROM configuration. Please check if the hub is enumerating properly when booting from the internal ROM. Please check if your schematic follows the hardware guidelines from AN91378 if the hub is failing to enumerate. It is recommended to use a power switch with PWREN to prevent overcurrent condition, SUSPEND can be left NC.

For the I2C slave mode (when MODE_SEL[0]=0 and MODE_SEL[1]=1), please ensure that the 7-bit slave address is set as 0x60 and you are loading valid data either in B0 or D4 format from your FPGA. You can generate an image file for slave mode from Blaster Plus as well based on your settings.

Best Regards,

Sananya

View solution in original post

0 Likes
3 Replies
Sananya_14
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hello,

-Please clarify if your hub is enumerating with the internal ROM configuration when both the MODE_SEL lines are set to 0.

-Are you binding to the vendor driver (cyusbhx3.sys) provided with Blaster Plus before downloading the firmware?

-Kindly attach your complete schematic for us to if possible.

Best Regards,

Sananya

0 Likes
Anonymous
Not applicable

We keep the mode select lines at 1 and 0 all throughout start up using a pullup and pulldown. We can reconfigure these inputs along with the RESETN using CPU control. We have not tried setting both to 0 as the data sheet states not to. The data sheet states setting both to 1 is the Internal ROM configuration.

How is setting both to 1 different than both set to 0? What should we try using pullups and pull downs?

We are not using the vendor driver (cyusbhx3.sys) as our I2C master is an FPGA and not a processor. We were trying to use/set the default values over the FPGA I2C master but the HX3 won’t ACK the I2C bus transactions. There is another device though, on the same I2C bus, and is working as expected.

I am unable to upload the whole schematic, is there something in particular you'd like to see?

I appreciate your insight.

0 Likes
Sananya_14
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hello,

Apologies for the confusion, I meant setting them both to 1 for Internal ROM configuration. Please check if the hub is enumerating properly when booting from the internal ROM. Please check if your schematic follows the hardware guidelines from AN91378 if the hub is failing to enumerate. It is recommended to use a power switch with PWREN to prevent overcurrent condition, SUSPEND can be left NC.

For the I2C slave mode (when MODE_SEL[0]=0 and MODE_SEL[1]=1), please ensure that the 7-bit slave address is set as 0x60 and you are loading valid data either in B0 or D4 format from your FPGA. You can generate an image file for slave mode from Blaster Plus as well based on your settings.

Best Regards,

Sananya

0 Likes