Skip to main content
turboscrew
Senior III
January 17, 2014
Question

STM32_USB-Host-Device_Lib - host bulk transfer

  • January 17, 2014
  • 3 replies
  • 763 views
Posted on January 17, 2014 at 15:30

I looked into MSC host example, but I thing BOT is not ordinary bulk transfer?

I'm still thinking about RNDIS - the data transfer.

Is that also wrapped-command-status transfer or just plain data exchange via bulk-EPs?

If no wrappers are needed, how is it done using the library mentioned in the title?

Even if RNDIS data was wrapped-command-status transfer, I'd still like to also know how the non-wrapped transfer works.

[edit]

Or is it so, that (maybe some weird special cases excluded) bulk transfers always use wrapped command and status control transfers as a part of the ''protocol''?
    This topic has been closed for replies.

    3 replies

    turboscrew
    Senior III
    January 18, 2014
    Posted on January 18, 2014 at 12:24

    I tried to read the MSC BOT code, but didn't quite get it.

    What I got from it was:

    • BOT (bulk) transfer data can be quite big. Much bigger than USB frame (256 frames).
    • For each BOT transfer the wrapped command and status transfer through control OUT EP is used for transmission setup
    • After the setup several bulk frames (of a transfer) can be transmitted with that one setup.
    • The lower level parts of the library handle the segmentation (and reassembly) of the data to bulk frames.
    Or am I totally lost?

    turboscrew
    Senior III
    January 25, 2014
    Posted on January 25, 2014 at 18:28

    Bump.

    turboscrew
    Senior III
    January 28, 2014
    Posted on January 28, 2014 at 21:08

    Maybe I've been unclear?

    The question is:

    Is RNDIS data transferred as just a REMOTE_NDIS_PACKET_MSG sent as a data block via bulk EP, or is the header sent via the control EP and the actual data via bulk EP (as in BOT transfer) ?

    My guess is: the first.