WO2000017749A1 - Remote firmware upgrade - Google Patents

Remote firmware upgrade Download PDF

Info

Publication number
WO2000017749A1
WO2000017749A1 PCT/US1999/021481 US9921481W WO0017749A1 WO 2000017749 A1 WO2000017749 A1 WO 2000017749A1 US 9921481 W US9921481 W US 9921481W WO 0017749 A1 WO0017749 A1 WO 0017749A1
Authority
WO
WIPO (PCT)
Prior art keywords
firmware
memory
peripheral device
base station
firmware upgrade
Prior art date
Application number
PCT/US1999/021481
Other languages
French (fr)
Inventor
Doris Ann Mattingly
Joseph Michael Hansen
Original Assignee
Ericsson Inc.
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 Ericsson Inc. filed Critical Ericsson Inc.
Priority to AU61506/99A priority Critical patent/AU6150699A/en
Publication of WO2000017749A1 publication Critical patent/WO2000017749A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the present invention relates to computer systems, and more particularly to systems and methods for upgrading firmware within peripheral devices over a communications link.
  • USB Universal Serial Bus
  • a USB is typically used to connect peripheral devices to a PC.
  • USB supports data transmission rates of over 10 Bits/s, and as such is suitable for supporting real-time video and/or audio applications.
  • USB provides a simple, universal interface for a wide range of USB compliant devices including digital joysticks, scanners, speakers, digital cameras, monitor controllers and, essentially, any other devices traditionally adapted for the various PC interfaces.
  • USB With USB, these devices all share a common interface and therefore there is a potential for dramatic increases in their interaction and enhanced functionality, especially in light of the high data transmission rates supported by USB .
  • a particular application that can benefit from USB is computer telephony.
  • Computer telephony is a field of computer and telephony integration in which a PC telephone peripheral provides voice telephony and, through software running on an associated host PC, more advanced services, e ⁇ management of voice, data and fax mail boxes, call routing services, etc.
  • the personal wireless network a version of PC telephony, has emerged as a viable communications alternative for the small office and home environments.
  • the personal wireless network is a radio frequency network utilizing a personal computer (PC) as a communications center.
  • PC personal computer
  • the personal wireless network promises to enable the consumer the capability of printing documents, interchanging files and accessing the Internet, regardless of where the PCS, printers and telephone jacks are installed and used. Other electrical systems will also be controlled by the computer.
  • the personal wireless network utilizes high speed interfaces, such as the USB, for availing real-time communications in a network of essentially all of the abovementioned wireless and wired devices.
  • CMOS complementary metal-oxide-semiconductor
  • ROM read-only memory
  • PROM programmable read-only memory
  • firmware The data (or information) stored in this type of programmable and/or replaceable memory and/or logic circuitry is typically referred to as firmware.
  • peripheral device it would be disadvantageous for the consumer to bring a peripheral device into a service department to be serviced when subscribing to new or advanced services, for example. Similarly, it would be undesirable to force the subscriber to manually update the peripheral device themselves.
  • the improved systems and methods will allow for an automated upgrade to the firmware that can be conducted without significantly impacting the user and/or other networked computing resources .
  • improved systems and methods that can be used to automatically determine if the firmware in a peripheral device requires an upgrade.
  • the present invention provides improved systems and methods for upgrading the firmware within networked peripheral devices.
  • the firmware upgrade is conducted automatically using existing network resources.
  • automated techniques are employed to determine if a connected peripheral device needs to have a firmware upgrade.
  • the peripheral device includes at least one memory having at least a first portion and a second portion. Each of the portions is configured to store a firmware upgrade.
  • a PC is also provided and connected to the peripheral device over a communications link. The PC is configured to determine if the peripheral requires a firmware upgrade, and if required to transfer firmware upgrade data, the peripheral device determines whether to upgrade the first portion or the second portion in the memory.
  • FIGURE 1 is an exemplary communications system that may be improved upon with implementation of a preferred embodiment of the present invention, and;
  • FIGURE 2 is a base station and personal computer as utilized in a preferred embodiment of the present invention.
  • FIGURE 1 is a block diagram depicting a personal wireless network, generally designated by the reference numeral 100, in which the present invention may be applied.
  • a personal wireless network 100 Within personal wireless network 100 is a personal computer 110 and a base station 120.
  • PC 110 and base station 120 are coupled together through USB cable 115.
  • Base station 120 is a peripheral device that supports multiple user communications by providing a wireless interface between various other peripherals operating therefrom and a public switched telephone network (PSTN) 180.
  • PSTN public switched telephone network
  • Base station 120 also provides an interface between the wireless peripherals and PC 110 for any advanced telephony applications functioning by means of PC 110 which can additionally provide interface means with any external data or telephony networks 190, e& ISDN, PLMN, Internet, etc.
  • Peripherals operating in coordination with base station 120 may include PDA 130, fax machine 140, wireless telephones 150, laptop computer 160, a wired telephone 170 or any other device with appropriate communication provisions for transmitting and receiving communication to or from base station 120.
  • wireless data transmission between base station 120 and any base station peripherals conform with the Digital Enhanced Cordless Telecommunications (DECT) standards although any digital communications protocol may be substituted therefor.
  • Base station 120 will, in general, have a majority of its logic contained in embedded software, i.e., firmware.
  • firmware Traditionally, when new functionality or services are to be added to the personal wireless network 100, provisional updates to base station 120 are accommodated in one of two ways. First, a new base station may be designed with the upgraded firmware installed.
  • FIGURE 2 depicts a personal computer (PC) 210 and a base station 220 within the personal wireless network 100 shown in FIGURE 1, in accordance with certain embodiments of the present invention.
  • PC 210 includes a USB port 230 for communicating with base station 220 over a USB cable 215, which is connected to a USB plug 240.
  • PC 210 additionally includes a processor 250 and a memory 260 that is, in a preferred embodiment, a typical single in-line memory module (SIMM).
  • SIMMM single in-line memory module
  • PC 210 also has coupled thereto a CD-ROM drive 270 with communications therebetween being made over an IDEA cable 225.
  • Base station 220 includes a static random access memory (SRAM), such as, for example, flash memory 280, for storing firmware necessary for base station 220 operation.
  • Flash memory 280 is preferably partitioned into at least two memory partitions 280A and 280B.
  • memory partitions 280A and 280B can be embodied in two or more separate flash memory chips (not shown). Each memory partition 280A and 280B contains a respective subpartition
  • the base station 220 firmware upgrade process includes storing an updated firmware version in memory 260, as received from an external data source, e.g. from a CD-ROM disk read from CD-ROM drive 270. It is understood that writing an updated firmware revision into memory 260 may be accompanied by writing the associated logic directives, i.e., software, for carrying out the firmware revision process into the same or different memory 260.
  • the logic directives for carrying out the firmware revision may be written into a storage media, e.g., a hard drive, prior to loading the updated firmware into memory 260.
  • a storage media e.g., a hard drive
  • an associated updated firmware version string is written into memory partition 260 A.
  • a rudimentary step in the firmware upgrade process is the evaluation of whether a firmware upgrade is necessary at all, i.e., an evaluation of whether or not the firmware currently stored in the base station's memory 280 is outdated by a current version of the firmware stored in memory 260.
  • the base station firmware version string stored in memory partition 281 A is extracted and transferred from base station 220 to PC 210 via the USB interface where it is read by processor 250.
  • the firmware update version string is subsequently retrieved from memory partition 260 A by processor 250 which makes a numerical comparison between the two strings.
  • the comparison procedure is preferably a hexadecimal comparison and requires firmware revisions to be enumerated chronologically. Equivalent strings indicate thebase station 220 is currently operating with the most recent firmware available and the firmware update terminates. If the string comparison, however, indicates the current firmware update version string is larger than the current firmware version string associated with the firmware version residing within base station 220, a firmware version update is necessitated and the process progresses according to the methods described hereinbelow.
  • the base station 220 is notified of an impending firmware upgrade by a message transmitted from PC 210 to the base station 220 over the default control pipe of the USB as required in USB communication transfers.
  • Base station CPU processor 290 then begins preparation of the firmware upgrade by erasing the memory partition 280B allocated for the writing of the firmware upgrade. Concurrently, base station processor 290 directs the initialization of the required queues for receiving the incoming packets that will be transferred from PC 210 over the USB . Once the base station has been prepared for the firmware upgrade, a notification message is transmitted from base station 220 to PC 210 over the USB interface.
  • the firmware update stored in memory 260 is packetized and individual packets begin being transmitted to base station 220 over one of the available bulk pipes of the USB .
  • a bulk pipe is chosen for actual transfer of the firmware upgrade so that bandwidth available on the isochronous pipes, those required for servicing of real-time communication peripherals operating from base station 220, is not consumed by the firmware upgrade, thereby allowing uninterrupted service of the personal wireless network 100 throughout the firmware upgrade.
  • base station processor 290 Due to the fact that flash memory writes are often quite slow, it is likely that the transfer rate of the firmware upgrade over the USB will exceed the write rate to the memory partition 280B. It is thus a responsibility of base station processor 290 to constantly monitor the queue loading. In the event the queue becomes full, the base station processor 290 instigates a block mode on the bulk pipe according to the standard USB suspend/resume logic. This operation on the USB, in turn, forces PC 210 to suspend transmission of additional firmware upgrade packets until the queue regains suitable accommodations.
  • the last packet of the firmware upgrade is preferably a checksum value.
  • base station processor 290 generates a checksum value according to the firmware written into memory partition 280B. This value is then compared to the checksum value transmitted over the USB .
  • a pass or fail status for the firmware upgrade results from the respective equivalence or nonequivalence of the checksum comparisons.
  • the firmware upgrade version string is written into memory subpartition 28 IB.
  • a flag in base station processor 290 is then be set indicating the current base station firmware is stored in memory partition 280B.
  • the firmware upgrade version string is not written into memory subpartition 28 IB thus maintaining the firmware stored in memory partition 280A as the current base station firmware.
  • the base station 220 firmware upgrade is completed by transmission of a control signal to PC 210 indicating the status of the firmware upgrade. It is important to note that the firmware upgrade version string is not written into the associated memory subpartition until a pass status of the firmware upgrade is obtained from the checksum comparison.
  • the base station memory partition containing the current operating base station firmware is denoted by a flag stored in a separate parameters section of the flash memory, designated as the "active sector". Otherwise if the flag were stored in a register of the base station processor 290, the flag would likely be erased since, in general, internal registers tend to be volatile in nature and therefore maintain no values upon power loss.
  • the base station Since the upgraded firmware version string is not written into memory partition 28 IB until a successful firmware upgrade made to memory partition 280B has been verified, the base station needs only to, upon power up, make a comparison between the firmware version strings stored in respective memory partitions 281 A and 28 IB. The greater of the two firmware version strings thereby indicates to the base station processor 290 which memory partition the current firmware is stored in.
  • the memory partition into which subsequent firmware upgrades are to be written is made in a similar manner. Specifically, the memory partition associated with the subpartition not designated as the "active sector" would receive the firmware update.

Abstract

Systems and methods for automatically upgrading firmware in a peripheral device are provided. A firmware revision is transferred from the managing personal computer (PC) to the peripheral device over a universal serial bus (USB) and stored in an available flash memory allocation distinct from that containing the currently operating firmware. Integrity checks are performed on the most recent firmware version prior to assignment of the updated version as the operating firmware version. The entire firmware revision is done automatically with little or no user interaction.

Description

REMOTE FIRMWARE UPGRADE
BACKGROUND OF THE INVENTION
Technical Field of the Invention The present invention relates to computer systems, and more particularly to systems and methods for upgrading firmware within peripheral devices over a communications link.
Description of Related Art A recent entry into the personal computer (PC) world is the Universal Serial
Bus (USB). A USB is typically used to connect peripheral devices to a PC. USB supports data transmission rates of over 10 Bits/s, and as such is suitable for supporting real-time video and/or audio applications.
Moreover, USB provides a simple, universal interface for a wide range of USB compliant devices including digital joysticks, scanners, speakers, digital cameras, monitor controllers and, essentially, any other devices traditionally adapted for the various PC interfaces. With USB, these devices all share a common interface and therefore there is a potential for dramatic increases in their interaction and enhanced functionality, especially in light of the high data transmission rates supported by USB . A particular application that can benefit from USB is computer telephony.
Computer telephony is a field of computer and telephony integration in which a PC telephone peripheral provides voice telephony and, through software running on an associated host PC, more advanced services, e^ management of voice, data and fax mail boxes, call routing services, etc. Most recently, the personal wireless network, a version of PC telephony, has emerged as a viable communications alternative for the small office and home environments. The personal wireless network is a radio frequency network utilizing a personal computer (PC) as a communications center. The personal wireless network promises to enable the consumer the capability of printing documents, interchanging files and accessing the Internet, regardless of where the PCS, printers and telephone jacks are installed and used. Other electrical systems will also be controlled by the computer. For example, users will be able to arm their alarm system by speaking a simple command into a lightweight cordless telephone handset. In short, the personal wireless network utilizes high speed interfaces, such as the USB, for availing real-time communications in a network of essentially all of the abovementioned wireless and wired devices.
One of the challenges with these emerging fields of personal communications exists in upgrading the required system resources of the requisite communication devices, for example, certain peripheral devices. Similar to the network-side problem of upgrading switches to implement new services, the subscriber peripherals will often need to be revised in order to provide improved and/or enhanced services.
The critical logic or operating instructions used within such peripheral devices is typically provided in a non-volatile storage medium, e.g. read-only memory (ROM) or programmable read-only memory (PROM). The data (or information) stored in this type of programmable and/or replaceable memory and/or logic circuitry is typically referred to as firmware.
Clearly, it would be disadvantageous for the consumer to bring a peripheral device into a service department to be serviced when subscribing to new or advanced services, for example. Similarly, it would be undesirable to force the subscriber to manually update the peripheral device themselves.
Thus, as can be appreciated, there is a need for improved systems and methods for upgrading the firmware within peripheral devices. Preferably, the improved systems and methods will allow for an automated upgrade to the firmware that can be conducted without significantly impacting the user and/or other networked computing resources . There is also an attendant need for improved systems and methods that can be used to automatically determine if the firmware in a peripheral device requires an upgrade. SUMMARY OF THE INVENTION
The present invention provides improved systems and methods for upgrading the firmware within networked peripheral devices. In accordance with one aspect of the present invention, the firmware upgrade is conducted automatically using existing network resources. In accordance with certain other aspects of the present invention, automated techniques are employed to determine if a connected peripheral device needs to have a firmware upgrade.
In accordance with certain embodiments of the present invention, the peripheral device includes at least one memory having at least a first portion and a second portion. Each of the portions is configured to store a firmware upgrade. A PC is also provided and connected to the peripheral device over a communications link. The PC is configured to determine if the peripheral requires a firmware upgrade, and if required to transfer firmware upgrade data, the peripheral device determines whether to upgrade the first portion or the second portion in the memory.
BRIEF DESCRIPTION OF THE DRAWINGS
A more complete understanding of the method and apparatus of the present invention may be had by reference to the following detailed description when taken in conjunction with the accompanying drawings wherein: FIGURE 1 is an exemplary communications system that may be improved upon with implementation of a preferred embodiment of the present invention, and;
FIGURE 2 is a base station and personal computer as utilized in a preferred embodiment of the present invention.
DETAILED DESCRIPTION OF THE DRAWINGS
The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. FIGURE 1 is a block diagram depicting a personal wireless network, generally designated by the reference numeral 100, in which the present invention may be applied. Within personal wireless network 100 is a personal computer 110 and a base station 120. In accordance with certain preferred embodiments of the present invention, PC 110 and base station 120 are coupled together through USB cable 115.
Base station 120 is a peripheral device that supports multiple user communications by providing a wireless interface between various other peripherals operating therefrom and a public switched telephone network (PSTN) 180. Base station 120 also provides an interface between the wireless peripherals and PC 110 for any advanced telephony applications functioning by means of PC 110 which can additionally provide interface means with any external data or telephony networks 190, e& ISDN, PLMN, Internet, etc.
Peripherals operating in coordination with base station 120 may include PDA 130, fax machine 140, wireless telephones 150, laptop computer 160, a wired telephone 170 or any other device with appropriate communication provisions for transmitting and receiving communication to or from base station 120. In a preferred embodiment, wireless data transmission between base station 120 and any base station peripherals conform with the Digital Enhanced Cordless Telecommunications (DECT) standards although any digital communications protocol may be substituted therefor. Base station 120 will, in general, have a majority of its logic contained in embedded software, i.e., firmware. Traditionally, when new functionality or services are to be added to the personal wireless network 100, provisional updates to base station 120 are accommodated in one of two ways. First, a new base station may be designed with the upgraded firmware installed. This, therefore, necessitates the consumer purchase a new unit in order to access the additional services. This is clearly an unattractive option to the consumer and the hardware manufacturer as it is an added expense for the consumer to maintain the personal wireless network 100 up- to-date. Furthermore, updating the entire hardware unit prohibits the manufacturer from quickly developing and dispensing new services. A second approach is to physically replace the read-only memory chip on which the outdated firmware resides. This itself is a hardware upgrade and typically necessitates opening the hardware box, an exercise generally greeted with discomfort by most consumers and, consequently, usually carried out by bringing the hardware unit into an authorized service center where the upgrade is performed. Aside from the inconvenience to the consumer, the manufacturer is further burdened by an increased staffing of the essential service personnel.
With this in mind, reference is now made to FIGURE 2. FIGURE 2 depicts a personal computer (PC) 210 and a base station 220 within the personal wireless network 100 shown in FIGURE 1, in accordance with certain embodiments of the present invention. PC 210 includes a USB port 230 for communicating with base station 220 over a USB cable 215, which is connected to a USB plug 240. PC 210 additionally includes a processor 250 and a memory 260 that is, in a preferred embodiment, a typical single in-line memory module (SIMM). In a preferred embodiment, PC 210 also has coupled thereto a CD-ROM drive 270 with communications therebetween being made over an IDEA cable 225. Base station 220 includes a static random access memory (SRAM), such as, for example, flash memory 280, for storing firmware necessary for base station 220 operation. Flash memory 280 is preferably partitioned into at least two memory partitions 280A and 280B. Alternatively, memory partitions 280A and 280B can be embodied in two or more separate flash memory chips (not shown). Each memory partition 280A and 280B contains a respective subpartition
281 A and 28 IB for storage of a current firmware version string or other type of identifier. For example, memory partition 280A can include the current firmware and, as such, the contents of memory partition 280B are unused and represent an available partition of memory 280. The base station 220 firmware upgrade process includes storing an updated firmware version in memory 260, as received from an external data source, e.g. from a CD-ROM disk read from CD-ROM drive 270. It is understood that writing an updated firmware revision into memory 260 may be accompanied by writing the associated logic directives, i.e., software, for carrying out the firmware revision process into the same or different memory 260. However, the logic directives for carrying out the firmware revision may be written into a storage media, e.g., a hard drive, prior to loading the updated firmware into memory 260. Upon writing an updated firmware version into memory 260, an associated updated firmware version string is written into memory partition 260 A.
Commencement of the firmware upgrade process can be initiated with fixed events in the personal wireless network 100, ej^ power-up of base station 220. A rudimentary step in the firmware upgrade process is the evaluation of whether a firmware upgrade is necessary at all, i.e., an evaluation of whether or not the firmware currently stored in the base station's memory 280 is outdated by a current version of the firmware stored in memory 260. Pursuant to assessing the need for a firmware upgrade, the base station firmware version string stored in memory partition 281 A is extracted and transferred from base station 220 to PC 210 via the USB interface where it is read by processor 250. The firmware update version string is subsequently retrieved from memory partition 260 A by processor 250 which makes a numerical comparison between the two strings. The comparison procedure is preferably a hexadecimal comparison and requires firmware revisions to be enumerated chronologically. Equivalent strings indicate thebase station 220 is currently operating with the most recent firmware available and the firmware update terminates. If the string comparison, however, indicates the current firmware update version string is larger than the current firmware version string associated with the firmware version residing within base station 220, a firmware version update is necessitated and the process progresses according to the methods described hereinbelow.
If the string comparison indicates that a firmware upgrade is needed, then the base station 220 is notified of an impending firmware upgrade by a message transmitted from PC 210 to the base station 220 over the default control pipe of the USB as required in USB communication transfers. Base station CPU processor 290 then begins preparation of the firmware upgrade by erasing the memory partition 280B allocated for the writing of the firmware upgrade. Concurrently, base station processor 290 directs the initialization of the required queues for receiving the incoming packets that will be transferred from PC 210 over the USB . Once the base station has been prepared for the firmware upgrade, a notification message is transmitted from base station 220 to PC 210 over the USB interface. U p o n reception of the notification message by PC 210, the firmware update stored in memory 260 is packetized and individual packets begin being transmitted to base station 220 over one of the available bulk pipes of the USB . A bulk pipe is chosen for actual transfer of the firmware upgrade so that bandwidth available on the isochronous pipes, those required for servicing of real-time communication peripherals operating from base station 220, is not consumed by the firmware upgrade, thereby allowing uninterrupted service of the personal wireless network 100 throughout the firmware upgrade.
Due to the fact that flash memory writes are often quite slow, it is likely that the transfer rate of the firmware upgrade over the USB will exceed the write rate to the memory partition 280B. It is thus a responsibility of base station processor 290 to constantly monitor the queue loading. In the event the queue becomes full, the base station processor 290 instigates a block mode on the bulk pipe according to the standard USB suspend/resume logic. This operation on the USB, in turn, forces PC 210 to suspend transmission of additional firmware upgrade packets until the queue regains suitable accommodations.
The last packet of the firmware upgrade is preferably a checksum value. Once the firmware upgrade is completely written into memory partition 280B, base station processor 290 generates a checksum value according to the firmware written into memory partition 280B. This value is then compared to the checksum value transmitted over the USB . A pass or fail status for the firmware upgrade results from the respective equivalence or nonequivalence of the checksum comparisons. In the event the checksum comparison results in a pass status, the firmware upgrade version string is written into memory subpartition 28 IB. A flag in base station processor 290 is then be set indicating the current base station firmware is stored in memory partition 280B. If the checksum comparison results in a fail status for the firmware upgrade, the firmware upgrade version string is not written into memory subpartition 28 IB thus maintaining the firmware stored in memory partition 280A as the current base station firmware. The base station 220 firmware upgrade is completed by transmission of a control signal to PC 210 indicating the status of the firmware upgrade. It is important to note that the firmware upgrade version string is not written into the associated memory subpartition until a pass status of the firmware upgrade is obtained from the checksum comparison. To avoid problems, the base station memory partition containing the current operating base station firmware is denoted by a flag stored in a separate parameters section of the flash memory, designated as the "active sector". Otherwise if the flag were stored in a register of the base station processor 290, the flag would likely be erased since, in general, internal registers tend to be volatile in nature and therefore maintain no values upon power loss.
Since the upgraded firmware version string is not written into memory partition 28 IB until a successful firmware upgrade made to memory partition 280B has been verified, the base station needs only to, upon power up, make a comparison between the firmware version strings stored in respective memory partitions 281 A and 28 IB. The greater of the two firmware version strings thereby indicates to the base station processor 290 which memory partition the current firmware is stored in. The memory partition into which subsequent firmware upgrades are to be written is made in a similar manner. Specifically, the memory partition associated with the subpartition not designated as the "active sector" would receive the firmware update.
In other words, whichever is the "active sector", the firmware upgrade is done in the other partition and only after a "passing" checksum is the flash memory "active sector" updated too.
Although a preferred embodiment of the method and apparatus of the present invention has been illustrated in the accompanying Drawings and described in the foregoing Detailed Description, it will be understood that the invention is not limited to the embodiment disclosed, but is capable of numerous rearrangements, modifications and substitutions without departing from the spirit of the invention as set forth and defined by the following claims.

Claims

WHAT IS CLAIMED IS:
1. A method for upgrading firmware in a peripheral device using aremote device, the method comprising: transferring a firmware upgrade program from the remote device to the peripheral device, the peripheral device being configured to operate by an existing firmware program stored at least partially within a first portion of a non-volatile memory within the peripheral device; storing the firmware upgrade program in a second portion of the nonvolatile memory within the peripheral device; and configuring the peripheral to operate by the firmware upgrade program stored in the second portion of the non- volatile memory.
2. The method as recited in Claim 1, wherein the non-volatile memory comprises flash memory.
3. The method as recited in Claim 2, wherein the peripheral is a communications device and the remote device is a computer that is configured to provide telephony services.
4. A system comprising: a computer having a first memory; a communications link connected to the computer; a peripheral device connected to the communications link, the peripheral device having a segmentable non-volatile memory configured to store firmware programming; and means for transferring an upgraded firmware program from the first memory to an used portion of the segmentable non-volatile memory.
5. The system as recited in Claim 4, wherein the segmentable non-volatile memory comprises flash memory.
6. The system as recited in Claim 5, wherein the peripheral device is a communications device and the computer is further configured to provide telephony services via the peripheral device.
PCT/US1999/021481 1998-09-24 1999-09-16 Remote firmware upgrade WO2000017749A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU61506/99A AU6150699A (en) 1998-09-24 1999-09-16 Remote firmware upgrade

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16063198A 1998-09-24 1998-09-24
US09/160,631 1998-09-24

Publications (1)

Publication Number Publication Date
WO2000017749A1 true WO2000017749A1 (en) 2000-03-30

Family

ID=22577704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/021481 WO2000017749A1 (en) 1998-09-24 1999-09-16 Remote firmware upgrade

Country Status (2)

Country Link
AU (1) AU6150699A (en)
WO (1) WO2000017749A1 (en)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1205845A2 (en) 2000-11-10 2002-05-15 Sanyo Electric Co., Ltd. Microcomputer and method of controlling the same
JP2002149625A (en) * 2000-11-10 2002-05-24 Sanyo Electric Co Ltd Method for controlling microcomputer
JP2002149623A (en) * 2000-11-10 2002-05-24 Sanyo Electric Co Ltd Microcomputer
EP1259031A1 (en) * 2001-05-14 2002-11-20 Lg Electronics Inc. Home appliance protocol upgrading method
WO2003038549A2 (en) * 2001-10-29 2003-05-08 Pitney Bowes Inc. Wireless mailroom having a gateway server to allow remote access
DE10224502A1 (en) * 2002-05-31 2003-12-11 Artem Gmbh Wireless communication operating method for wireless connections communicates between a network with a preset network protocol and a network-independent data terminal by inserting an adapter device
US6668374B1 (en) * 1999-07-08 2003-12-23 Axis Ab Method and apparatus for upgrading firmware in an embedded system
WO2004111958A1 (en) * 2003-06-11 2004-12-23 Igt Download procedures for peripheral devices
EP1496433A2 (en) * 2003-06-17 2005-01-12 Alps Electric Co., Ltd. Program and computer capable of easily updating, setting, or testing control program
EP1576442A2 (en) * 2002-12-05 2005-09-21 QUALCOMM Incorporated System and method for software download to wireless communication device
US6954850B1 (en) * 2000-10-30 2005-10-11 Matsushita Electric Works, Ltd. Electronic device that uses a pager network for remote reprogramming of the device
WO2006086809A1 (en) * 2005-02-16 2006-08-24 Fronius International Gmbh Device and method for carrying out software updates, and a controller configured for software updates
US7146412B2 (en) * 2001-08-27 2006-12-05 Hewlett-Packard Development Company, L.P. System and methods for the automatic discovery, notification and installation of firmware upgrades
US7213052B2 (en) * 2001-03-31 2007-05-01 Minolta Co., Ltd. Data communication apparatus capable of rewriting firmware
EP1804466A1 (en) * 2005-12-27 2007-07-04 Siemens S.p.A. Method for downloading software from a telecommunications management network
GB2439803A (en) * 2006-06-30 2008-01-09 Advanced Risc Mach Ltd Target device programmer
US7351147B2 (en) 1999-10-06 2008-04-01 Igt Standard peripheral communication
EP2051150A1 (en) * 2007-10-16 2009-04-22 Siemens Aktiengesellschaft Method for automatic modification of a program and automation system
WO2009143050A3 (en) * 2008-05-19 2010-02-25 Lgc Wireless, Inc. Method and system for performing onsite maintenance of wireless communication systems
US7819750B2 (en) 1999-10-06 2010-10-26 Igt USB software architecture in a gaming machine
US8019794B2 (en) 2007-04-02 2011-09-13 Sharp Laboratories Of America, Inc. Firmware repository for MFP devices
US8667104B2 (en) * 2002-05-14 2014-03-04 Hewlett-Packard Development Company, L.P. Firmware/software upgrade alert method and apparatus
US9112891B2 (en) 2007-02-02 2015-08-18 Sharp Laboratories Of America, Inc. Remote firmware management for electronic devices
WO2016006268A1 (en) * 2014-07-10 2016-01-14 スター精密株式会社 Firmware-updating system and update control method
WO2016171884A1 (en) * 2015-04-20 2016-10-27 Microsoft Technology Licensing, Llc Firmware update by usb cc
US10362166B2 (en) 2017-03-01 2019-07-23 At&T Intellectual Property I, L.P. Facilitating software downloads to internet of things devices via a constrained network
WO2020172166A1 (en) * 2019-02-19 2020-08-27 Mobile Tech, Inc. Product merchandising display system
CN111897556A (en) * 2020-06-29 2020-11-06 江苏柏勋科技发展有限公司 Video monitoring service system based on cloud computing
US11140086B2 (en) 2019-08-15 2021-10-05 At&T Intellectual Property I, L.P. Management of background data traffic for 5G or other next generations wireless network
US11416240B2 (en) 2017-08-21 2022-08-16 Carrier Corporation Fire and security system including addressable loop and automatic firmware upgrade

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0583077A1 (en) * 1992-07-21 1994-02-16 ORBITEL MOBILE COMMUNICATIONS LIMITED (Reg. no. 2515004) Reprogramming methods and apparatus
US5701492A (en) * 1996-03-29 1997-12-23 Canon Kabushiki Kaisha Fail-safe flashing of EPROM

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0583077A1 (en) * 1992-07-21 1994-02-16 ORBITEL MOBILE COMMUNICATIONS LIMITED (Reg. no. 2515004) Reprogramming methods and apparatus
US5701492A (en) * 1996-03-29 1997-12-23 Canon Kabushiki Kaisha Fail-safe flashing of EPROM

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6668374B1 (en) * 1999-07-08 2003-12-23 Axis Ab Method and apparatus for upgrading firmware in an embedded system
US7351147B2 (en) 1999-10-06 2008-04-01 Igt Standard peripheral communication
US7819750B2 (en) 1999-10-06 2010-10-26 Igt USB software architecture in a gaming machine
US7704147B2 (en) 1999-10-06 2010-04-27 Igt Download procedures for peripheral devices
US6954850B1 (en) * 2000-10-30 2005-10-11 Matsushita Electric Works, Ltd. Electronic device that uses a pager network for remote reprogramming of the device
US7181606B2 (en) 2000-10-30 2007-02-20 Matsushita Electric Works, Ltd. Electronic device that uses a communications network for remote reprogramming of the device
JP2002149625A (en) * 2000-11-10 2002-05-24 Sanyo Electric Co Ltd Method for controlling microcomputer
JP2002149623A (en) * 2000-11-10 2002-05-24 Sanyo Electric Co Ltd Microcomputer
EP1205845A3 (en) * 2000-11-10 2006-11-29 Sanyo Electric Co., Ltd. Microcomputer and method of controlling the same
EP1205845A2 (en) 2000-11-10 2002-05-15 Sanyo Electric Co., Ltd. Microcomputer and method of controlling the same
US7213052B2 (en) * 2001-03-31 2007-05-01 Minolta Co., Ltd. Data communication apparatus capable of rewriting firmware
EP1259031A1 (en) * 2001-05-14 2002-11-20 Lg Electronics Inc. Home appliance protocol upgrading method
CN1299210C (en) * 2001-05-14 2007-02-07 Lg电子株式会社 Method for updating protocol of domestic electric appliances
US7146412B2 (en) * 2001-08-27 2006-12-05 Hewlett-Packard Development Company, L.P. System and methods for the automatic discovery, notification and installation of firmware upgrades
WO2003038549A2 (en) * 2001-10-29 2003-05-08 Pitney Bowes Inc. Wireless mailroom having a gateway server to allow remote access
WO2003038549A3 (en) * 2001-10-29 2003-12-04 Pitney Bowes Inc Wireless mailroom having a gateway server to allow remote access
US8667104B2 (en) * 2002-05-14 2014-03-04 Hewlett-Packard Development Company, L.P. Firmware/software upgrade alert method and apparatus
DE10224502A1 (en) * 2002-05-31 2003-12-11 Artem Gmbh Wireless communication operating method for wireless connections communicates between a network with a preset network protocol and a network-independent data terminal by inserting an adapter device
EP1576442A4 (en) * 2002-12-05 2007-11-21 Qualcomm Inc System and method for software download to wireless communication device
EP1576442A2 (en) * 2002-12-05 2005-09-21 QUALCOMM Incorporated System and method for software download to wireless communication device
WO2004111958A1 (en) * 2003-06-11 2004-12-23 Igt Download procedures for peripheral devices
EP1496433A3 (en) * 2003-06-17 2006-04-26 Alps Electric Co., Ltd. Program and computer capable of easily updating, setting, or testing control program
EP1496433A2 (en) * 2003-06-17 2005-01-12 Alps Electric Co., Ltd. Program and computer capable of easily updating, setting, or testing control program
WO2006086809A1 (en) * 2005-02-16 2006-08-24 Fronius International Gmbh Device and method for carrying out software updates, and a controller configured for software updates
EP1804466A1 (en) * 2005-12-27 2007-07-04 Siemens S.p.A. Method for downloading software from a telecommunications management network
US7788417B2 (en) 2006-06-30 2010-08-31 Arm Limited Target device programmer
GB2439803A (en) * 2006-06-30 2008-01-09 Advanced Risc Mach Ltd Target device programmer
GB2439803B (en) * 2006-06-30 2011-06-29 Advanced Risc Mach Ltd Target device programmer
US9112891B2 (en) 2007-02-02 2015-08-18 Sharp Laboratories Of America, Inc. Remote firmware management for electronic devices
US8019794B2 (en) 2007-04-02 2011-09-13 Sharp Laboratories Of America, Inc. Firmware repository for MFP devices
US8245215B2 (en) 2007-10-16 2012-08-14 Siemens Aktiengesellschaft Method for automatically modifying a program and automation system
EP2051150A1 (en) * 2007-10-16 2009-04-22 Siemens Aktiengesellschaft Method for automatic modification of a program and automation system
WO2009143050A3 (en) * 2008-05-19 2010-02-25 Lgc Wireless, Inc. Method and system for performing onsite maintenance of wireless communication systems
WO2016006268A1 (en) * 2014-07-10 2016-01-14 スター精密株式会社 Firmware-updating system and update control method
JP2016018462A (en) * 2014-07-10 2016-02-01 スター精密株式会社 Firmware update system and update control method
WO2016171884A1 (en) * 2015-04-20 2016-10-27 Microsoft Technology Licensing, Llc Firmware update by usb cc
US10362166B2 (en) 2017-03-01 2019-07-23 At&T Intellectual Property I, L.P. Facilitating software downloads to internet of things devices via a constrained network
US10958782B2 (en) 2017-03-01 2021-03-23 At&T Intellectual Property I, L.P. Facilitating software downloads to internet of things devices via a constrained network
US11416240B2 (en) 2017-08-21 2022-08-16 Carrier Corporation Fire and security system including addressable loop and automatic firmware upgrade
WO2020172166A1 (en) * 2019-02-19 2020-08-27 Mobile Tech, Inc. Product merchandising display system
US11140086B2 (en) 2019-08-15 2021-10-05 At&T Intellectual Property I, L.P. Management of background data traffic for 5G or other next generations wireless network
CN111897556A (en) * 2020-06-29 2020-11-06 江苏柏勋科技发展有限公司 Video monitoring service system based on cloud computing
CN111897556B (en) * 2020-06-29 2021-02-09 江苏柏勋科技发展有限公司 Video monitoring service system based on cloud computing

Also Published As

Publication number Publication date
AU6150699A (en) 2000-04-10

Similar Documents

Publication Publication Date Title
WO2000017749A1 (en) Remote firmware upgrade
US5754785A (en) Communications network equipment
US6684324B2 (en) Method for installing two or more operating systems/user interfaces into an electronic device and an electronic device
US7779055B2 (en) Device memory management during electronic file updating
CN100471117C (en) Data automatic updating method
EP1259031A1 (en) Home appliance protocol upgrading method
WO2009015568A1 (en) A software upgrade system, main-board, backup-board, and software upgrade method
JP2005236795A (en) Radio communication system, firmware updating method for radio communication terminal therein
KR100330613B1 (en) Data processing system and method for permitting a server to remotely access a powered-off client computer system's asset information
US20030005351A1 (en) Method of upgrading software in a network environment and a network device for performing the same
WO2011116583A1 (en) Method and apparatus for implementing management of multi-protocol communication components
US7376720B2 (en) Apparatus setting updating system
US20020129131A1 (en) System data sharing management system in LAN telephone system
JP3658704B2 (en) Method and apparatus for executing application associated with telecommunications connection by processing device
MX2008002494A (en) Method and apparatus for configuring a device from a network.
JP2000293366A (en) Method for updating module for set top box
JP2005215796A (en) Firmware update system and method for portable terminal, update module delivery medium, portable terminal and program
JPH08286681A (en) Music data distributing method for communication karaoke (sing-along machine) network
KR20030087418A (en) Method for upgrading firmware using modem
CN100396033C (en) Firmware renewing method or digital subscriber line device
US20050074110A1 (en) Remote local number portability switchover
US7756941B2 (en) Communication system having dominating node and dominated node
JP2001051823A (en) Portable terminal device, menu replacing method of portable terminal device, and program recording medium for portable terminal device
JPH08328831A (en) Device and method for data processing
JP2003333193A (en) Subscriber information storage service system and service control device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase