System and method for updating a memory in an electronic device via wireless data transfer
First Claim
1. A system for updating data stored in a nonvolatile memory of an electronic device, comprising:
- (a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data;
(b) an electronic device comprising;
(i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode,(ii) a nonvolatile memory coupled to said second microprocessor, and(iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and
(c) a wireless communication path between said programming unit and said electronic device;
wherein said wireless communication path comprises a unidirectional communication channel for communicating data from said programming unit to said electronic device and a bidirectional communication channel for communicating data between said programming unit and said electronic device; and
wherein said unidirectional communication channel communicates notification data and update data to said electronic device, said notification data being repeated in a plurality of notification frames and said update data being repeated in a plurality of update data frames.
6 Assignments
0 Petitions
Accused Products
Abstract
An electronic device has a microprocessor operable in a plurality of modes including a memory update mode, a nonvolatile memory and a wireless communication interface for receiving data over a wireless communication channel. In one embodiment, the electronic device includes a wake-up or timer circuit for automatically placing the electronic device in a wireless memory update mode. Data received by said wireless communication interface is stored in the nonvolatile memory by the microprocessor in response to receipt of the data while the microprocessor is in memory update mode. A programming unit for transmitting update data has a microprocessor, a wireless communication interface and a memory containing update data. A communication path is established between the programming unit and the electronic device. A system for updating data stored in a nonvolatile memory of a plurality of electronic devices includes a programming unit and a plurality of electronic devices. A method of updating data stored in the nonvolatile memories of a plurality of electronic devices includes placing a programming unit in proximity to the plurality of electronic devices and activating a wireless update routine in the programming unit.
-
Citations
12 Claims
-
1. A system for updating data stored in a nonvolatile memory of an electronic device, comprising:
-
(a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data; (b) an electronic device comprising; (i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode, (ii) a nonvolatile memory coupled to said second microprocessor, and (iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and (c) a wireless communication path between said programming unit and said electronic device; wherein said wireless communication path comprises a unidirectional communication channel for communicating data from said programming unit to said electronic device and a bidirectional communication channel for communicating data between said programming unit and said electronic device; and wherein said unidirectional communication channel communicates notification data and update data to said electronic device, said notification data being repeated in a plurality of notification frames and said update data being repeated in a plurality of update data frames.
-
-
2. A system for updating data stored in a nonvolatile memory of an electronic device, comprising:
-
(a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data; (b) an electronic device comprising; (i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode, (ii) a nonvolatile memory coupled to said second microprocessor, and (iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and (c) a wireless communication path between said programming unit and said electronic device; wherein said wireless communication path comprises a unidirectional communication channel for communicating data from said programming unit to said electronic device and a bidirectional communication channel for communicating data between said programming unit and said electronic device; and wherein each of said plurality of notification frames is divided into a plurality of fields including a channel identification field and a location field.
-
-
3. A system for updating, data stored in a nonvolatile memory of an electronic device, comprising:
-
(a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data; (b) an electronic device comprising; (i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode, (ii) a nonvolatile memory coupled to said second microprocessor, and (iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and (c) a wireless communication path between said programming unit and said electronic device; wherein said wireless communication path comprises a unidirectional communication channel for communicating data from said programming unit to said electronic device and a bidirectional communication channel for communicating data between said programming unit and said electronic device; and wherein each of said plurality of update data frames is divided into a plurality of fields including a block number field and a data field.
-
-
4. A system for updating data stored in a nonvolatile memory of an electronic device, comprising:
-
(a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data; (b) an electronic device comprising; (i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode, (ii) a nonvolatile memory coupled to said second microprocessor, and (iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and (c) a wireless communication path between said programming unit and said electronic device; wherein said wireless communication path comprises first and second unidirectional communication channels for communicating data from said programming unit to said electronic device and first and second bidirectional communication channels for communicating data between said programming unit and said electronic device; and wherein said first unidirectional communication channel communicates notification data to said electronic device, said notification data being repeated in a plurality of notification frames. - View Dependent Claims (6)
-
-
5. A system for updating data stored in a nonvolatile memory of an electronic device, comprising:
-
(a) a programming unit comprising a first microprocessor, a first wireless communication interface and a memory coupled to said first microprocessor, said memory containing update data; (b) an electronic device comprising; (i) a second microprocessor operable in a plurality of modes, said plurality of modes including a memory update mode, (ii) a nonvolatile memory coupled to said second microprocessor, and (iii) a second wireless communication interface coupled to said second microprocessor for receiving update data from said programming unit, wherein update data received by said second wireless communication interface is stored in said nonvolatile memory by said second microprocessor responsive to receipt of said update data while said second microprocessor is in said memory update mode; and (c) a wireless communication path between said programming unit and said electronic device; wherein said wireless communication path comprises first and second unidirectional communication channels for communicating data from said programming unit to said electronic device and first and second bidirectional communication channels for communicating data between said programming unit and said electronic device; and wherein said second unidirectional communication channel communicates update data to said electronic device, said update data being repeated in a plurality of update data frames. - View Dependent Claims (7)
-
-
8. A programming unit comprising:
-
a microprocessor, a wireless communication interface, and a memory coupled to said microprocessor, said memory containing a plurality of update data sets for updating the memory of one or more electronic devices, said plurality of update data sets corresponding to a plurality of software revision levels; means for selecting an update data set corresponding to a desired software revision level for a particular electronic device; and means for receiving one or more electronic devices; wherein the programming unit transmits said selected update data set to said one or more electronic devices over said wireless communication interface and receives signals from said one or more electronic devices acknowledging receipt of said update data set; and wherein said means for receiving comprises a multi-compartmented carousel for selectively receiving and individually delivering a plurality of electronic devices.
-
-
9. In a system comprising, a programming unit and a plurality of electronic devices, the programming unit and the plurality of electronic devices each having a microprocessor and a wireless communication interface, each of said plurality of electronic devices additionally having a respective nonvolatile memory and means for placing said electronic device in a memory update mode, a method of updating data stored in the nonvolatile memory of one of said plurality of electronic devices, comprising:
-
placing the programming unit in proximity to said plurality of electronic devices; and activating a wireless update routine in the programming unit; further comprising;
in the programming unit;transmitting notification data on a notification channel; transmitting update data on a data channel; monitoring an authentication channel for the receipt of an authentication request; and responsive to the receipt of a valid authentication request, monitoring an acknowledgement channel for the receipt of an acknowledgement signal from said one of said electronic devices; and in said one of the plurality of electronic devices; responsive to said electronic device being placed in said memory update mode, searching for the notification channel; reading data from the notification channel indicative of the location of the data channel; reading undated data from the data channel; storing the updated data in the nonvolatile memory of said one of said electronic devices; and transmitting an acknowledgement signal on said acknowledgement channel;
further comprising;
in the programming unit;responsive to receiving an authentication request, selecting, an authentication string based on a device identification code contained in said authentication request; and transmitting an authentication response on said authentication channel, said authentication response containing said authentication string; and in said one of the plurality of electronic devices; responsive to locating said notification channel, transmitting an authentication request on said authentication channel said authentication request containing a device identification code; receiving an authentication response on said authentication channel, said authentication response containing an authentication string; and determining if said authentication string is correct; further comprising;
in said one of the plurality of electronic devices;responsive to a failure to receive an authentication response within a predetermined time period; waiting for a timeout period; and re-transmitting the authentication request; and wherein said timeout period is a random delay.
-
-
10. In a system comprising a programming unit and a plurality of electronic devices, the programming, unit and the plurality of electronic devices each having a microprocessor and a wireless communication interface, each of said plurality of electronic devices additionally having a respective nonvolatile memory and means for placing said electronic device in a memory update mode, a method of updating data stored in the nonvolatile memory of one of said plurality of electronic devices, comprising:
-
placing the programming unit in proximity to said plurality of electronic devices; and activating a wireless update routine in the programming unit; further comprising;
in the programming unit;transmitting notification data on a notification channel; transmitting update data on a data channel; monitoring an authentication channel for the receipt of an authentication request; and responsive to the receipt of a valid authentication request, monitoring an acknowledgement channel for the receipt of an acknowledgement signal from said one of said electronic devices; and in said one of the plurality of electronic devices; responsive to said electronic device being placed in said memory update mode, searching for the notification channel; reading data from the notification channel indicative of the location of the data channel; reading updated data from the data channel; storing the updated data in the nonvolatile memory of said one of said electronic devices; and transmitting an acknowledgement signal on said acknowledgement channel; further comprising;
in the programming unit;responsive to receiving an authentication request, selecting an authentication string based on a device identification code contained in said authentication request; and transmitting an authentication response on said authentication channel, said authentication response containing said authentication string; and in said one of the plurality of electronic devices; responsive to locating said notification channel, transmitting an authentication request on said authentication channel, said authentication request containing a device identification code; receiving an authentication response on said authentication channel, said authentication response containing an authentication string; and determining if said authentication string is correct; further comprising;
in said one of the plurality of electronic devices;responsive to a failure to receive an authentication response within a predetermined time period; waiting for a timeout period; and re-transmitting the authentication request; and wherein said timeout period is a predetermined period based on an identification number unique to said one of said plurality of electronic devices.
-
-
11. In a system comprising a programming unit and a plurality of electronic devices, the programming unit and the plurality of electronic devices each having a microprocessor and a wireless communication interface, each of said plurality of electronic devices additionally having a respective nonvolatile memory and means for placing said electronic device in a memory update mode, a method of updating data stored in the nonvolatile memory of one of said plurality of electronic devices, comprising:
-
placing the programming unit in proximity to said plurality of electronic devices; and activating a wireless update routine in the programming unit; further comprising;
in the programming unit;transmitting notification data on a notification channel; transmitting update data on a data channel; monitoring an authentication channel for the receipt of an authentication request; and responsive to the receipt of a valid authentication request, monitoring an acknowledgement channel for the receipt of an acknowledgement signal from said one of said electronic devices; and in said one of the plurality of electronic devices; responsive to said electronic device being placed in said memory update mode, searching for the notification channel; reading data from the notification channel indicative of the location of the data channel; reading updated data from the data channel; storing the updated data in the nonvolatile memory of said one of said electronic devices; and transmitting an acknowledgement signal on said acknowledgement channel; further comprising; in said one of the plurality of electronic devices; after transmitting the acknowledgement signal on the acknowledgement channel, waiting a predetermined time period to receive an acknowledgement response; and responsive to a failure to receive an acknowledgement response; waiting for a timeout period; and re-transmitting the acknowledgement signal; and wherein said timeout period is a random delay.
-
-
12. In a system comprising a programming unit and a plurality of electronic devices, the programming unit and the plurality of electronic devices each having a microprocessor and a wireless communication interface, each of said plurality of electronic devices additionally having a respective nonvolatile memory and means for placing said electronic device in a memory update mode, a method of updating data stored in the nonvolatile memory of one of said plurality of electronic devices, comprising:
-
placing the programming unit in proximity to said plurality of electronic devices; and activating a wireless update routine in the programming unit; further comprising;
in the programming unit;transmitting notification data on a notification channel; transmitting update data on a data channel; monitoring an authentication channel for the receipt of an authentication request; and responsive to the receipt of a valid authentication request, monitoring an acknowledgement channel for the receipt of an acknowledgement signal from said one of said electronic devices; and in said one of the plurality of electronic devices; responsive to said electronic device being placed in said memory update mode, searching for the notification channel; reading data from the notification channel indicative of the location of the data channel; reading updated data from the data channel; storing the updated data in the nonvolatile memory of said one of said electronic devices; and transmitting an acknowledgement signal on said acknowledgement channel; further comprising; in said one of the plurality of electronic devices; after transmitting the acknowledgement signal on the acknowledgement channel, waiting a predetermined time period to receive an acknowledgement response; and responsive to a failure to receive an acknowledgement response; waiting for a timeout period; and re-transmitting the acknowledgement signal; and wherein said timeout period is a predetermined period based on an identification number unique to said one of said plurality of electronic devices.
-
Specification