Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
UPDATING MODEM BASEBAND FIRMWARE OVER-THE-AIR
Document Type and Number:
WIPO Patent Application WO/2013/114317
Kind Code:
A1
Abstract:
Methods, apparatus, computer software and chipset for updating modem baseband firmware stored on a user equipment in a telecommunications network. The user equipment comprises a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network. Update data associated with the modem baseband firmware stored on the user equipment is received via one of the modems, the capability of one of the modems to communicate with the respective part of the telecommunications network is disabled, the modem baseband firmware stored on the user equipment is updated according to the received update data, and the disabled modem capability is re-enabled.

Inventors:
KALTIOKALLIO KIM
POGOSOVA EKATERINA
TALVITIE HANNU TAPANI
Application Number:
PCT/IB2013/050835
Publication Date:
August 08, 2013
Filing Date:
January 31, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
RENESAS MOBILE CORP (JP)
KALTIOKALLIO KIM
POGOSOVA EKATERINA
TALVITIE HANNU TAPANI
International Classes:
H04W8/24; G06F9/445; H04W88/06
Domestic Patent References:
WO2008038063A12008-04-03
Foreign References:
EP1763266A12007-03-14
GB2350749A2000-12-06
Attorney, Agent or Firm:
FORSYTH, Neil (15 Fulwood Place, London WC1V 6HU, GB)
Download PDF:
Claims:
Claims

1. Apparatus for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, said apparatus comprising a modem of a first cellular radio type for wireless communication with a cellular part of said telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of said telecommunications network, said apparatus being adapted to:

receive, via one of said modem of said first type and said modem of said second type, update data associated with said modem baseband firmware stored on said user equipment;

disable the capability of one of said modem of said first type and said modem of said second type to communicate with the respective part of said telecommunications network;

update said modem baseband firmware stored on said user equipment according to said received update data; and

enable said disabled capability of said modem of said first type or said modem of said second type to communicate with the respective part of said telecommunications network.

2. Apparatus according to claim 1 , wherein said apparatus is adapted to determine that the update data comprises a modem baseband firmware update for a given one of said modem of said first type and said modem of said second type, and said disabling and enabling relate to the communication capability of said given modem.

3. Apparatus according to claim 2, wherein said apparatus is adapted to receive said update data via said modem of said given type. 4. Apparatus according to claim 2, wherein said apparatus is adapted to receive said update data via the other modem of said modem of said first type and said modem of said second type than said modem of said given type.

5. Apparatus according to any preceding claim, said apparatus being adapted to:

in response to receipt of said update data, create a temporary copy of said modem baseband firmware stored on said user equipment in memory of said user equipment; and

delete said temporary copy in said memory once said updating of said modem baseband firmware is complete. 6. Apparatus according to claim 5, said apparatus being adapted to determine whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for,

wherein said creation and deletion are carried out in response to said determination being positive.

7. Apparatus according to claim 5 or 6, said apparatus being adapted to: determine whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for,

wherein said creation and deletion are not carried out in response to said determination being negative.

8. Apparatus according to any preceding claim, said apparatus being adapted to:

prior to said updating, carry out a check for transmission errors in said received update data,

in response to said transmission error check indicating that said received update data contains one or more transmission errors, request re-transmission of said update data from said network before proceeding with said disabling, updating and enabling, and

in response to said transmission error check indicating that said received update data contains no transmission errors, proceed with said disabling, updating and enabling.

9. Apparatus according to any preceding claim, wherein said apparatus comprises a control processor, a non-cellular radio modem baseband processor and a cellular radio modem baseband processor, said control processor being adapted to: carry out said disabling by turning off the baseband communication functionality of one of said modem baseband processors;

carry out said updating by updating internal memory of said turned-off modem baseband processor, and

carry out said enabling by turning on the baseband communication functionality of said turned-off modem baseband processor.

10. Apparatus according to any of claims 1 to 8, wherein said apparatus comprises a control processor, a modem baseband processor including a non-cellular radio processing part and a cellular radio processing part, said control processor being adapted to:

carry out said disabling by turning off the baseband communication functionality of one of said modem baseband processor parts;

carry out said updating by updating internal memory of said turned-off modem baseband processor part, and

carry out said enabling by turning on the baseband communication functionality of said turned-off modem baseband processor part.

11. A method of updating modem baseband firmware stored on a user equipment in a telecommunications network, said user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of said telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of said telecommunications network, said method comprising, at said user equipment:

receiving, via one of said modem of said first type and said modem of said second type, update data associated with said modem baseband firmware stored on said user equipment; disabling the capability of one of said modem of said first type and said modem of said second type to communicate with the respective part of said telecommunications network;

updating said modem baseband firmware stored on said user equipment according to said received update data; and

enabling said disabled capability of said modem of said first type or said modem of said second type to communicate with the respective part of said telecommunications network. 12. A method according to claim 11, wherein said update data comprises a modem baseband firmware update for a given one of said modem of said first type and said modem of said second type, and said disabling and enabling relate to the communication capability of said given modem. 13. A method according to claim 12, wherein said update data is received via said modem of said given type.

14. A method according to claim 12, wherein said update data is received via the other modem of said modem of said first type and said modem of said second type than said modem of said given type.

15. A method according to any of claims 11 to 14:

in response to receipt of said update data, creating a temporary copy of said modem baseband firmware stored on said user equipment in memory of said user equipment; and

deleting said temporary copy in said memory once said updating of said modem baseband firmware is complete.

16. A method according to claim 15, comprising determining whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for, wherein said creating and deleting are carried out in response to said determination being positive.

17. A method according to claim 15 or 16, comprising determining whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for,

wherein said creating and deleting are not carried out in response to said determination being negative. 18. A method according to any of claims 11 to 17, comprising, prior to said updating, carrying out a check for transmission errors in said received update data,

wherein in response to said transmission error check indicating that said received update data contains one or more transmission errors, requesting re- transmission of said update data from said network before proceeding with said disabling, updating and enabling, and

in response to said transmission error check indicating that said received update data contains no transmission errors, proceeding with said disabling, updating and enabling.

19. A method according to any of claims 11 to 18, wherein said user equipment comprises a control processor, a non-cellular radio modem baseband processor and a cellular radio modem baseband processor, wherein:

said disabling comprises said control processor turning off the baseband communication functionality of one of said modem baseband processors;

said updating comprises said control processor updating internal memory of said turned-off modem baseband processor, and

said enabling comprises said control processor turning on the baseband communication functionality of said turned-off modem baseband processor.

20. A method according to any of claims 11 to 18, wherein said user equipment comprises a modem baseband processor including a non-cellular processing part and a cellular radio processing part, and a control processor, wherein: said disabling comprises said control processor turning off the baseband communication functionality of one of said modem baseband processor parts;

said updating comprises said control processor updating internal memory of said turned-off modem baseband processor part, and

said enabling comprises said control processor turning on the baseband communication functionality of said turned-off modem baseband processor part.

21. Computer software for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, said user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of said telecommunications network and a modem of a second non- cellular radio type for wireless communication with a non-cellular part of said telecommunications network, said computer software being adapted to:

receive, via one of said modem of said first type and said modem of said second type, update data associated with said modem baseband firmware stored on said user equipment;

disable the capability of one of said modem of said first type and said modem of said second type to communicate with the respective part of said telecommunications network;

update said modem baseband firmware stored on said user equipment according to said received update data; and

enable said disabled capability of said modem of said first type or said modem of said second type to communicate with the respective part of said telecommunications network.

22. Computer software according to claim 21 , wherein said computer software is adapted to determine that the update data comprises a modem baseband firmware update for a given one of said modem of said first type and said modem of said second type, and said disabling and enabling relate to the communication capability of said given modem.

23. Computer software according to claim 22, wherein said computer software is adapted to receive said update data via said modem of said given type.

24. Computer software according to claim 22, wherein said computer software is adapted to receive said update data via the other modem of said modem of said first type and said modem of said second type than said modem of said given type.

25. Computer software according to any of claims 21 to 24, said computer software being adapted to:

in response to receipt of said update data, create a temporary copy of said modem baseband firmware stored on said user equipment in memory of said user equipment; and

delete said temporary copy in said memory once said updating of said modem baseband firmware is complete. 26. Computer software according to claim 25, said computer software being adapted to determine whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for, wherein said creation and deletion are carried out in response to said determination being positive.

27. Computer software according to claim 25 or 26, said computer software being adapted to:

determine whether said update data is received via a modem of the same type of said first and second types as the type of modem the update data is for,

wherein said creation and deletion are not carried out in response to said determination being negative.

28. Computer software according to any of claims 21 to 27, said computer software being adapted to:

prior to said updating, carry out a check for transmission errors in said received update data,

in response to said transmission error check indicating that said received update data contains one or more transmission errors, request re-transmission of said update data from said network before proceeding with said disabling, updating and enabling, and

in response to said transmission error check indicating that said received update data contains no transmission errors, proceed with said disabling, updating and enabling.

29. Computer software according to any of claims 21 to 28, wherein said user equipment comprises a control processor, a non-cellular radio modem baseband processor and a cellular radio modem baseband processor, said computer software being adapted to cause the control processor to:

carry out said disabling by turning off the baseband communication functionality of one of said modem baseband processors;

carry out said updating by updating internal memory of said turned-off modem baseband processor, and

carry out said enabling by turning on the baseband communication functionality of said turned-off modem baseband processor.

30. Computer software according to any of claims 21 to 28, wherein said user equipment comprises a control processor, a modem baseband processor including a non-cellular radio processing part and a cellular radio processing part, said computer software being adapted to cause the control processor to:

carry out said disabling by turning off the baseband communication functionality of one of said modem baseband processor parts;

carry out said updating by updating internal memory of said turned-off modem baseband processor part, and carry out said enabling by turning on the baseband communication functionality of said turned-off modem baseband processor part.

31. Apparatus according to any of claims 1 to 10 wherein said apparatus comprises a chipset.

32. Apparatus according to any of claims 1 to 10 wherein said apparatus comprises a user equipment. 33. A computer program product comprising a non-transitory computer- readable storage medium having computer readable instructions stored thereon, the computer readable instructions being executable by a computerized device to cause the computerized device to perform a method for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, the user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network, the method comprising, at the user equipment:

receiving, via one of the modem of the first type and the modem of the second type, update data associated with the modem baseband firmware stored on the user equipment;

disabling the capability of one of the modem of the first type and the modem of the second type to communicate with the respective part of the telecommunications network;

updating the modem baseband firmware stored on the user equipment according to the received update data; and

enabling the disabled capability of the modem of the first type or the modem of the second type to communicate with the respective part of the telecommunications network.

Description:
UPDATING MODEM BASEBAND FIRMWARE OVER -THE -AIR

Technical Field

The present disclosure relates to modem baseband firmware updates. In particular, but not exclusively, the present disclosure relates to methods, apparatus, computer software and a chipset for wirelessly updating modem baseband firmware stored on a user equipment in a telecommunications network.

Background

In non-SDR type implementations of cellular and non-cellular modem baseband functionality, there has been no way to update/upgrade the modem baseband firmware (the layerl (LI) or physical layer functionality), wirelessly (or Over-the- air'). This is primarily due to the fact that in a non-SDR type implementation, the layerl/physical layer is mostly, if not fully, fixed at the chip production stage and so cannot be altered after the production stage. This means that any HW or firmware issues, e.g. modem baseband logic functional errors, could not be fixed after the production stage. Furthermore, there has been no possibility to carry out any baseband feature upgrades to the modem part once the product has left the production line.

However, several solutions have been proposed for handling and running modem software updates/upgrades wirelessly, but this has been limited to updating of the SW image of the modem baseband so not covering the modem baseband firmware.

The above described limitation is removed when the modem baseband layerl/physical layer implementation moves to an SDR type implementation, where the actual functionality of the layerl/physical layer is not anymore completely determined by fixed logic but by a firmware image run by one or more programmable SDR processors. This means that the layerl/physical layer functionality and features can now be altered by changing the firmware image even after the production stage.

The above described limitation is becoming more of a problem to device manufacturers, equipment manufactures and network operators, as the modem devices become more widespread and difficult to access e.g. in M2M type products which are frequently installed in remote locations and in vast numbers.

There is therefore a need to provide updating of modem baseband firmware. Summary

In accordance with first embodiments, there is provided apparatus for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, the apparatus comprising a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network, the apparatus being adapted to:

receive, via one of the modem of the first type and the modem of the second type, update data associated with the modem baseband firmware stored on the user equipment;

disable the capability of one of the modem of the first type and the modem of the second type to communicate with the respective part of the telecommunications network;

update the modem baseband firmware stored on the user equipment according to the received update data; and

enable the disabled capability of the modem of the first type or the modem of the second type to communicate with the respective part of the telecommunications network.

In accordance with second embodiments, there is provided a method of updating modem baseband firmware stored on a user equipment in a telecommunications network, the user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network, the method comprising, at the user equipment: receiving, via one of the modem of the first type and the modem of the second type, update data associated with the modem baseband firmware stored on the user equipment;

disabling the capability of one of the modem of the first type and the modem of the second type to communicate with the respective part of the telecommunications network;

updating the modem baseband firmware stored on the user equipment according to the received update data; and

enabling the disabled capability of the modem of the first type or the modem of the second type to communicate with the respective part of the telecommunications network.

In accordance with third embodiments, there is provided computer software for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, the user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network, the computer software being adapted to:

receive, via one of the modem of the first type and the modem of the second type, update data associated with the modem baseband firmware stored on the user equipment;

disable the capability of one of the modem of the first type and the modem of the second type to communicate with the respective part of the telecommunications network;

update the modem baseband firmware stored on the user equipment according to the received update data; and

enable the disabled capability of the modem of the first type or the modem of the second type to communicate with the respective part of the telecommunications network.

In accordance with fourth embodiments, there is provided apparatus according to the first embodiments, wherein the apparatus comprises a chipset. In accordance with fifth embodiments, there is provided apparatus according to the first embodiments, wherein the apparatus comprises a user equipment.

In accordance with sixth embodiments, there is provided a computer program product comprising a non-transitory computer-readable storage medium having computer readable instructions stored thereon, the computer readable instructions being executable by a computerized device to cause the computerized device to perform, a method for use in updating modem baseband firmware stored on a user equipment in a telecommunications network, the user equipment comprising a modem of a first cellular radio type for wireless communication with a cellular part of the telecommunications network and a modem of a second non-cellular radio type for wireless communication with a non-cellular part of the telecommunications network, the method comprising, at the user equipment:

receiving, via one of the modem of the first type and the modem of the second type, update data associated with the modem baseband firmware stored on the user equipment;

disabling the capability of one of the modem of the first type and the modem of the second type to communicate with the respective part of the telecommunications network;

updating the modem baseband firmware stored on the user equipment according to the received update data; and

enabling the disabled capability of the modem of the first type or the modem of the second type to communicate with the respective part of the telecommunications network.

Further features and advantages will become apparent from the following description of preferred embodiments, given by way of example only, which is made with reference to the accompanying drawings.

Brief Description of the Drawings

Figure 1 shows a telecommunications network according to embodiments. Figure 2 shows a user equipment according to embodiments.

Figure 3 shows a user equipment according to embodiments.

Figure 4 shows a flow diagram according to embodiments. Detailed Description

Embodiments relate to implementation of a non-cellular radio technology modem and a cellular radio technology modem on a combined cellular plus non- cellular modem platform, and how to handle wireless (or 'ΟΤΑ') modem baseband firmware updates for the cellular and/or non-cellular side.

Figure 1 shows a telecommunications network 180 comprising a non-cellular network part 130 such as a WLAN IEEE802.11 (Wi-Fi ® ) or Bluetooth ® network and a cellular network part 140 such as a GSM, W-CDMA, or LTE/LTE-A network or part thereof. A UE 100 comprises a modem 120 of a cellular radio type for wireless (or 'ΟΤΑ') communication across a radio link 142 with cellular part 140 of telecommunications network 180. UE 100 also comprises a modem 110 of a non- cellular radio type for wireless communication across a radio link 132 with a non- cellular part 130 of telecommunications network 180.

UE 100 will also include various other components (not shown) such as communication means including one or more antennas, transmitters and receivers for bidirectional wireless communications with one or more network entities in non- cellular network part 130 and cellular network part 140, as well as other components for providing non-communication related functionality. Similarly, non-cellular 130 and cellular 140 parts of telecommunications network 180 will include various other components (not shown) such as base stations, node Bs, evolved node Bs, network control entities such as radio network controllers, wireless access points, etc. whose operation is known in the art. Non-cellular 130 and cellular 140 parts of telecommunications network 180 will interconnect with one or more other networks (not shown) such as PSTNs, the Internet, and one or more other non-cellular and cellular networks.

Figure 2 shows UE 100 depicted in Figure 1 in more detail according to embodiments. UE 100 comprises a control processor 102 and memory 104. UE 100 also comprises a non-cellular radio modem 110 which includes a baseband processor 112. Baseband processor 112 has internal memory 114. UE 100 also comprises a cellular radio modem 120 which includes a baseband processor 122. Baseband processor 122 has internal memory 124. In the embodiments depicted in Figure 2, one SDR type layerl/physical layer processor 112 is employed for the modem baseband non-cellular functionality and another SDR type layerl/physical layer processor 122 is employed for the modem baseband cellular functionality. In such embodiments, modem baseband firmware stored on UE 100 is stored in memories 114 and 124 comprised in non-cellular radio modem baseband processor 112 and cellular radio modem baseband processor 122 respectively. The modem baseband firmware stored on UE 100 may also be referred to as the 'firmware image'. Internal memories 114 and 124 will typically comprise non- volatile memory.

In the embodiments depicted in Figure 2, memory 104 is depicted as memory which is external to control processor 102. In alternative embodiments, memory 104 comprises memory which is internal to control processor 102.

Embodiments involve updating modem baseband firmware stored on UE 100 in telecommunications network 180. UE 100 comprises a modem 120 of a first cellular radio type for wireless communication with a cellular part 140 of telecommunications network 180 and a modem 110 of a second non-cellular radio type for wireless communication with a non-cellular part 130 of telecommunications network 180. Update data associated with the modem baseband firmware stored on UE 100 is received at UE 100 via one of modem 120 of the first type and modem 1 10 of the second type. Control processor 102 acknowledges the update request to the appropriate part 130 or 140 of telecommunications network 180.

Control processor 102 proceeds to disable the capability of one of modem 120 of the first type and modem 110 of the second type to communicate with the respective part (140 or 130) of telecommunications network 180. Control processor 102 then updates the modem baseband firmware stored on the user equipment 100 according to the received update data. Once the update is complete, control processor 102 enables the disabled capability of the modem 120 of the first type or the modem 110 of the second type to communicate with the respective part (140 or 130) of telecommunications network 180.

Embodiments enable wireless (or 'ΟΤΑ') error corrections and feature updates (or 'upgrades') of a modem baseband for devices or products containing cellular and/or non-cellular modems. This is a major improvement for ODMs, OEMs, network operator and the like, and allows mass-updates/upgrades to be carried out without the inconvenience of having to ask customers and/or service personnel to collect and bring the devices to service centres for maintenance operations. Embodiments also provide a way to extend the lifetime of such devices or products. Embodiments are especially applicable to M2M type devices or products, which can be vast in number and likely to be widespread and difficult to access, for example because they are installed in remote locations.

Embodiments allow for updating/upgrading of non-cellular functionality whilst handling the OTA update data transfer through the cellular radio network, for example for use in M2M applications. Further, embodiments provide a solution for making use of the cellular OTA connection for updating the non-cellular side firmware, and vice versa making use of the non-cellular OTA connection for updating the cellular side firmware.

In embodiments, where UE 100 comprises a control processor 102, a non- cellular radio modem baseband processor 112 and a cellular radio modem baseband processor 122, the disabling comprises control processor 102 turning off the baseband communication functionality of one of the modem baseband processors (1 12 or 122), the updating comprises control processor 102 updating internal memory (114 or 124) of the turned-off modem baseband processor, and the enabling comprises control processor 102 turning on the baseband communication functionality of the turned-off modem baseband processor (112 or 122).

Figure 3 shows UE 100 depicted in Figure 1 in more detail according to embodiments. UE 100 comprises a control processor 102 and a memory 104. UE 100 also comprises a combined non-cellular and cellular radio modem 300 which includes a cellular and non-cellular baseband processor 302. Baseband processor 302 includes a cellular processing part 304, a non-cellular processing part 306, a cellular internal memory 308 and a non-cellular internal memory 310. In the embodiments depicted in Figure 3, one SDR type layerl/physical layer processor 302 is employed for both the modem baseband cellular functionality and the modem baseband non- cellular functionality. In such embodiments, modem baseband firmware stored on UE 100 is stored in internal memories 308 and 310. Internal memories 308 and 310 will typically comprise non- volatile memory. In the embodiments depicted in Figure 3, memory 104 is depicted as memory which is external to control processor 102. In alternative embodiments, memory 104 comprises memory which is internal to control processor 102.

In embodiments, where UE 100 comprises a modem baseband processor 302 including a non-cellular processing part 306 and a cellular radio processing part 304, and a control processor 102, the disabling comprises control processor 102 turning off the baseband communication functionality of one of the modem baseband processor parts (304 or 306), the updating comprises control processor 102 updating internal memory (308 or 310) of the turned-off modem baseband processor part, and the enabling comprises control processor 102 turning on the baseband communication functionality of the turned-off modem baseband processor part (304 or 306).

In the embodiments of Figures 2 and 3, a separate control (or 'host') processor 102, such as a regular CPU, is employed as a main controller or as the master for the whole of the modem baseband functionality.

In some embodiments, the update data comprises a modem baseband firmware update for modem 120 of the first type. In such embodiments, the disabling and enabling relate to the communication capability of modem 120 of the first type.

In other embodiments, the update data comprises a modem baseband firmware update for modem 110 of the second type. In such embodiments, the disabling and enabling relate to the communication capability of modem 1 10 of the second type.

In some embodiments, the update data comprises a modem baseband firmware update for modem 120 of the first type and the update data is received via modem 120 of the same (cellular radio) type.

In other embodiments, the update data comprises a modem baseband firmware update for modem 120 of the first type and the update data is received via modem 110 of the other (non-cellular radio) type.

In other embodiments, the update data comprises a modem baseband firmware update for modem 110 of the second type and the update data is received via modem 110 of the same (non-cellular radio) type.

In other embodiments, the update data comprises a modem baseband firmware update for modem 110 of the second type and the update data is received via modem 120 of the other (cellular radio) type. In embodiments, in response to receipt of the update data, control processor 102 creates a temporary copy of the modem baseband firmware stored on UE 100 (in memory 104 of UE 100). The temporary copy is not stored in either baseband processor memory 114 or baseband processor memory 124, but in separate memory 104 in order that the temporary copy can be utilised as a backup copy in case any errors occur during the updating process. Once the updating of the modem baseband firmware according to the received update data is complete, control processor 102 deletes the temporary copy of the modem baseband firmware from memory 104.

In embodiments, control processor 102 determines whether the update data is received via a modem of the same (cellular radio or non-cellular) type as the (cellular radio or non-cellular) type of the modem the update data is for. In embodiments, the creation and deletion of the temporary copy of the modem baseband firmware are only carried out if the determination is positive, for example only if the update data is for cellular radio baseband modem 120 and the update data was received via cellular radio baseband modem 120 or only if the update data is for non-cellular radio baseband modem 110 and the update data was received via non-cellular radio baseband modem 110. In embodiments, the creation and deletion of the temporary copy of the modem baseband firmware are not carried out if the determination is negative, for example if the update data is for cellular radio baseband modem 120 and the update data was received via non-cellular radio baseband modem 110 or if the update data is for non-cellular radio baseband modem 110 and the update data was received via cellular radio baseband modem 120.

A positive determination means that the update data is received via a modem of the same type as the type of the modem the update data is for. Therefore, a temporary copy of the baseband firmware for the modem being updated is made in order to avoid overwriting the firmware of the modem in question which is being used at that moment. Conversely, a negative determination means that the update data is received via a modem of a different type as the type of the modem the update data is for. Therefore, there is no need to make a temporary copy of the baseband firmware for the modem being updated because there is no risk of overwriting code that is being executed by the modem in question at that particular moment. In alternative embodiments, a temporary copy of the modem baseband firmware is always made during the updating procedure, irrespective of which of modems 110 and 120 the update data is received via and which of modems 110 and 120 the update data is for.

In embodiments, prior to updating the modem baseband firmware stored on

UE 100, control processor 102 carries out a check for transmission errors in the received update data. If control processor 102 detects one or more transmission errors (or a number of transmission errors above a predetermined threshold) in the received update data, the control processor requests re-transmission (or instructs the appropriate modem to request such) of the update data from the network before proceeding with modem disabling, modem baseband firmware updating and modem enabling in relation to the update data.

If control processor 102 detects no transmission errors in the received update data, then control processor proceeds accordingly with modem disabling, modem baseband firmware updating and modem enabling in relation to the update data.

Figure 4 shows a flow diagram according to embodiments. The process begins in step 400 when control processor 102 (denoted 'host' in figure) receives a request (denoted 'code upload request' in figure) to update baseband modem firmware stored on UE 100. Control processor 102 accepts and acknowledges the request to the appropriate network entity or entities.

Step 402 indicates the case of the update data being for updating non-cellular modem baseband firmware, i.e. for updating baseband firmware associated with non- cellular radio baseband modem 110 (or similarly, baseband firmware associated with non-cellular processing part 306).

Control processor 102 handles the downloading of the update data (or 'new firmware image') through the non-cellular or non-cellular network. Step 406 indicates the case of the modem baseband firmware update data being received via the non-cellular radio modem (denoted 'through non-cellular connection' in figure), whereas step 408 indicates the case of the update data being received via the cellular radio modem (denoted 'through cellular connection' in figure).

In step 414, control processor 102 saves a temporary copy of the current non- cellular modem baseband firmware in memory 104. In step 418, control processor 102 carries out a check for transmission errors in the received update data (denoted 'new code image' in figure).

If the transmission error check indicates errors (denoted 'code image has errors' in figure) in step 422, then re-transmission of all or part of the update data is requested in step 430, after which processing returns to step 406 or 408 as appropriate.

If the transmission error check indicates no errors (denoted 'code image ok' in figure) in step 420, then because the received update data is for updating non-cellular modem baseband firmware, control processor 102 disables the communication capability (denoted 'turn off in figure) of non-cellular radio modem 110 (or similarly, non-cellular processing part 306) in a controlled manner in step 428 which forces UE 100 to go off-line from the non-cellular network side. Attempting to update the firmware of a modem whilst still online could lead to loss of communication capability and cause errors in the updating process.

In step 436, control processor 102 updates the non-cellular modem baseband firmware according to the received update data, i.e. control processor 102 copies the received new firmware image to the appropriate internal memory location 114 of the non-cellular baseband Ll/physical layer processor 112 (or similarly, non-cellular internal memory location 310 of cellular and non-cellular baseband processor 302) thus updating, replacing or overwriting the previous contents of such internal memory. Disabling the communication capability may involve instructing the non- cellular radio modem 110 to enter a halt or reset state.

Once updating of the internal memory is complete, control processor 102 enables (denoted 'turn on' in figure) the previously disabled communication capability of non-cellular radio modem 110 (or similarly, non-cellular processing part 306) in step 440 which forces UE 100 to go back on-line with the non-cellular network side. Enabling the disabled communication capability may involve releasing the non-cellular radio modem 110 from a halt or reset state.

Control processor 102 deletes the temporary copy of the non-cellular modem baseband firmware stored in memory 104. Control processor 102 acknowledges completion of the requested modem baseband firmware update in step 444. Step 404 indicates the case of the update data being for updating cellular modem baseband firmware, i.e. for updating baseband firmware associated with cellular radio baseband modem 120 (or similarly, baseband firmware associated with cellular processing part 304).

Control processor 102 handles the downloading of the update data (or 'new firmware image') through the non-cellular or non-cellular network. Step 410 indicates the case of the modem baseband firmware update data being received via the non-cellular radio modem (denoted 'through non-cellular connection' in figure), whereas step 412 indicates the case of the update data being received via the cellular radio modem (denoted 'through cellular connection' in figure).

In step 416, control processor 102 saves a temporary copy of the current cellular modem baseband firmware in memory 104.

In step 421, control processor 102 carries out a check for transmission errors in the received update data (denoted 'new code image' in figure).

If the transmission error check indicates errors (denoted 'code image has errors' in figure) in step 424, then re-transmission of all or part of the update data is requested in step 432 after which processing returns to step 410 or 412 as appropriate.

If the transmission error check indicates no errors (denoted 'code image ok' in figure) in step 426, then because the received update data is for updating cellular modem baseband firmware, control processor 102 disables the communication capability (denoted 'turn off in figure) of cellular radio modem 120 (or similarly, cellular processing part 304) in a controlled manner in step 434 which forces UE 100 to go off-line from the cellular network side.

In step 438, control processor 102 updates the cellular modem baseband firmware according to the received update data, i.e. control processor 102 copies the received new firmware image to the appropriate internal memory location 124 of the cellular baseband Ll/physical layer processor 122 (or similarly, cellular internal memory location 308 of cellular and non-cellular baseband processor 302) thus updating, replacing or overwriting the previous contents of such internal memory. Disabling the communication capability may involve instructing the cellular radio modem 120 to enter a halt or reset state. Once updating of the internal memory is complete, control processor 102 enables (denoted 'turn on' in figure) the previously disabled communication capability of cellular radio modem 120 (or similarly, cellular processing part 304) in step 442 which forces UE 100 to go back on-line with the cellular network side. Enabling the disabled communication capability may involve releasing the cellular radio modem 120 from a halt or reset state.

Control processor 102 deletes the temporary copy of the cellular modem baseband firmware stored in memory 104 and acknowledges completion of the requested data update in step 444.

Various embodiments of UE 100 can include, but are not limited to: mobile

(or 'cellular') telephones (including so-called "smart phones"), data cards, USB dongles, personal portable digital devices having wireless communication capabilities including but not limited to laptop/palmtop/tablet computers, digital cameras and music devices, sensor network components and Internet appliances. User equipment 100 may also be referred to as a user terminal or endpoint device.

Various embodiments of memories 104, 114, 124, 308 and 310 include any data storage technology type which is suitable to the local technical environment, including but not limited to semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory, removable memory, disc memory, flash memory, DRAM, SRAM, EEPROM and the like. Various embodiments of processors 112, 122 and 302 include but are not limited to microprocessors, digital signal processors (DSPs), multi-core processors, general purpose computers, and special purpose computers.

It will be understood that any of processors 112, 122 and 302 or processing system or circuitry referred to herein may in practice be provided by a single chip or integrated circuit or plural chips or integrated circuits, optionally provided as a chipset, an application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), etc. The chip or chips may comprise circuitry (as well as possibly firmware) for embodying at least one or more of a data processor or processors, a digital signal processor or processors, baseband circuitry and radio frequency circuitry, which are configurable so as to operate in accordance with the exemplary embodiments. In this regard, the exemplary embodiments may be implemented at least in part by computer software stored in (non-transitory) memory and executable by the processor, or by hardware, or by a combination of tangibly stored software and hardware (and tangibly stored firmware).

Although at least some aspects of the embodiments described herein with reference to the drawings comprise computer processes performed in processing systems or processors, embodiments also extend to computer software, computer programs, particularly computer programs on or in a carrier, adapted for putting embodiments into practice. The program may be in the form of non-transitory source code, object code, a code intermediate source and object code such as in partially compiled form, or in any other non-transitory form suitable for use in the implementation of processes according to embodiments. The carrier may be any entity or device capable of carrying the program. For example, the carrier may comprise a storage medium, such as a solid-state drive (SSD) or other semiconductor- based RAM; a ROM, for example a CD ROM or a semiconductor ROM; a magnetic recording medium, for example a floppy disk or hard disk; optical memory devices in general; etc.

The term 'firmware' as used herein refers to one or more software programs or sets of instructions programmed on one or more hardware components or devices. Firmware provides the necessary instructions on how a device operates. Firmware can also be considered as semi-permanent, since it remains unchanged and untouched by the program execution itself, unless it is updated by a firmware update process. Firmware can also be considered as software for hardware, or software that is tightly coupled with hardware.

The term 'baseband firmware' as used herein refers to firmware for baseband hardware.

Reference to M2M herein should also be taken to include so-called device-to- device (D2D) communication functionality, direct communication, peer-to-peer communication, or adhoc communication, etc.

The above embodiments are to be understood as illustrative examples of embodiments. Further embodiments are envisaged. It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above may also be employed without departing from the scope of the invention, which is defined in the accompanying claims.

List of acronyms and abbreviations:

CPU central processing unit

GSM global system for mobile communications

HW hardware

LI layer 1, the physical layer in the OSI model

LTE long term evolution

LTE-A long term evolution advanced

M2M machine-to -machine

ODM original design manufacturer

OEM original equipment manufacturer

OSI open systems interconnection

OTA over-the-air

PSTN public switched telephone network

SDR software defined radio

SW software

UE user equipment

W-CDMA wideband code division multiple access

WLAN wireless local area network