Systems and methods for updating software in a hazard detection system

US9513898B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9513898-B2
Application numberUS-201414319308-A
CountryUS
Kind codeB2
Filing dateJun 30, 2014
Priority dateJun 30, 2014
Publication dateDec 6, 2016
Grant dateDec 6, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods for updating software in a hazard detection system are described herein. Software updates may be received by, stored within, and executed by a hazard detection system, without disturbing the system's ability to monitor for alarm events and sound an alarm in response to a monitored hazard event. The software updates may be received as part of a periodic over-the-air communication with a remote server or as part of a physical connection with a data source such as a computer. The software updates may include several portions of code designed to operate with different processors and/or devices within the hazard detection system. The software updates may also include language specific audio files that can be accessed by the hazard detection system to play back language specific media files via a speaker.

First claim

Opening claim text (preview).

What is claimed is: 1. A hazard detection system, comprising: at least one hazard sensor; a non-volatile memory comprising a plurality of code images, wherein a first code image is active and a second code image is inactive; and a plurality of processors each operative to run based on code stored in the active code image, the plurality of processors comprising at least a system processor and a safety processor, wherein the system processor is operative to: manage a software update process to replace the inactive code image with an updated code image, and wherein the safety processor is operative to: monitor the at least one hazard sensor for a hazard event while the system processor is managing the software update process. 2. The hazard detection system of claim 1 , wherein the system processor is operative to: perform a system status check to determine whether to proceed with the software update process. 3. The hazard detection system of claim 2 , wherein the system status check comprises status check of at least one state machine. 4. The hazard detection system of claim 2 , wherein the system status check comprises power level status of a power source. 5. The hazard detection system of claim 1 , wherein the system processor is operative to: authenticate the updated code image; proceed with the software update process if the updated code image is authenticated; and delete the updated code image if the updated code image is not authenticated. 6. The hazard detection system of claim 1 , wherein the updated code image comprises system processor code, wherein the system processor is operative to: install the system processor code in internal memory of the system processor; and reboot using the installed system processor code. 7. The hazard detection system of claim 6 , wherein the system processor is operative to: verify that reboot is successful; and set the updated code image as the active code image in response to the verified successful reboot. 8. The hazard detection system of claim 6 , wherein the active code image comprises active system processor code, the system processor is operative to: determine that the reboot is unsuccessful; install the active system processor code in the internal memory of the system processor; and reboot using the installed active system processor code. 9. The hazard detection system of claim 6 , wherein the system processor is operative to: verify that the system processor code is successfully installed; and reboot using the installed system processor code in response to verification that the system processor code is successfully installed. 10. The hazard detection system of claim 6 , wherein the active code image comprises active system processor code, the system processor is operative to: determine that the installation of the system processor code is unsuccessful; restore the active system processor code in the internal memory of the system processor; and reboot using the restored active system processor code. 11. The hazard detection system of claim 1 , wherein the updated code image comprises safety processor code, wherein the system processor is operative to: notify the safety processor that the safety processor code is available for a safety processor software update; wherein the safety processor is operative to: independently determine when to upgrade its software in response to the safety processor software update notification; and update its software with the safety processor code in response to its independent determination. 12. The hazard detection system of claim 11 , wherein the updated code image comprises first and second safety processor code portions, wherein the safety processor comprises internal non-volatile memory comprising a safety processor (SP) active code portion and a SP inactive code portion, wherein the safety processor is operative to: copy a selected one of the first and second processor code portions to the SP inactive code portion; and execute code in the SP active code portion while copying the selected code to the SP inactive code portion to monitor the at least one hazard sensor for a hazard event. 13. The hazard detection system of claim 12 , wherein the safety processor is operative to: authenticate the selected code portion copied to the SP inactive code portion; and determine whether it is safe to reboot the safety processor in response to a successful authentication of the selected safety processor code portion. 14. The hazard detection system of claim 12 , wherein the safety processor is operative to: authenticate the selected code portion copied to the SP inactive code portion; and mark the selected code portion as bad in response a failed authentication of the selected safety processor code portion. 15. The hazard detection system of claim 13 , wherein the safety processor is operative to: reboot using the selected code portion copied to the SP inactive code portion; verify that reboot is successful; and set the selected code portion as the SP active code portion in response to the verified successful reboot. 16. The hazard detection system of claim 13 , wherein the safety processor is operative to: reboot using the selected code portion copied to the SP inactive code portion; determine that reboot is unsuccessful; reboot using the code portion stored in the active code portion; and verify that the reboot is successful. 17. The hazard detection system of claim 15 , wherein the safety processor is operative to: notify the system processor that the safety processor has been successfully rebooted. 18. The hazard detection system of claim 1 , wherein the at least one hazard sensor comprises a smoke sensor. 19. The hazard detection system of claim 1 , wherein the at least one hazard sensor comprises a carbon monoxide sensor. 20. A method for updating software in a hazard detection system comprising system and safety processors, at least one sensor, and an alarm, the method comprising: performing a system status check to determine whether the system processor is permitted to execute a software update process; executing the software update process while the system status check is satisfied; ceasing the executing of the software update process if the system status check is not satisfied; and using the safety processor to monitor the at least one sensor and to activate the alarm in response to a monitored hazard event while the software update process is executing. 21. The method of claim 20 , wherein the performing a system status check comprises: verifying that the hazard detection system is not in an alarming state or a pre-alarming state. 22. The method of claim 20 , wherein the performing a system status check comprises: verifying that a power source is providing power above a threshold. 23. The method of claim 20 , wherein the executing the software update process comprises: determining whether a software update is available by accessing a remote server; and receiving the software update if available. 24. The method of claim 20 , wherein the executing the software update process comprises: storing a software update image in an inactive portion of a non-volatile memory, wherein the system processor is executing code stored in an active portion of the non-volatile memory. 25. The method of claim 24 , wherein the software update image comprises system pr

Assignees

Inventors

Classifications

  • Bootstrapping (security arrangements therefor G06F21/57) · CPC title

  • while running · CPC title

  • Actuation by presence of smoke or gases {, e.g. automatic alarm devices for analysing flowing fluid materials by the use of optical means} · CPC title

  • Program or device authentication · CPC title

  • Loading of operating system · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9513898B2 cover?
Systems and methods for updating software in a hazard detection system are described herein. Software updates may be received by, stored within, and executed by a hazard detection system, without disturbing the system's ability to monitor for alarm events and sound an alarm in response to a monitored hazard event. The software updates may be received as part of a periodic over-the-air communica…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/65. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).