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

USB low-full-high speed peripherals Forum Discussions

wokac_2711691
Level 1
Level 1

I would like to send up to 8 bytes of data in control command to FX2 using additional data field. Up to four bytes the mValue and mIndex field can be used but for more, additional data field is needed.

What is the location of the received bytes?

0 Likes
1 Solution
SrinathS_16
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 100 likes received

Hello,

I assume that you are using the FX2LP (CY7C68013A) chip. Please correct me if I am wrong.

While using control commands, the first eight bytes of data are loaded into the SETUPDAT register. These eight bytes are as follows:

Byte 0: bmRequestType

Byte 1: bRequest

Byte 2: wValue

Byte 4: wIndex

Byte 6: wLength

When more than 8 bytes are to be transferred during a control transfer, the additional data gets loaded into the endpoint zero (EP0) buffer.

Best regards,

Srinath S

View solution in original post

0 Likes
2 Replies
SrinathS_16
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 100 likes received

Hello,

I assume that you are using the FX2LP (CY7C68013A) chip. Please correct me if I am wrong.

While using control commands, the first eight bytes of data are loaded into the SETUPDAT register. These eight bytes are as follows:

Byte 0: bmRequestType

Byte 1: bRequest

Byte 2: wValue

Byte 4: wIndex

Byte 6: wLength

When more than 8 bytes are to be transferred during a control transfer, the additional data gets loaded into the endpoint zero (EP0) buffer.

Best regards,

Srinath S

0 Likes

Thanks for help.

What I forgot was to reload the buffer with the next USB packet.

Wojciech

0 Likes