[Not Applicable]
[Not Applicable]
Electronic devices, such as mobile phones and personal digital assistants (PDA's), often contain firmware and application software that are either provided by the manufacturers of the electronic devices, by telecommunication carriers, or by third parties. These firmware and application software often contain software bugs. New versions of the firmware and software are periodically released to fix the bugs or to introduce new features, or both.
Electronic devices may use update packages containing information necessary to update firmware/software in the electronic devices. Update packages may be downloaded into handsets such that their software or firmware could be updated.
Often, mobile handsets encounter operational problems such as, for example, missed calls, dropped calls, software that does not operate as expected, etc. Carrier networks may not have the capability to determine the pervasiveness of such problems, and may not have the infrastructure to determine when these problems occur or how often they occur. Unless a customer reports such problems to a customer care representative, the carrier often may not know about their existence. Even when the customer reports errors or operational problems, the carrier may be incapable of verifying them or determining the nature and characteristics of such problems.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of ordinary skill in the art through comparison of such systems with the present invention.
Aspects of the present invention may be seen in a network that monitors activities of electronic devices in the network. The network may comprise at least one electronic device having firmware and at least one server communicatively coupled to the at least one electronic device. The at least one server may be capable of executing diagnostic procedures in the at least one electronic device, and the at least one electronic device may communicate diagnostic messages to the at least one server. In an embodiment of the present invention, the at least one electronic device may be portable and the network may be wireless.
In an embodiment of the present invention, the at least one server may communicate firmware updating information to the at least one electronic device, and the at least one electronic device may update the firmware using the updating information. In an embodiment of the present invention, the updating information may comprise executable instructions that convert a first firmware version to a second firmware version.
In an embodiment of the present invention, the at least one server may comprise device management software. The network may further comprise diagnostic software, which may interact with the electronic device via the device management software. The at least one electronic device may report at least one condition to the device management software, which may communicate an appropriate message to the diagnostic software. The diagnostic software may respond to a reported condition by initiating a diagnostics procedure in the at least one electronic device via the device management software. The at least one electronic device may execute the diagnostic procedure and use a diagnostic report to update the firmware.
Another aspect of the present invention may be seen in an electronic device having firmware and configuration parameters. The electronic device may comprise an agent that executes diagnostic procedures to generate a diagnostic report. The electronic device may communicate the diagnostic report to a first server and receive instructions from the first server to update the firmware and configuration parameters, based upon the diagnostic report.
The method of monitoring activities in the electronic device may comprise communicating diagnostic messages to at least one server, the electronic device being communicatively coupled to the at least one server and executing diagnostic procedures in the electronic device.
These and other features and advantages of the present invention may be appreciated from a review of the following detailed description of the present invention, along with the accompanying figures in which like reference numerals refer to like parts throughout.
The present invention relates generally to the monitoring of activities in electronic devices such as, for example, mobile handsets from a server, and specifically to the execution of diagnostic procedures in the electronic devices under the control of a diagnostic server in the carrier network. Although the following discusses aspects of the invention in terms of a mobile handset, it should be clear that the following also applies to other mobile electronic devices such as, for example, personal digital assistants (PDAs), pagers, personal computers (PCs), and similar handheld electronic devices.
The carrier network 129 may be capable of performing remote diagnostics. The carrier network 129 may be capable of handling diagnostic messages, conducting status checks, and reporting diagnostic information. The carrier network 129 may also be capable of updating firmware 117 and/or software 119, 121 in the mobile handset 107 using, for example, an update package. In an embodiment of the present invention, an update package for an electronic device such as, for example, mobile handset 107 may comprise executable instructions used to convert firmware/software in the mobile handset 107 from one version to another.
In an embodiment of the present invention, the mobile handset 107 may comprise a random access memory (RAM) unit 125 and a non-volatile memory 109. The non-volatile memory 109 may have a plurality of components such as, for example, a loader 111, an update agent 113, firmware 117, an operating system (OS) 119, applications 121, and a diagnostic agent 123. In an embodiment of the present invention, the non-volatile memory 109 may also comprise a management tree 115 and a download agent 127.
In an embodiment of the present invention, the diagnostic server 131 may interact with the mobile handset 107, via the DM server 133. For example, if the mobile handset 107 reports an error or problem to the DM server 133 or to the customer care server 135, the diagnostic server 131 may receive an appropriate message indicating the problem. In response, the diagnostic server 131 may initiate diagnostic procedures in the mobile handset 107, via the DM server 133. The execution of diagnostic procedures in the mobile handset 107 may result in the retrieval of diagnostic information, configuration parameters, etc. which may be communicated to the diagnostic server 131 by the mobile handset 107.
In an embodiment of the present invention, the diagnostic agent 123 in the mobile handset 107 may execute diagnostic procedures and may report the results to the diagnostic server 131 or the DM server 133. Interactions with the customer care server 135 related to events monitoring and diagnostic activity in the mobile handset 107 may also be facilitated by the diagnostic agent 123. The diagnostic agent 123 may facilitate the upload of diagnostics information from the mobile handset 107 to the diagnostic server 131. In an embodiment of the present invention, the diagnostic agent 123 may also utilize the download agent 127, which may facilitate the download of update packages, configuration information, etc. into the mobile handset 107. In an embodiment of the present invention, the downloaded update packages may comprise executable procedures for diagnosing the mobile handset 107.
In an embodiment of the present invention, remote diagnostics supported by the carrier network 129 may provide customer care server 135 with a snapshot of current operating conditions and a historic view of service performance of a subscriber's device such as, for example, mobile handset 107. The diagnostics solution provided by the carrier network 129 may allow a customer service representative, via the customer care server 135, to remotely test the mobile handset 107 and query the results of those tests. The customer service representative may download a cache of historical operating conditions to trace conditions leading up to a call drop in the mobile handset 107.
In an embodiment of the present invention, a carrier network 129 may be capable of conducting remote diagnostics of mobile handsets such as, for example, the mobile handset 107. The carrier network 129 may have the necessary infrastructure to determine when known problems may occur in mobile handsets 107 and determine how often these problems may occur. In an embodiment of the present invention, when a customer reports problems to a customer care representative, the carrier network 129 may track such problems, install bug fixes or remotely diagnose the problem. For example, the configuration parameters in the mobile handset 107 may be retrieved, analyzed and modified, if necessary. When the customer using the mobile handset 107 reports errors or operational problems, the carrier network 129 may be capable of verifying them or determining the nature and characteristics of such problems.
In an embodiment of the present invention, the diagnostic agent 123 may be capable of accessing and setting parameters or objects stored and maintained in a management tree 115 such as, for example, configuration parameters, provisioning information, firmware, system files, drivers, applications, software, settings, a flex file, etc., in the mobile handset 107.
In an embodiment of the present invention, remote diagnostics may provide customer care with a snapshot of current operating conditions as well as a historic view of service performance of a subscriber's mobile handset 107. A customer service representative may be able to remotely test a device and query the results of those tests. Additionally, the customer service representative may be able to download a cache of historical operating conditions to trace conditions leading up to a call drop.
In an embodiment of the present invention, the device management server 133 may provide the management component to deploy tests and queries as well as maintains a database of historical activity for each subscriber and associated mobile handset 107.
In an embodiment of the present invention, the diagnostics in the diagnostic agent 123 in the mobile handset 107 may comprise a dropped call buffer, which may record the operating environment of a period of time such as, for example, the last 20 seconds of each call and store calls flagged as “dropped.” The details for call errors may include, for example, type of failure, location, cell sites, signal strength and time. The diagnostics may comprise self-test results where the mobile handset 107 may receive a command to run a self-test of operating conditions and send the results to a console for review.
In an embodiment of the present invention, the diagnostic agent 123 in the mobile handset 107 may implement several functionalities. The diagnostic agent 123 may accept push mechanism via short message service (SMS) from the device management server 133 to trigger the diagnostic agent 123. A SMS message may contain information regarding which test to run and where to report the test results. The diagnostic agent 123 may run diagnostic tests to acquire information regarding settings such as, for example, email settings, general packet radio service (GPRS) settings, wireless application protocol (WAP) settings, multimedia message service (MMS) settings, applications installed on the mobile handset 107, OS 119 version, network roaming status, signal strength, cell tower ID and battery level. In an embodiment of the present invention, the diagnostic agent 123 may log signal strength, cell information, roaming status, battery level, and running apps every second for the last 20 seconds of a call. The log of a call flagged as “dropped” may be stored for recovery at a later date.
In an embodiment of the present invention, the diagnostic server 131 may implement several functionalities. The diagnostic server 131 may keep track of each mobile handset 107 and a history of the transactions between the diagnostic agent 123 and the diagnostic server 131. The diagnostic server 131 may provide a customer care interface to query each subscriber and mobile handset 107, which may provide subscriber, equipment, and available tests. Data from queries may be stored in a subscriber database file as well as shown in a report format on the interface for the customer service representative to use. In an embodiment of the present invention, data from queries may be stored in a database that may allow flexibility for searching data by a system console or an external management console/system. The data from any remote diagnostics query may be stored in a format such that each parameter can be searched and used for troubleshooting by other diagnostic solutions or extensions to the system.
The use of an embodiment of the present invention reduces the amount of time a customer service representative spends assisting a user of a mobile handset such as, for example, the mobile handset 107 to diagnose problems in the mobile handset 107. In an embodiment of the present invention, the customer service representative may have diagnostic information available at the time a customer calls. As a result, the total time spent assisting each customer is reduced, and a larger number of customers may be assisted in the same amount of time. Additionally, customer service representatives are able to provide better assistance because of the availability of information regarding the condition of the mobile handset prior to the call from the customer. As a result, customer service time is reduced and, therefore, labor costs are reduced, leading to increased savings in operational costs, while improving the services provided to the customer.
The present invention may be realized in hardware, software, firmware and/or a combination thereof. The present invention may be realized in a centralized fashion in at least one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein may be suitable. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system to carry out the methods described herein.
The present invention may also be embedded in a computer program product comprising all of the features enabling implementation of the methods described herein which when loaded in a computer system is adapted to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; and b) reproduction in a different material form.
While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims.
This patent application makes reference to, claims priority to and claims benefit from U.S. Provisional Patent Application Ser. No. 60/485,881, entitled “Carrier Network Capable of Conducting Remote Diagnostics in a Mobile Handset,” filed on Jul. 9, 2003. The complete subject matter of the above-referenced U.S. Provisional Patent Application is hereby incorporated herein by reference, in its entirety. In addition, this application makes reference to U.S. patent application Ser. No. 10/754,313, entitled “Mobile Services Network for Update or Firmware/Software in Mobile Handsets,” filed Jan. 9, 2004, U.S. Provisional Patent Application Ser. No. 60/249,606, entitled “System and Method for Updating and Distributing Information,” filed Nov. 17, 2000, and International Patent Application Publication No. WO 02/41147 A1, entitled “Systems And Methods For Updating And Distributing Information,” publication date Mar. 23, 2002, the complete subject matter of each of which is hereby incorporated herein by reference, in its entirety.
Number | Date | Country | |
---|---|---|---|
60485881 | Jul 2003 | US |