The On-the-Go (OTG) Supplement1 to the USB 2.0 Specification, published in December 2001, opens up a vast range of exciting new functionalities for USB-enabled devices. Traditionally, USB has maintained a rigid host-peripheral network topology with multiple portable devices acting as slaves to the single PC master. PCs are known as hosts and everything else is a peripheral or function. USB OTG changes this paradigm with the ability for a peripheral to act, often only temporarily, as a host. This breaks the inhibiting requirement for a strictly PC-centric environment because OTG-enabled devices are free to communicate directly with function devices and even other OTG products.