cancel
Showing results for 
Search instead for 
Did you mean: 

USB Low-Full-High Speed Peripherals

mama_1614126
New Contributor II

The CY7C65211 allows to configure two GPIOs as TXLED# and RXLED#. According to the datasheet

  • TXLED# Drives LED during USB transmit,
  • RXLED# Drives LED during USB receive.

In its default configuration (according to the USB config tool) TXLED# is GPIO_0 (pin 18) and RXLED# is GPIO_1 (pin 19).

In a test it turns out that TXLED# and RXLED# are always on, even when USB is plugged into a dumb power bank, i.e. there certainly is not data on the data lines. That's not quite what I expected.

When I switch to I2C I see is that TXLED# and RXLED# is always on until some communication occurs - then RXLED# turns off and stays off.

What is the meaning of all this? There is no relation between a presumed TXLED#/ RXLED# status and the GPIO value.

(By the way, in the schematic of the CY8CKIT-049-42XX the headers are labeled J4,5,6 whereas the silk screen of the board says J5,6,7. @cypress Please fix.)

0 Likes
1 Solution
Sananya_14
Moderator
Moderator

Hello,

By default the TXLED# and RXLED# lines should be high so when the device is plugged into the power bank, the LEDs arent expected to be on. I configured two other GPIOs  since GPIO_0,GPIO_1 arent present on the GPIO header on our DVK and checked for the above two cases. When the device is self-powered and not connected to the host, both the lines are pulled high and on connecting to host and switching to I2C mode to perform data read, the RXLED line goes low followed by TXLED. Please find waveforms for both the cases attached.

Could you try checking for the output on the pins directly?

Best Regards,

Sananya

View solution in original post

0 Likes
5 Replies
Sananya_14
Moderator
Moderator

Hello,

By default the TXLED# and RXLED# lines should be high so when the device is plugged into the power bank, the LEDs arent expected to be on. I configured two other GPIOs  since GPIO_0,GPIO_1 arent present on the GPIO header on our DVK and checked for the above two cases. When the device is self-powered and not connected to the host, both the lines are pulled high and on connecting to host and switching to I2C mode to perform data read, the RXLED line goes low followed by TXLED. Please find waveforms for both the cases attached.

Could you try checking for the output on the pins directly?

Best Regards,

Sananya

View solution in original post

0 Likes
mama_1614126
New Contributor II

By default the TXLED# and RXLED# lines should be high so when the device is plugged into the power bank,

Yes I see that too.

the RXLED line goes low followed by TXLED

That I do not get. I'll check again.

What behaviour should I expect? I would find the following plausible:

  • TXLED# goes low during a USB read, otherwise high
  • RXLED# goes high during a USB write, otherwise high

So, why don't both RXLED# and TXLED# go high when read/write is finished? Wouldn't that be the logical behaviour?

0 Likes
Sananya_14
Moderator
Moderator

Hello,

Yes correct. The expected behaviour is for both the lines to go high when the host is doing neither a read or write. As a test, you can configure the device in UART mode and leave the TX and RX lines on the device unconnected. On sending data from the terminal, we should see RXLED# going low while the data is being sent and going high at the end.

Best Regards,

Sananya

0 Likes
mama_1614126
New Contributor II

So what about TXLED#? What behaviour am I to expect?

The FW of this chip is quite buggy, isn't it?

0 Likes
Sananya_14
Moderator
Moderator

Hello,

Since data is only being sent to the device, TXLED# should remain high which is what we observe in the previously attached waveform as well. Kindly verify if it is working as expected on your end. There isn't any issue in the firmware with the USB transmit/receive or any other status GPIOs.

Best Regards,

Sananya

0 Likes