# US 8,751,721 B2 · Method and apparatus for configuring electronic devices to perform selectable predefined functions using device drivers

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,751,721 B2
- Document ID: US8751721B2
- Status: Granted
- Kind: B2
- Application number: 12/333,254
- Filed: 2008-12-11
- Published: 2009-06-18
- Granted: 2014-06-10
- Earliest claimed: 2001-03-28
- Assignees: Nokia Corporation
- Applicants: James Scales; Varley Bullard; Petri Syrjala
- Inventors: James Scales; Varley Bullard; Petri Syrjala
- Web page: https://patentgrep.com/patent/US8751721B2

## CPC

- G06F 9/4411: {Configuring for operating with peripheral devices; Loading of device drivers}
- G06F 13/385: {for adaptation of a particular data processing system to different peripheral devices}
- G06F 13/426: {using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A multifunctional mobile telephone handset is connected to a PC using a Universal Serial Bus. During bus enumeration, a device class descriptor is returned by the handset to the PC. The PC's operating system receives information relating to one of the functions of the handset and assigns an appropriate device driver.

## Claims

### Claim 1

A method of providing communication between a mobile device and a host device, comprising:
connecting the mobile device and the host device to one another to establish a default non-addressed communication configuration between the mobile and host devices, wherein the mobile device is configured to be able to perform a plurality of user-selectable predefined different functions that are usable by the host device when the host device is in an addressed communication configuration with the mobile device, wherein the user-selectable predefined different functions are each respectively associated with a corresponding appropriate device driver which relates to a particular device class and a particular device descriptor;
providing the host device with the particular device descriptor associated with a particular selected function of the mobile device using the default non-addressed communication configuration, said particular selected function having been selected from the plurality of different functions by a user of the mobile device; and
interfacing the mobile device with the host device by causing the host device to assign the corresponding appropriate device driver associated with the particular selected function of the mobile device to the mobile device, irrespective of whether the mobile device has previously been interfaced with the host device, based on the provided particular device descriptor to thereby establish an addressed communication configuration in which the host device is able to use the particular selected function of the mobile device.

### Claim 2 (depends on 1)

A method according to claim 1, comprising using a default pipe provided by Universal Serial Bus enumeration in establishing the default non-addressed communication configuration.

### Claim 3 (depends on 2)

A method according to claim 2, comprising providing the addressed communication configuration after full Universal Serial Bus enumeration of the host and mobile device.

### Claim 4 (depends on 1)

A method according to claim 1, comprising only assigning a unique address to the mobile device to provide for the mobile addressed communication configuration.

### Claim 5 (depends on 1)

A method according to claim 1, comprising said host device requesting the particular device descriptor associated with the particular selected function from said mobile device.

### Claim 6 (depends on 1)

A method according to claim 1, comprising the host device selecting and assigning an appropriate device driver.

### Claim 7 (depends on 1)

A method according to claim 1, comprising user selection of the particular selected function being communicated using the default non-addressed communication configuration to provide the host device with the particular device descriptor which relates to the particular selected function.

### Claim 8 (depends on 1)

A method according to claim 1, comprising pre-selecting one of the plurality of particular selectable functions prior to connecting the host and mobile devices together.

### Claim 9 (depends on 1)

A method according to claim 1, wherein at least one of the host and the mobile devices comprises a Universal Serial Bus.

### Claim 10 (depends on 1)

A method according to claim 1, wherein the mobile device is at least one of a mobile telephone handset and a device with mobile radiotelephone functionality.

### Claim 11 (depends on 1)

A method according to claim 1, wherein the mobile device is selected from the group consisting of a mobile telephone handset, a data communicator or a personal computer.

### Claim 12 (depends on 1)

A method according to claim 1, wherein the host device is a multifunctional non-compound device.

### Claim 13 (depends on 1)

A method according to claim 1, wherein the mobile device is a slave device and the host device is a master device.

### Claim 14 (depends on 1)

The method of claim 1, wherein the selection is performed by a user operating a menu of the mobile device.

### Claim 15 (depends on 14)

The method of claim 14, wherein said selection causes storing of a pointer configured to point to the particular device descriptor associated with the particular selected function.

### Claim 16 (depends on 1)

The method of claim 1, wherein the interfacing comprises forcing the host device to assign said corresponding appropriate device driver.

### Claim 17 (depends on 1)

The method of claim 1, wherein connecting the first device and the second device to one another comprises connecting the first device and the second device to one another over a single Universal Serial Bus communication channel, and providing the first device with the device descriptor comprises providing the device descriptor over that single Universal Serial Bus communication channel.

### Claim 18

A computer program, embodied on a non-transitory computer readable medium, comprising:
program code for connecting a mobile device and a host device to one another to establish a default non-addressed communication configuration between the mobile and host devices, wherein the mobile device is configured to be able to perform a plurality of user-selectable predefined different functions that are usable by the host device when the host device is in an addressed communication configuration with the mobile device, wherein the user-selectable predefined different functions are each respectively associated with a corresponding appropriate device driver which relates to a particular device class and a particular device descriptor;
program code for providing the host device with the particular device descriptor associated with a particular selected function of the mobile device using the default non-addressed communication configuration, said particular selected function having been selected from the plurality of different functions by a user of the mobile device; and
program code for interfacing the mobile device with the host device by causing the host device to assign the corresponding appropriate device driver associated with the particular selected function of the mobile device to the mobile device, irrespective of whether the mobile device has previously been interfaced with the host device, based on the provided particular device descriptor to thereby establish an addressed communication configuration in which the host device is able to use the particular selected function of the mobile device.

### Claim 19

A mobile device, configured to be able to perform a plurality of user-selectable predefined different functions that are usable by a host device when the host device is in an addressed communication configuration with the mobile device, the mobile device comprising a controller configured to:
connect to the host device to establish a default non-addressed communication configuration between the mobile and host devices;
provide the host device with a particular device descriptor associated with a particular selected function of the mobile device using the default non-addressed communication configuration, said particular selected function having been selected from the plurality of different functions by a user of the mobile device, wherein the user-selectable predefined different functions are each respectively associated with a corresponding appropriate device driver which relates to a particular device class and a particular device descriptor; and
interface the mobile device with the host device by causing the host device to assign the corresponding appropriate device driver associated with the particular selected function of the mobile device to the mobile device, irrespective of whether the mobile device has previously been interfaced with the host device, based on the provided particular device descriptor to thereby establish an addressed communication configuration in which the host device is able to use the particular selected function of the mobile device.

### Claim 20

A host electronic device and a mobile electronic device, the host and mobile devices configured to:
connect the host and mobile devices to one another to establish a default non-addressed communication configuration between the mobile and host devices, wherein the mobile device is configured to be able to perform a plurality of user-selectable predefined different functions that are usable by the host device when the host device is in an addressed communication configuration with the mobile device, wherein the user-selectable predefined different functions are each respectively associated with a corresponding appropriate device driver which relates to a particular device class and a particular device descriptor;
provide the host device with the particular device descriptor associated with a particular selected function of the mobile device using the default non-addressed communication configuration, said particular selected function having been selected from the plurality of different functions by a user of the mobile device; and
interfacing the mobile device with the host device by causing the host device to assign the corresponding appropriate device driver associated with the particular selected function of the mobile device to the mobile device, irrespective of whether the mobile device has previously been interfaced with the host device, based on the provided particular device descriptor to thereby establish an addressed communication configuration in which the host device is able to use the particular selected function of the mobile device.

### Claim 21

A mobile device configured to be able to perform a plurality of user-selectable predefined different functions that are usable by a host device when the host device is in an addressed communication configuration with the mobile device, the mobile device comprising:
means for connecting to the host device to establish a default non-addressed communication configuration between the mobile and host devices;
means for providing the host device with a particular device descriptor associated with a particular selected function of the mobile device using the default non-addressed communication configuration, said particular selected function having been selected from the plurality of different functions by a user of the mobile device, wherein the user-selectable predefined different functions are each respectively associated with a corresponding appropriate device driver which relates to a particular device class and a particular device descriptor; and
means for interfacing the mobile device with the host device by causing the host device to assign the corresponding appropriate device driver associated with the particular selected function of the mobile device to the mobile device, irrespective of whether the mobile device has previously been interfaced with the host device based on the provided particular device descriptor to thereby establish an addressed communication configuration in which the host device is able to use the particular selected function of the mobile device.
