GB2372675A - Downloading software for a wireless communications device which is controlled by a host computer - Google Patents

Downloading software for a wireless communications device which is controlled by a host computer Download PDF

Info

Publication number
GB2372675A
GB2372675A GB0100895A GB0100895A GB2372675A GB 2372675 A GB2372675 A GB 2372675A GB 0100895 A GB0100895 A GB 0100895A GB 0100895 A GB0100895 A GB 0100895A GB 2372675 A GB2372675 A GB 2372675A
Authority
GB
United Kingdom
Prior art keywords
software
communications device
computer system
data
data source
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB0100895A
Other versions
GB0100895D0 (en
Inventor
Thomas Albert Gaskell
Ian Kenneth Appleton
Alexander Howard Lloyd
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aeroflex Cambridge Ltd
Original Assignee
Ubinetics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ubinetics Ltd filed Critical Ubinetics Ltd
Priority to GB0100895A priority Critical patent/GB2372675A/en
Publication of GB0100895D0 publication Critical patent/GB0100895D0/en
Priority to PCT/GB2002/000064 priority patent/WO2002056621A1/en
Publication of GB2372675A publication Critical patent/GB2372675A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems

Abstract

A wireless modem 7 is connected to a controlling Personal Computer (PC) 1, and establishes a data link with a remote source computer 25. Software for configuring, interfacing and utilising the wireless modem 7 is downloaded from the source computer 25. The software is fragmented into discrete data packets at the source computer 25, each packet being downloaded separately by the wireless modem 7. When all the data packets are downloaded, the packets are verified to ensure that they are error-free. If no errors are present, the packets are reassembled to form the complete software.

Description

P5024 1 2GB
A Method of Downloading Software for a Communications Device This invention relates to a method of downloading software for a communications device, and particularly, though not exclusively, for a wireless communications device which is controlled by a host computer.
Computer-controlled communications devices, and in particular wireless communication devices are becoming increasingly popular. Such devices generally comprise a small peripheral device having circuitry for enabling the controlling computer to access a communications network by means of a link. In the case of wireless communication devices, this is a wireless link. An example of such a device is a PC card modem. Such devices are of a small physical size and are lightweight.
In order for the controlling computer system (called a "host") to communicate with the communications device, software is required, both on a microprocessor of the communications device, and on the host. Specifically, this software is required to configure and interface data between the host and the communications device, and also to provide application software for utilisation of the communications device. Such software is conventionally provided on a CDROM or disk, which can be disadvantageous since the disk can become damaged or lost, or may become out-of-date relatively quickly.
In principle, the use of a data link can overcome the above disadvantages by allowing more up-to-date software to be sent to the host via the communications device.
However, although the data link can be used to acquire or update software in a convenient manner, this can be difficult or inefficient for a number of reasons. Firstly, the amount of raw data involved is relatively large, and so the telephone call or other connection period required to acquire the data can be expensive. Also, the length of the telephone call or connection period makes the data transmission vulnerable to interruption or corruption. As a further point, the communications device has to run its current software in order to complete and verify reception of new software, and prior to
changing over to the new software. It cannot normally change over partway through the process.
According to a first aspect of the present invention, there is provided a method of downloading software for a communications device, the method comprising the steps of: establishing a data link between a local computer system and a remote data source, the local computer system comprising a communications device in connection with a host computer; downloading software from the remote data source to the local computer system, the software being fragmented into discrete packets; and re- assembling the fragmented software at the local computer system.
By downloading the software over the link in fragmented discrete data packets, the amount of raw data which is transmitted at a given time is reduced. Each packet of data is therefore less susceptible to interruption or corruption. Even if a packet is affected, it will only be necessary for that particular data packet to be downloaded again, and not the entire data batch. As a further rehmement of this technique, if only part of the software had been changed it would not be necessary to download all the software again, only the data packets that contained changed fragments of the software. The packets of data required to download the software may be acquired over several telephone calls or other communication period of the link if necessary. Once the local computer system has acquired all the packets of data, re-assembling of the fragmented software provides the operational software.
The invention finds particular application where the communications device is a wireless communications device, the software being downloaded over a wireless data link. For the purpose of this invention, it will be appreciated that the data is pre-arranged into discrete packets at a source location. That is, the software is identifiably fragmented at the source location.
Preferably, the method further comprises the step of performing a verification of the re-assembled software. In this way, the fragmented software is checked for errors at the
local computer system. As briefly mentioned above, if the verification determines that a data error has occurred in a particular batch of data, then the local computer system can request that that particular packet is re-sent, either immediately, or at some later time. For host driver or application software, the step of re-assembling and verifying the software may be performed at the communications device of the local computer system, with the re-assembled software thereafter being transferred to the host computer for execution. In this way, the communications device can be used to re-assemble the fragmented data into the software e.g. host driver software and/or application software, and then if appropriate, to transfer or re-program the software to the host computer.
For host driver or application software, and/or for the communications device software, as an alternative to the above, the step of reassembling and verifying the software may be performed at the host computer, the re-assembled software thereafter being retained in the host or transferred to the communications device for execution. In this case, the host computer is used to re-assemble the fragmented data into the software, e.g. a wireless modem application program, and then to transfer, or re-program, the software to the communications device. It could automatically install the new driver or application software on the host itself.
The local computer system may be programmed to establish a data link with the remote data source only at predetermined times. In this way, it is possible to download large amounts of data at convenient times. For example, the data link might only be established at off-peak call charge times, or at times when the likelihood of interruption or corruption is reduced, e.g. at night. The data link may make use of other forms of low cost data transfer, e.g. short message service, or data that it transmitted concurrently with a voice signal such that the data transfer would take place over a number of voice calls without the user necessarily being aware that this had taken place, or data calls made only when the wireless communications device was in a low cost geographical region, e.g. the home cell of a cellular communications system.
The download operation may be controlled using an application program on the local computer system, the application program including a graphical user interface for displaying the status of the download operation. Alternatively, the operation may be controlled by software at the remote data source.
The method according to the invention finds particular application to wireless PC card type devices.
The method is particularly useful for sending software file types which are required for updating on a regular basis, e.g..INF files for the configuration folders of PCs.
According to a second aspect of the present invention, there is provided a computer program for downloading software for a communications device, the computer program being stored on a computer usable medium and comprising computer readable instructions for causing a computer system to execute the steps of: establishing a data link between the computer system and a remote data source, the computer system comprising the communications device in connection with a host computer; downloading software from the remote data source to the computer system, the software being fragmented into discrete packets; and re-assembling the fragmented software at the computer system.
The invention will now be explained, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a block diagram representation of a wireless communications device for use in the method according to the present invention; and Figure 2 shows a sequence of data transfer operations for transferring software data in a download operation.
Referring to the drawings, Figure 1 shows a Personal Computer (PC) 1 which comprises a memory 3 and a Central Processing Unit (CPU) 5. The CPU 5 is
connected to the memory 3 and transmits and receives data via a port 21. The PC 1 is connected to a wireless modem 7 by means of a connector 19 between the port 21 of the PC and a port 23 of the wireless modem 7.
The wireless modem 7 is in the form of a PC card peripheral device, and comprises a processor sub-circuit 9, which is connected to a radiofrequency (r.ú) sub-circuit 15, and a memory 13. The memory 13 comprises a non-volatile flash memory IC. The r.f.
sub-circuit 15 is connected to an r.f. antenna 17.
It will be appreciated that the wireless modem 7 operates by modulating and demodulating digital data for wireless transmission or reception. This modulation and demodulation is performed in the r.f. sub-circuit 15. The wireless modem 7 is controlled by the processor sub-circuit 9, which is itself controlled by the host PC 1.
The processor sub-circuit 9 also accesses and stores information in the memory 13, whilst communicating with the host PC 1.
The PC 1 includes an application program (hereinafter referred to as the "download program") which provides a graphical user interface (GUI) application for initiating and verifying software download operations, as will be explained below.
Software for configuring, interfacing and utilising the wireless modem 7 is downloaded from a source computer 25. At the source computer 25, the software is pre-arranged into discrete fragments (or packets) of software data, and stored in a memory (not shown). These packets of data may be fragmented using established protocols such as TCP/IP or techniques employed in GPRS, or by using an alternative proprietary protocol which may be optional for larger packets of data, or a combination of these protocols. An overview of the download operation will now be explained with reference to Figure
In order for a downloading operation to begin, the download program on the PC 1 sends an initiating signal "I" to the source computer 25, by means of the wireless modem 7 (this being represented as step a). This initiating signal I is received by the source computer 25 and causes it to transmit the data packets back to the wireless modem 7 and, accordingly, the PC 1 (see step b). The first data packet is labelled "A" and is transmitted at time t1. This first data packet is received by the wireless modem 7 by means of the r.f. antenna 17, the r.f. sub-circuit 15, and the processor sub-circuit 9, "hereafter the data packet is stored in a predetermined directory of the memory 13. In a similar manner at time t2, a second data packet labelled "B" is sent by the source computer 25, received and stored by the wireless modem 7, with the process thereafter being repeated for the remaining data packets "C" and "D" at times t3 and t4, respectively. The GUI of the download program is used to display the progress of the overall download operation.
In the above case, the received data packets A, B. C and D are stored in the memory 13 of the wireless modem 7. However, it should be understood that the data packets can also be stored in the memory 3 of the PC 1.
Once the source computer 25 has completed sending the data packets A, B. C and D, it indicates that the transmission is complete by sending a termination signal "T". When this signal T is received by the wireless modem 7, the download program in the PC 1 performs a verification check on each of the individual data packets A, B. C and D stored in the memory 13 of the wireless modem 7. This verification check can be based on any one of the many known error verification techniques or may use a method specifically designed for this application.
If one or more of the data packets A, B. C and D is found to contain an error during this verification process, the download program sends a new initiating signal specific to the one or more data packets containing an error. For example, if the data packet B is found to have an error, an initiating signal IB is sent to the source computer 25 (see step c). This causes the source computer 25 to re-transmit the data packet B (step d). This
d process is repeated for each data packet for which the verification step determines that an error has occurred.
When the download program determines that all of the data packets A, B. C and D are error-free, the data link between the wireless modem 7 and the source computer 25 is terminated. Having acquired and verified the data packets A, B. C and D (which are stored in the memory 13 of the wireless modem 7) the download program then performs a re-assembling operation to convert the discrete data packets A, B. C and D into the single software program. This may be performed using conventional de-fragmentation software or software specifically designed for this application.
Once the software is in its assembled form, it can be executed on the wireless modem 7 by means of the GUI of the download program (assuming the software is actually intended for execution on the modem). Alternatively, if the assembled software is intended for use on the PC 1 (because it is driver software or an application program for controlling the wireless modem 7) then the assembled software can be transferred from the wireless modem to the memory 3 of the PC 1. As mentioned above, the data packets A, B. C and D could be initially stored in the memory 3 of the PC 1, rather than on the memory 13 of the wireless modem 7, in which case the two above-mentioned operations would be reversed.
The download program includes a scheduling application for allowing the user to control the timing and duration of when the communications link is established between the wireless modem 7 and the source computer 25. Accordingly, the user may specify that the software packets are only downloaded at specific times of the day, e.g. a off-peak times (when call charges are reduced) or at night (when interruption is less likely). It should also be appreciated that, whereas this description is of a data transfer system
initiated and controlled by the PC 1, it would equally be possible to give control of the
b process to the remote data source 25. In this case, the PC 1 may, or may not, indicate to the user that the data transfer is taking place and the user may or may not be allowed to interfere if he/she so requires.
In the above-described embodiment, the communications channel between the source computer 25 and the wireless modem 7 is a point-to-point link. In a further embodiment (not shown) the wireless modem 7 is replaced by a cellular modem. In this situation, a source computer includes a cellular transmitter for transmitting the software data to a localised area or "cell" containing any number of users. In the event of errors occurring in the data packets, the 're-send' technique described above is not possible, since a particular error may only have occurred for one user (the other users in a cell receiving correct data). In this case, the source computer repeatedly transmits each packet of software data periodically. Accordingly, if an error is detected in a particular packet of data, the download software will 'look-out' for the next transmission of that particular packet, acquire it, and then re-assemble the software.

Claims (14)

. Claims
1. A method of downloading software for a communications device, the method comprising the steps of: establishing a data link between a local computer system and a remote data source, the local computer system comprising the communications device in connection with a host computer; downloading software from the remote data source to the local computer system, the software being fragmented into discrete packets; and reassembling the fragmented software at the local computer system.
2. A method according to claim 1, further comprising the step of performing a verification of the re-assembled software.
3. A method according to claim 2, further comprising the step of repeating the download operation if the verification determines that a data error has occurred.
4. A method according to claim 2 or claim 3, wherein the step of reassembling and verifying the software is performed at the communications device, the re-assembled software thereafter being transferred to the host computer for execution.
5. A method according to claim 2 or claim 3, wherein the step of reassembling and verifying the software is performed at the host computer, the re-assembled software thereafter being transferred to the communications device for execution.
6. A method according to any preceding claim, wherein the local computer system downloads software from the remote data source by means of two or more separate download operations, the data link between the local computer system and the remote data source being interrupted between the separate download operations.
7. A method according to any preceding claim, wherein the local computer system is programmed to establish a data link with the remote data source only predetermined times.
8. A method according to any preceding claim, wherein the download operation is controlled using an application program on the local computer system, the application program including a graphical user interface for displaying the status of the download operation.
9. A method according to any preceding claim, wherein the download operation is controlled using an application program associated with the remote data source.
1O. A method according to any preceding claim, wherein the communications device is a wireless communications device, the software being downloaded from the remote data source over a wireless data link.
11. A method according to claim 10, wherein the communications device is a wireless PC card.
12. A computer program for downloading software for a communications device, the computer program being stored on a computer usable medium and comprising computer readable instructions for causing a computer system to execute the steps of: establishing a data link between the computer system and a remote data source, the computer system comprising the communications device in connection with a host computer; downloading software from the remote data source to the computer system, the software being fragmented into discrete packets; and re-assembling the fragmented software at the computer system.
13. A method of downloading software for a communications device, substantially as hereinbefore described with reference to the accompanying drawings.
14. A computer program for downloading software for a communications device, substantially as hereinbefore described with reference to the accompanying drawings.
GB0100895A 2001-01-12 2001-01-12 Downloading software for a wireless communications device which is controlled by a host computer Withdrawn GB2372675A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB0100895A GB2372675A (en) 2001-01-12 2001-01-12 Downloading software for a wireless communications device which is controlled by a host computer
PCT/GB2002/000064 WO2002056621A1 (en) 2001-01-12 2002-01-09 Downloading software for a remote data source to a communications device including segmentation, reassembly and selective retransmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0100895A GB2372675A (en) 2001-01-12 2001-01-12 Downloading software for a wireless communications device which is controlled by a host computer

Publications (2)

Publication Number Publication Date
GB0100895D0 GB0100895D0 (en) 2001-02-21
GB2372675A true GB2372675A (en) 2002-08-28

Family

ID=9906759

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0100895A Withdrawn GB2372675A (en) 2001-01-12 2001-01-12 Downloading software for a wireless communications device which is controlled by a host computer

Country Status (2)

Country Link
GB (1) GB2372675A (en)
WO (1) WO2002056621A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005039204A1 (en) * 2003-10-17 2005-04-28 Qualcomm Incorporated Method and apparatus for provisioning and activation of an embedded module in an access terminal of a wireless communication system
US8228949B2 (en) 2004-06-18 2012-07-24 Qualcomm Incorporated Quasi-orthogonal multiplexing for a multi-carrier communication system

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009676A1 (en) * 2001-07-09 2003-01-09 Cole Terry L. Peripheral device with secure driver
NZ523378A (en) 2002-12-24 2005-02-25 Yellowtuna Holdings Ltd Network device without configuration data and a method of configuring the network device from a remote verification authority
EP1439721A1 (en) * 2003-01-08 2004-07-21 Samsung Electronics Co., Ltd. IOTA software download via auxiliary device
WO2006009470A1 (en) * 2004-07-23 2006-01-26 Yellowtuna Holdings Ltd Network device configuration
US20160085538A1 (en) * 2014-09-22 2016-03-24 Qualcomm Technologies International, Ltd. Over-the-air updates for ble devices

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4801934A (en) * 1984-10-04 1989-01-31 Siemens Aktiengesellschaft Method and apparatus for transmission of data with data reduction
WO1997008838A2 (en) * 1995-08-14 1997-03-06 Ericsson Inc. Method and apparatus for modifying a standard internetwork protocol layer header
US5680400A (en) * 1995-05-31 1997-10-21 Unisys Corporation System for high-speed transfer of a continuous data stream between hosts using multiple parallel communication links
EP0981252A2 (en) * 1998-08-19 2000-02-23 Lucent Technologies Inc. Using discrete message-oriented services to deliver short audio communications
US6064943A (en) * 1994-03-07 2000-05-16 Clark, Jr.; Louis George Computer network for collecting and analyzing agronomic data
US6160998A (en) * 1999-06-25 2000-12-12 Harris Corporation Wireless spread spectrum ground link-based aircraft data communication system with approach data messaging download

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI955188A (en) * 1995-10-30 1997-06-24 Nokia Telecommunications Oy Mobile software maintenance
US6522640B2 (en) * 1998-01-28 2003-02-18 Gateway, Inc. Distributed modem for non-cellular cordless/wireless data communication for portable computers
US6629284B1 (en) * 1999-10-28 2003-09-30 Koninklijke Philips Electronics N.V. System and method for supervised downloading of broadcast data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4801934A (en) * 1984-10-04 1989-01-31 Siemens Aktiengesellschaft Method and apparatus for transmission of data with data reduction
US6064943A (en) * 1994-03-07 2000-05-16 Clark, Jr.; Louis George Computer network for collecting and analyzing agronomic data
US5680400A (en) * 1995-05-31 1997-10-21 Unisys Corporation System for high-speed transfer of a continuous data stream between hosts using multiple parallel communication links
WO1997008838A2 (en) * 1995-08-14 1997-03-06 Ericsson Inc. Method and apparatus for modifying a standard internetwork protocol layer header
EP0981252A2 (en) * 1998-08-19 2000-02-23 Lucent Technologies Inc. Using discrete message-oriented services to deliver short audio communications
US6160998A (en) * 1999-06-25 2000-12-12 Harris Corporation Wireless spread spectrum ground link-based aircraft data communication system with approach data messaging download

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005039204A1 (en) * 2003-10-17 2005-04-28 Qualcomm Incorporated Method and apparatus for provisioning and activation of an embedded module in an access terminal of a wireless communication system
US7539156B2 (en) 2003-10-17 2009-05-26 Qualcomm Incorporated Method and apparatus for provisioning and activation of an embedded module in an access terminal of a wireless communication system
US8228949B2 (en) 2004-06-18 2012-07-24 Qualcomm Incorporated Quasi-orthogonal multiplexing for a multi-carrier communication system

Also Published As

Publication number Publication date
GB0100895D0 (en) 2001-02-21
WO2002056621A1 (en) 2002-07-18

Similar Documents

Publication Publication Date Title
US7650164B2 (en) Method and system for exchanging data between a mobile phone and a PC
US6816728B2 (en) Aircraft data communication system and method
AU764636B2 (en) Method of updating client's installed data in response to a user-triggered event
EP1742432B1 (en) Mobile terminal, contents delivery system and contents reproduction program
KR100584443B1 (en) Component Download Manager for a Wireless Mobile Station and Method of Operation
US20050022212A1 (en) Software driver code usage
KR100663538B1 (en) System and Method for Delta-based Over-The-Air Software Upgrades for a Wireless Mobile Station
CN101283565B (en) Device interface architecture and protocol
US6128483A (en) Simultaneous over the air data download to multiple radios
CN106233637A (en) System and method for short distance wireless data transmission
CA2357382A1 (en) Software update method, apparatus and system
CN102510409A (en) Method and system for quickly and remotely updating program of mobile terminal by using wireless network
KR20040004035A (en) Application catalog on an application server for wireless devices
WO2006131669A3 (en) Multimode mobile terminal with automatic selection of interface of radio access network
CN101022612A (en) Mobile terminal user information data duplicate method
US20030046374A1 (en) Bidirectional remote communication VIA browser plug-in
EP3977269B1 (en) Enabling upgrading firmware of a target device
CN105610966A (en) Terminal of Internet of things and upgrading method thereof
GB2372675A (en) Downloading software for a wireless communications device which is controlled by a host computer
EP1499086B1 (en) Internet service synchronization method for mobile communication terminal
CN109639842B (en) NB-IOT equipment software upgrading system and method
JP4823239B2 (en) Wireless communication apparatus and wireless communication system having the apparatus
Cisco Working with System Software Images
EP2151082B1 (en) Neighbouring device aid in receiving sets of data
KR100566226B1 (en) How to download system code of network equipment using SNP

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)