1. A method of operating a mobile phone accessory communicable with a mobile phone, the method comprising: (a) establishing a communication link between the mobile phone and the mobile phone accessory; (b) exchanging data between the mobile phone and the mobile phone accessory, the data pertaining to software resident on the mobile phone accessory and the ability of the mobile phone to download and execute the software, wherein the data is used to determine what software to transfer from the mobile phone accessory to the mobile phone; and (c)transferring the software from the mobile phone accessory to the mobile phone via the communication link.