From 6961bd948b61f99cb75ea719dc529d9e28229d2a Mon Sep 17 00:00:00 2001 From: arc Date: Sun, 3 Aug 2025 13:46:47 -0600 Subject: [PATCH] vault backup: 2025-08-03 13:46:47 --- notes/USB.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/notes/USB.md b/notes/USB.md index 3a13d9b..2f7390f 100644 --- a/notes/USB.md +++ b/notes/USB.md @@ -18,6 +18,11 @@ Most bus transactions involve the transmission of up to three packets. 1. The token packet > Each transaction begins when the host, on a scheduled basis, sends a USB packet describing the type and direction of a transaction, the USB device address, and endpoint number. 2. The data packet -> Depending on the di +> Depending on the direction of data transfer (specified in the token packet), this packet will move from the host to the device, or vice versa. If the source of the transaction has no data to send, it will send that instead. 3. The handshake packet -> The destination, in general, responds to a handshake packet indicating whether the transfer was successful. \ No newline at end of file +> The destination, in general, responds to a handshake packet indicating whether the transfer was successful. + +The USB data transfer model between a source or destination on the host and an endpoint on a device is referred to as a *pipe*. There are two types of pipes: stream, and message. Stream data has no USB defined structure, while message data is structured. Each pipe is associated with a bandwidth, transfer service, and endpoint characteristics like directionality and buffer size. + +One message pipe, the Default Control Pipe, always exists +