Patent ID: 7822882

Claim:
A method implemented in a computing device adapted for connecting to an external device via a data connection of the computing device, the method comprising: (a) branching within a program on the computing device so that the program is capable of using an external device connected via the data connection, and is also capable of running in the absence of such device or while such device is inactive; (b) while a first external device is connected via the data connection and active, using hardware state or using controls within the program to set the data connection to an idle and hot-swap ready state; (c) maintaining the program in a continuously functioning state and maintaining the data connection in the idle and hot-swap ready state while the first external device is inactive, and maintaining the program in a continuously functioning state and maintaining the data connection in the same idle and hot-swap ready state while the first external device is absent; (d) receiving a ready signal from a second external device connected via the data connection; and (e) causing the program while remaining in a continuously functioning state to resume transmitting data to or receiving data from the second external device after receiving the ready signal.