
All token packets have a 5 bit CRC while data packets have a 16 bit CRC.Įnd of packet. (4 endpoints max)Ĭyclic Redundancy Checks are performed on the data within the packet payload. Have 2 additional endpoints on top of the default pipe. The endpoint field is made up of 4 bits, allowing 16 possible endpoints. Address 0 is not valid, as any device which is not yet assigned an address must respond to packets sent to address zero. Being 7 bits in length allows for 127 devices to be supported. The address field specifies which device the packet is designated for. There are 4 bits to the PID, however to insure it is received correctly, the 4 bits are complemented and repeated, making an 8 bit PID in total. The following table shows the possible values. This field is used to identify the type of packet that is being sent. The last two bits indicate where the PID fields starts. The sync field is 8 bits long at low and full speed orģ2 bits long for high speed and is used to synchronise the clock of the receiver with that of the USB packets consist of the following fields,Īll packets must start with a sync field. Successfully, or if the endpoint is stalled or not available to accept data.ĭata on the USBus is transmitted LSBit first. The next packet is generally a data packetĬarrying the payload and is followed by an handshaking packet, reporting if the data or token was received Read or write and what the device’s address and designated endpoint is. The first packet,Īlso called a token is generated by the host to describe what is to follow and whether the data transaction will be a



In fact most USB controller I.C.s will take care On, you really only have to worry about the higher level layers.

While this sounds complicated, don’t give up now. Unlike RS-232 and similar serial interfaces where the format of data being sent is not defined, USB is made up of
