A self-installing peripheral device is provided. The device includes an
onboard memory that stores a device driver that enables the device to
communicate with a computer operating system. When the device is
connected to a computer, the device automatically downloads the device
driver to the computer and installs the device driver. In some
embodiments, the device is a USB device that may include an internal USB
hub. The onboard memory is connected to the USB hub and the primary
functionality of the USB device also connects to the computer via a
single USB connection through the USB hub. In other embodiments, the
device connects to the computer via a wireless connection protocol. Such
a device may be a Bluetooth-enabled device.