Fire detection system with automatic firmware updating
20170293478 · 2017-10-12
Inventors
- Robert W. Farley (Ashburnham, MA, US)
- James Ogier (Shirley, MA, US)
- Shachak Zaarur (Brookline, MA, US)
Cpc classification
G06F8/654
PHYSICS
A62C37/40
HUMAN NECESSITIES
International classification
Abstract
A system and method for updating the firmware of slave units in a fire system detects whether a new slave unit has been installed and compares the version of the firmware in the newly-installed slave unit with that of previously-installed slave units of the same type (including any backup copies of firmware stored by the master module in a file system). If the newly-installed slave unit's firmware is more recent, any backup copies of the firmware stored by the master module are replaced with an image of the new version of the firmware. Additionally, slave units with older versions of the firmware are updated to the newest version.
Claims
1. A method for updating firmware of slave units in a fire system, the method comprising: a master module determining a version of the firmware for a newly-installed slave unit; and the master module updating the firmware of the newly-installed slave unit or previously-installed slave units based on the version of the firmware of the newly-installed slave unit.
2. The method as claimed in claim 1, wherein the master module updates the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the previously-installed slave units of the same type as the newly-installed slave unit.
3. The method as claimed in claim 1, wherein the master module updates the firmware of the newly-installed slave unit if a more-recent version of the firmware is accessible to master module.
4. The method as claimed in claim 1, wherein the master module updates a firmware image file with the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave unit.
5. The method as claimed in claim 1, wherein the master module updates the firmware of the previously-installed slave units of the same type as the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave units.
6. The method as claimed in claim 5, wherein the master module reads and validates the firmware image read from the newly-installed slave unit.
7. The method as claimed in claim 1, wherein the master module first updates a firmware image file with the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave unit; and then the master module updates the firmware of the previously-installed slave units of the same type as the newly-installed slave unit based on the updated firmware image file.
8. The method as claimed in claim 1, wherein the fire system is installed on a vehicle.
9. A fire system, comprising: slave units of the fire system; a master module determining a version of the firmware for a newly-installed slave unit and updating the firmware of the newly-installed slave unit or previously-installed slave units based on the version of the firmware of the newly-installed slave unit.
10. The system as claimed in claim 9, wherein the master module updates the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the previously-installed slave units of the same type as the newly-installed slave unit.
11. The system as claimed in claim 9, wherein the master module updates the firmware of the newly-installed slave unit if a more-recent version of the firmware is accessible to master module.
12. The system as claimed in claim 9, wherein the master module updates a firmware image file with the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave unit.
13. The system as claimed in claim 9, wherein the master module updates the firmware of the previously-installed slave units of the same type as the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave units.
14. The system as claimed in claim 9, wherein the master module reads and validates the firmware image read from the newly-installed slave unit.
15. The system as claimed in claim 9, wherein the master module first updates a firmware image file with the firmware of the newly-installed slave unit if a more-recent version of the firmware is present on the newly-installed slave unit; and then the master module updates the firmware of the previously-installed slave units of the same type as the newly-installed slave unit based on the updated firmware image file.
16. The system as claimed in claim 9, wherein the fire detection system is installed on a vehicle.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In the accompanying drawings, reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale; emphasis has instead been placed upon illustrating the principles of the invention. Of the drawings:
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0031] The invention now will be described more fully hereinafter with reference to the accompanying drawings, in which illustrative 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.
[0032] As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. Further, the singular forms and the articles “a”, “an” and “the” are intended to include the plural forms as well, unless expressly stated otherwise. It will be further understood that the terms: includes, comprises, including and/or comprising, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Further, it will be understood that when an element, including component or subsystem, is referred to and/or shown as being connected or coupled to another element, it can be directly connected or coupled to the other element or intervening elements may be present.
[0033]
[0034] The system comprises a master module 102 and a series of slave units 106 installed on a common bus 104. The master module 102 sends instructions to and receives information from the slave units 106, and the slave units 106 receive instructions from the master module 102 and send information (for example, information about the environment detected by a slave unit 106) to the master module 102.
[0035] The data bus 104 is preferably common from a logical perspective. The master module 102 preferably uses a common address space to communicate with the various slave units 106 using the data bus 104. That said, the bus 104 is currently implemented as several physical data buses/wiring interfaces (ports) on the master module 102. This helps to ensure proper and repeatable installation by having specific units be connected to specific wiring interfaces or ports on the master module 102.
[0036] In the illustrated example, the installed slave units include a display unit 106-1, which displays information about the state of the fire system 100, a battery unit 106-2, which supplies power to the fire system 100, two linear heat detector units 106-3, which detect heat and communicate information to the master module 102, two manual activation switch units 106-4, which, when activated by an operator (for example, a driver of the vehicle) trigger a fire suppression function, two IR detector units 106-5, which detect infrared radiation and communicate information to the master module 102, two fire sensor units 106-6, which detect the presence of fire and communicate information to the master module 102, and two release units 106-7, which perform a fire suppression function.
[0037] In one example, the fire sensor 106-6 could detect that a fire is present and send the information to the master module 102. The master module 102, in turn, could then send instructions to the release module 106-7 to perform a fire suppression function, and/or instructions to the display 106-1 to display an alert.
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044] In step 302, it is determined or detected whether a new slave unit has been installed on the fire system 100.
[0045] In one example, a new fire sensor unit 106-6 is newly installed on a fire system 100 on which a battery unit 106-2, a display unit 106-1, and a fire sensor unit 106-6 were previously installed.
[0046] Illustrating this example,
[0047] In addition to firmware, the master nonvolatile memory 220 includes a file system 412, which is a system of files maintained by the master module 102. In the preferred embodiment, the file system 412 is a distributed file system such as that described in related U.S. application Ser. No. ______, entitled “Fire detection system with distributed file system”. In the illustrated embodiment, the file system 412 is stored, for example, on the master nonvolatile memory 220. The file system 412 includes a battery unit firmware (v2) image 414, which is a backup copy of version two of the firmware for battery units, a display unit firmware (v5) image 416, and a fire sensor unit firmware (v3) image 418, Also included on the master nonvolatile memory 220 is a device index 420.
[0048]
[0049] Returning to
[0050] Steps 320 through 328 illustrate the process for the master module 102 reading the firmware from a slave unit 106. The firmware is read from the slave nonvolatile memory 208, 236, 252 using a series of instructions sent between the master module 102 and the slave unit 106.
[0051]
[0052]
[0053] Returning to
[0054] When all of the bytes of the firmware of the newly-installed slave unit 106 have been read, in step 328 it is determined whether the read process was successful. This can be implemented using, among other methods, a checksum or CRC value, which is a value calculated from a portion of data used to verify the integrity of the data. If the read process was not successful, an error flag is set in step 330.
[0055] If the read process was successful, on the other hand, in step 332, the firmware image read from the newly-installed slave unit 106 is then stored in the file system 412 as a new backup copy of firmware, in one embodiment.
[0056] In step 334, the checksum/CRC of the firmware image newly-written to the file system 412 is then read and compared with that of the firmware of the newly-installed slave unit 106.
[0057] Then, in step 336, previously-installed slave units 106 of the same type as the newly-installed slave unit 106 are updated with the newly written firmware image stored on the file system 412.
[0058] Finally, in step 338, the device index 420 is updated with the new firmware version of any updated slave units 106.
[0059] In the illustrated example, the fire sensor unit 106-6-2 is detected by the master module 102 as a newly-installed slave unit. It is then determined that the fire sensor unit firmware (v4) 410 installed on the newly-installed fire sensor unit nonvolatile memory 208-2 is version four of the fire sensor unit firmware. The file index 420 is then accessed, and it is determined that a previously-installed fire sensor unit 106-6 exists with a firmware version of three. It is also determined that the backup copy of the fire sensor firmware stored by the master module 102, which is the fire sensor unit firmware (v3) image 418, is also version three. Because the firmware version of the newly-installed fire sensor unit 106-6 (four) is more recent than that of the previously-installed fire sensor unit 106-6 (three) and the backup copy (three), it is determined that firmware for the previously-installed fire sensor units, and the corresponding backup copy, should be updated. It is then determined that there is adequate space on the file system 412, so the fire sensor unit firmware (v3) image 418 is erased.
[0060]
[0061] The fire sensor unit firmware (v4) 410 is then read from the fire sensor unit nonvolatile memory 208-2. of the newly-installed fire sensor unit 106-6 and stored as a backup in the file system 412.
[0062]
[0063] The previously installed fire sensor unit 106-6, containing the older version of the firmware, is then updated with the new firmware.
[0064]
[0065] Finally, the device index 420 is updated.
[0066]
[0067] While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims.