IP Library Granted Patent US 9,128,880
Granted Patent B2
US 9,128,880 · App. 14/543,600 · Granted Sep 8, 2015

Synchronizing and controlling software downloads, such as for utility meter-reading data collection and processing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,128,880
App. No.
14/543,600
Granted
Sep 8, 2015
Kind
B2
Abstract

Method and apparatus to manage software updates of networked data collection devices are disclosed. Example disclosed methods involve in response to receiving a software update, determining if the data collection device is to receive the software update and, if the data collection device is to receive the software update, setting, in memory, a state indicator for the data collection device to an update state. Disclosed methods also include in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the update state, sending an update command to the data collection device, the update command to include a bill of materials corresponding to the software update and a time for the software update to take effect.

Claims (49)

1. A method of managing software in a data collection device via a head-end server, the method comprising:

in response to receiving a software update, determining if the data collection device is to receive the software update;

if the data collection device is to receive the software update, setting, in memory, a state indicator for the data collection device to an update state;

in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the update state, sending an update command to the data collection device, the update command to include a bill of materials corresponding to the software update and a time for the software update to take effect; and

in response to receiving a first command to cancel the software update:

if the first command is received before the time for the software update is to take effect, setting the state indicator to a cancel state, and

if the first command is received after the time for the software update is to take effect, setting the state indicator to a rollback state.

2. A method as defined in claim 1 , further comprising:

managing, in memory, the state indicator for the data collection device; and

in response to receiving meter consumption data from the data collection device, sending a second command to instruct the data collection device to enter the a state indicated by the state indicator for the data collection device, the second command to cause the data collection device to execute routines associated with the state.

3. A method as defined in claim 2 , wherein the second command instructing the data collection device to enter the update state causes the data collection device to send the configuration request to the head-end server.

4. A method as defined in claim 1 , in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the rollback state, sending a rollback command to data collection device, the rollback command to cause the data collection device to revert to a previous version of software before the software update.

5. A method as defined in claim 4 , in response to receiving a communication from data collection device indicating that the data collection device successfully reverted to the previous version of the software, setting the state indicator to a stable state.

6. A method as defined in claim 1 , in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the cancel state, sending a cancel command to data collection device, the cancel command to instruct the data collect device to cancel the time for the software update is to take effect.

7. A method as defined in claim 6 , in response to receiving a communication from data collection device indicating that the data collection device successfully cancelled the time for the software update is to take effect, setting the state indicator to a stable state.

8. A head-end server for managing software a data collection device, comprising:

a processor to, in response to receiving a software update, determine if the data collection device is to receive the software update;

a state machine to:

if the data collection device is to receive the software update, set a state indicator for the data collection device to an update state;

in response to receiving a first command to cancel the software update:

if the first command is received before the time for the software update is to take effect, set the state indicator to a cancel state, and

if the first command is received after the time for the software update is to take effect, set the state indicator to a rollback state; and

a network interface to, in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the update state, send an update command to the data collection device, the update command to include a bill of materials corresponding to the software update and a time for the software update to take effect.

9. A head-end server as defined in claim 8 , wherein:

the state machine is further to manage the state indicator for the data collection device; and

the network interface is further to, in response to receiving meter consumption data from the data collection device, send a second command to instruct the data collection device to enter the a state indicated by the state indicator for the data collection device, the second command to cause the data collection device to execute routines associated with the state.

10. A head-end server as defined in claim 9 , wherein the second command instructing the data collection device to enter the update state causes the data collection device to send the configuration request to the head-end server.

11. A head-end server as defined in claim 8 , wherein, in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the rollback state, the network interface is to send a rollback command to data collection device, the rollback command to cause the data collection device to revert to a previous version of software before the software update.

12. A head-end server as defined in claim 11 , wherein, in response to receiving a communication from data collection device indicating that the data collection device successfully reverted to the previous version of the software, the state machine is to set the state indicator to a stable state.

13. A head-end server as defined in claim 8 , wherein, in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the cancel state, the network interface is to send a cancel command to data collection device, the cancel command to instruct the data collect device to cancel the time for the software update is to take effect.

14. A method as defined in claim 13 , wherein, in response to receiving a communication from data collection device indicating that the data collection device successfully cancelled the time for the software update is to take effect, the state machine is to set the state indicator to a stable state.

15. A system of managing software in a data collection device via a head-end server, the system comprising:

a processor; and

memory including instructions that, when executed, cause the processor to:

in response to receiving a software update, determine if the data collection device is to receive the software update;

if the data collection device is to receive the software update, set a state indicator for the data collection device to an update state;

in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the update state, send an update command to the data collection device, the update command to include a bill of materials corresponding to the software update and a time for the software update to take effect; and

in response to receiving a first command to cancel the software update:

if the first command is received before the time for the software update is to take effect, set the state indicator to a cancel state, and

if the first command is received after the time for the software update is to take effect, set the state indicator to a rollback state.

16. A system as defined in claim 15 , wherein the instructions further cause the processor to:

manage the state indicator for the data collection device; and

in response to receiving meter consumption data from the data collection device, send a second command to instruct the data collection device to enter the a state indicated by the state indicator for the data collection device, the second command to cause the data collection device to execute routines associated with the state.

17. A system as defined in claim 16 , wherein the second command instructing the data collection device to enter the update state causes the data collection device to send the configuration request to the head-end server.

18. A system as defined in claim 15 , wherein the instructions further cause the processor to, in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the rollback state, send a rollback command to data collection device, the rollback command to cause the data collection device to revert to a previous version of software before the software update.

19. A system as defined in claim 18 , wherein the instructions further cause the processor to, in response to receiving a communication from data collection device indicating that the data collection device successfully reverted to the previous version of the software, set the state indicator to a stable state.

20. A system as defined in claim 15 , wherein the instructions further cause the machine to:

in response to receiving a configuration request from the data collection device when the corresponding state indicator is set to the cancel state, send a cancel command to data collection device, the cancel command to instruct the data collect device to cancel the time for the software update is to take effect; and

in response to receiving a communication from data collection device indicating that the data collection device successfully cancelled the time for the software update is to take effect, set the state indicator to a stable state.

Assignments (2)
SECURITY INTEREST Recorded Jan 8, 2018
From: ITRON, INC.; ITRON NETWORKED SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 045017/0893 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2015
From: LILL, DAVID; BENSON, ERIC; JESPERSEN, JAMES
To: ITRON, INC.
Reel/Frame 034926/0794 →