ABC’s of USB
B. Connect & Enumerate
Six States of Connection
1. USB is disconnected
User plugs in device
& VBUS (power) appears
2. USB Connected, not enumerated
handleVbusOnEvent()
→ App calls USB_Setup(), which
pulls PUR up
3. Enumeration in Progress
→ Enumeration succeeds
4. Device is enumerated, bus active
handleEnumCompleteEvent()
→ Host Suspends device/bus
5. Device is enum, but suspended
handleSuspendEvent()
ST_PHYS_
DISCONNECTED
ST_PHYS_
CONNECTED_
NOENUM
ST_ENUM_IN_
PROGRESS
ST_ENUM_
ACTIVE
ST_ENUM_
SUSPENDED
ST_PHYS_
CONNECTED_
NOENUM_SUSP
7 - 22 MSP430 Workshop - USB Devices