Hi,
I read a bit about USB2.0 standard but i'm not sure that i understand correctly one thing. Well as i uderstand when USB2.0 device is connected on USB2.0 host, then enumeration process goes with Full Speed and then device announces in descriptor that it is cappable of handling USB2.0 transfers. Then host switches speed to high speed (480kbs) and from this point communication goes with this speed. Did i understand correctly?
We'll now comes additional question:
Is it possible this scenario:
1. When device (USB2.0) is connected to host (USB2.0), device announces that FS communication is requred.
2. Enumeration process goes fine and host and device can communicate with FS.
3. Later in time i'd like to know if there is any way of switching communcation to HIGH speed without need of starting new enumeration process?
first of all, the host must be capable of HS. then whenever a device connected it will check first whether the device is high speed capable through electrical handshaking. then both device and host switch to HS mode and start descriptor exchange. if HS driver is disabled at host side the communication is carried out at FS.
As far as i know first communication is carried with FS until device announces in its descriptor that it is cappable of High Speed and then HS electrical handshake is carried.
You will notice we have not included speed identification for High Speed mode. High speed devices will start by connecting as a full speed device (1.5k to 3.3V). Once it has been attached, it will do a high speed chirp during reset and establish a high speed connection if the hub supports it. If the device operates in high speed mode, then the pull up resistor is removed to balance the line.