Device of replacing firmware and method implementing thereof
Patent Information
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-11-27
- Publication Date
- 2026-08-12
Smart Images

Figure R1020200162028_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to a device and method for replacing firmware. Background Technology
[0002] Recently, home appliances continuously update or upgrade their firmware to provide various functions. This is done as needed, such as adding new features, adapting to changed environments, or fixing errors, even after the appliances have been manufactured and released from the factory.
[0003] However, this process requires the home appliance to reliably communicate with an external server to receive files, which may result in the appliance stopping or being interrupted for a certain period during operation. If the time interval for file reception becomes long, the appliance may fail to provide the latest features. Conversely, if the time interval for file reception becomes short, it may place a processing burden on the appliance's operation.
[0004] Therefore, technology is needed to ensure that the process of updating or upgrading firmware is carried out sequentially without interfering with the operation of the home appliance. The problem to be solved
[0005] This specification is intended to solve the aforementioned problems by making the file to be downloaded for firmware replacement based on sub-firmware rather than the entire firmware, thereby reducing the firmware replacement time and file size and enabling rapid upgrade / update.
[0006] In addition, the present specification enables the rapid replacement of firmware and the determination of whether to download the next sub-firmware by utilizing the configuration of a composite sub-firmware to download a file containing version information of the sub-firmware and the composite sub-firmware.
[0007] The objects of the present invention are not limited to those mentioned above, and other unmentioned objects and advantages of the present invention may be understood from the following description and will be more clearly understood by the embodiments of the present invention. Furthermore, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof set forth in the claims. means of solving the problem
[0008] An apparatus according to one embodiment of the present invention includes firmware comprising a first version of first sub-firmware and a second version of first sub-firmware, and receives the latest version information of the first sub-firmware and the second sub-firmware from a server to replace the first sub-firmware or the second sub-firmware.
[0009] A device for replacing firmware according to one embodiment of the present invention receives from a first server a composite sub-firmware comprising version information of a first sub-firmware of a second version and a second sub-firmware to replace a first sub-firmware of a first version, or receives from a first server version information of one or more of the firmware, the first sub-firmware, or the second sub-firmware. Effects of the invention
[0010] When the present invention is applied, the file to be downloaded to replace the firmware is based on the sub-firmware rather than the entire firmware, thereby reducing the firmware replacement time and file size, allowing for rapid upgrade / update.
[0011] In addition, when the present invention is applied, the configuration of the composite sub-firmware is utilized to download a file containing the version information and the composite sub-firmware, thereby enabling rapid firmware replacement and the determination of whether to download the next sub-firmware.
[0012] The effects of the present invention are not limited to the effects described above, and various effects of the present invention can be easily derived from the configuration of the present invention. Brief explanation of the drawing
[0013] FIG. 1 is a diagram showing an example in which firmware according to one embodiment of the present invention is divided into a plurality of sub-firmwares. FIG. 2 is a diagram showing the process of voice recognition firmware according to one embodiment of the present invention being divided into a plurality of sub-firmwares and replaced. FIG. 3 is a diagram showing the process of replacing sub firmware according to one embodiment of the present invention. FIG. 4 is a diagram showing the process of replacing firmware or sub-firmware in a firmware device that performs voice recognition according to an embodiment of the present invention. FIG. 5 is a diagram showing the configuration of a composite sub-firmware according to one embodiment of the present invention. FIG. 6 is a diagram showing the process of replacing firmware in a firmware device including a voice recognition function according to an embodiment of the present invention. FIG. 7 is a diagram showing a FOTA process based on an M2M module according to an embodiment of the present invention. FIG. 8 is a diagram showing the process of checking the latest data of a server and playing a voice message accordingly, according to an embodiment of the present invention. FIG. 9 is a drawing showing an example of sequential replacement of associated sub-firmware according to an embodiment of the present invention. Specific details for implementing the invention
[0014] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings so that those skilled in the art can easily implement the invention. The present invention may be embodied in various different forms and is not limited to the embodiments described herein.
[0015] To clearly explain the present invention, parts unrelated to the description have been omitted, and the same reference numerals are assigned to identical or similar components throughout the specification. Furthermore, some embodiments of the present invention are described in detail with reference to the exemplary drawings. In assigning reference numerals to the components of each drawing, identical components may have the same reference numeral whenever possible, even if they are shown in different drawings. Additionally, in describing the present invention, if it is determined that a detailed description of related known components or functions could obscure the essence of the present invention, such detailed description may be omitted.
[0016] In describing the components of the present invention, terms such as first, second, A, B, (a), (b), etc., may be used. These terms are intended only to distinguish the components from other components, and the nature, order, sequence, or number of the components are not limited by these terms. Where it is stated that a component is "connected," "combined," or "connected" to another component, it should be understood that the component may be directly connected or connected to the other component, but that other components may be "interposed" between each component, or that each component may be "connected," "combined," or "connected" through other components.
[0017] In addition, for convenience of explanation in implementing the present invention, the components may be described in detail; however, these components may be implemented within a single device or module, or a single component may be divided and implemented across multiple devices or modules.
[0018] Hereinafter, the firmware included within the device comprises software, and new functions may be provided when new firmware is added. The addition of firmware is made possible through an upgrade or an update; typically, an update refers to an addition or modification on a smaller scale than an upgrade. That is, an upgrade may indicate improving the version, while an update may indicate maintaining the version while changing a part of the firmware. However, since the present invention is not limited thereto, the terms update and upgrade are used interchangeably in this specification below. In other words, both update and upgrade include all processes that result in changes or modifications to the firmware. Alternatively, such processes are collectively referred to as replacement.
[0019] The M2M (Machine to Machine) module described in this specification is included in mobile phones, smartphones, computers, or devices that provide M2M functions. Devices that provide M2M functions include home appliances. In this specification, home appliances or electronic products that provide M2M functions or include M2M modules are collectively referred to as M2M devices. Meanwhile, home appliances or electronic products that do not provide M2M functions, do not include M2M modules, and perform firmware upgrades / updates via the aforementioned M2M devices are collectively referred to as non-M2M devices.
[0020] M2M devices may include mobile phones, smartphones, computers, APs (Access Points), or routers, as well as certain home appliances.
[0021] FOTA (Firmware Over The Air or Firmware On The Air) refers to a method of updating firmware in a Wi-Fi or 3G / 4G environment. One example of this is a method in which a device capable of wireless communication, such as a smartphone or a computer, connects to a server via wireless or wired communication to receive files necessary for updating the firmware.
[0022] A FOTA system according to one embodiment of the present specification includes a standard for updating firmware that is closely related to the hardware. By using this standard to receive inactive data (variable part) of an application running on an M2M module, it is possible to reduce the FOTA time compared to the time it takes to download the entire application to the user, and it is possible to support the latest voice guidance messages on heterogeneous devices using an M2M module that has received the data once.
[0023] In addition, firmware update / upgrade according to another embodiment of the present specification may operate independently of the aforementioned M2M module.
[0024] Accordingly, the embodiments of the present specification include a technical configuration and method for delivering a composite sub-firmware including sub-firmware to a device side, and these may optionally operate on an M2M module, or operate in cooperation with an M2M module, or operate independently of an M2M module.
[0025] Hereinafter, the present specification presents a technical configuration for upgrading firmware by dividing firmware files into small files, each having a unique version, and simultaneously distributing them individually by a FOTA server. In addition, the version of each firmware file is compared with the versions of the firmware files distributed by the FOTA server, and the firmware files with higher versions are selectively downloaded and upgraded, thereby reducing the time required for FOTA.
[0026] In one embodiment of the present invention, the firmware is described primarily as voice recognition firmware. However, the present invention is not limited thereto, and embodiments of the present invention may be applied to upgrades of other types of firmware.
[0027] Hereinafter, an embodiment of a device including firmware to be modified is referred to as a firmware device. An embodiment of the firmware device is an M2M device including an M2M module. Alternatively, an embodiment of the firmware device is a non-M2M device that does not include an M2M module. Since the firmware device optionally includes an M2M module, both M2M devices and non-M2M devices are considered embodiments.
[0028] Firmware devices refer to all electronic devices that provide specific functions and require continuous firmware upgrades or updates; this includes home appliances such as air conditioners, refrigerators, TVs, and washing machines, as well as communication products such as mobile phones, computers, and laptops.
[0029] FIG. 1 is a diagram showing an example in which firmware according to one embodiment of the present invention is divided into a plurality of sub-firmwares.
[0030] In the embodiment of FIG. 1, the firmware is divided into a plurality of sub-firmwares, each of which can be updated. The firmware (200) of the firmware device (100) includes K sub-firmwares (210, 220, ..., 290). K can be 2 or more. And each of these sub-firmwares has a version. Some of these K sub-firmwares may be data files, some may be operating systems, or others may be drivers. Thus, an operating system may include one or more sub-firmwares. Also, a driver may include one or more sub-firmwares. Of course, to perform specific functions, for example, elements that perform voice recognition or visual recognition of objects may also be implemented as one or more sub-firmwares.
[0031] The communication unit (190) is a component that performs communication to transmit and receive data with another external device. The M2M module (300) may optionally be included in the firmware device (100).
[0032] The firmware device (100) does not replace the entire firmware. Instead, the firmware device (100) compares the version of each of the sub-firmwares, which are small units, with the version of each sub-firmware distributed by an external device (server or other M2M device) and selectively replaces (upgrades / updates) only the sub-firmware with the lower version via FOTA.
[0033] At this time, if the sub firmware operates normally only when another sub firmware is replaced, such sub firmware is linked to the other sub firmware, and both the previous version of the sub firmware and the new version of the sub firmware are maintained within the firmware device (100) until the other sub firmware is replaced.
[0034] In one embodiment, the first sub-firmware (210) must be the same version as the second sub-firmware (220) to be operational, and if the second sub-firmware (220) has not yet been replaced with the latest version, both the previous version and the latest version of the first sub-firmware (210) may be stored in the firmware device (100), and when the second sub-firmware (220) is replaced with the latest version, the firmware device (100) may delete the previous version of the first sub-firmware (210).
[0035] Additionally, the operating system (or control unit, controller) that controls the firmware device (100), the firmware, the communication unit (190), and the M2M module (300) can also be implemented as sub-firmware. In this case, when the operating system is running, two versions (an older version and a newer version) of sub-firmware can be stored in the firmware device (100), and when the operation of the operating system is stopped or the firmware device (100) is turned off, the sub-firmware constituting the operating system can be replaced with the newer version.
[0036] Alternatively, depending on the need for stable operation of the system, a separate control unit (150) may be implemented. In this case, the control unit (150) is distinguished from the firmware and may be implemented as a separate module from the firmware.
[0037] Of course, the control unit (150) may be implemented as any of the sub-firmwares. Alternatively, some of the elements constituting the control unit (150) may be implemented independently of the firmware, and others as sub-firmwares. This can be implemented in various ways depending on the operation method of the firmware device (100).
[0038] FIG. 2 is a diagram showing the process of replacing voice recognition firmware according to an embodiment of the present invention by dividing it into a plurality of sub-firmwares. The voice recognition firmware (200) includes a sub-firmware (210v) that provides a voice recognition function, a sub-firmware (220c) that constitutes an operating system, and a sub-firmware (230d) that constitutes a driver. Each sub-firmware (210v, 220c, 230d) can be replaced.
[0039] Each sub-firmware has its own replacement process. This is referred to as the history. For example, the voice recognition sub-firmware (210v) has progressed from version 1 through version 2.5 to version 3 sub-firmware installed, and the latest version is v3 (version 3). Similarly, the operating system sub-firmware (220c) has progressed from version 1 through version 1.2 to version 2 sub-firmware installed, and the latest version is v2 (version 2). In the same way, the driver sub-firmware (230d) has progressed from version 1 through versions 3 and 4 to version 5 sub-firmware installed, and the latest version is v5 (version 5).
[0040] FIG. 3 is a diagram showing the process of replacing sub-firmware according to an embodiment of the present invention. The method of replacing sub-firmware may be divided into a method of replacing the firmware containing all sub-firmware at once, or a method of replacing each sub-firmware individually or two or more of them.
[0041] In one embodiment, the latest firmware (700) is stored in the FOTA server (500), and the latest firmware (700) consists of a first sub-firmware (v2.1) (710), a second sub-firmware (v3.2) (720), and a third sub-firmware (v2.5) (730). The firmware device (100a) checks the version of the firmware (700) stored in the FOTA server (500) (S1). The version check method can be divided into two types: a method of checking the entire firmware version and a method of checking the version for each sub-firmware. In the former case, the entire firmware version can be checked when the firmware device (100a) has not replaced the firmware for a long time or when attempting a firmware upgrade / update for the first time after being released from the factory.
[0042] In a different embodiment, the firmware device (100a) can check the version for each sub-firmware. The firmware device (100a) compares the version of the first sub-firmware (210a) with the version of the first sub-firmware (710) of the FOTA server (500), compares the version of the second sub-firmware (220a) with the version of the second sub-firmware (720) of the FOTA server (500), and compares the version of the third sub-firmware (230a) with the version of the third sub-firmware (730) of the FOTA server (500).
[0043] As a result, the firmware device (100a) confirms that the first sub-firmware (210a) and the second sub-firmware (220a) have a lower version than the FOTA server (500). This confirmation can be made by the sub-firmware responsible for the operating system.
[0044] Then, the firmware device (100a) starts downloading the first sub-firmware (710) and the second sub-firmware (720) (S2).
[0045] After the download is complete, the firmware device performs a sub-firmware replacement (upgrade / update) to replace some sub-firmwares (S3).
[0046] The firmware device (100b) replaces the existing first sub-firmware (v2) with the downloaded first sub-firmware (v2.1). As a result, the firmware (200b) of the firmware device (100b) includes the first sub-firmware (210b) of v2.1.
[0047] Likewise, the firmware device (100b) replaces the existing second sub-firmware (v3.1) with the downloaded second sub-firmware (v3.2). As a result, the firmware (200b) of the firmware device (100b) includes the second sub-firmware (220b) of v3.2. On the other hand, the firmware (200b) of the firmware device (100b) retains the third sub-firmware (230a) as is.
[0048] In order to perform FOTA (firmware upgrade) on firmware installed in various devices (e.g., voice recognition firmware, object recognition firmware, scheduling firmware, etc., which provide various functions) at the point (field) where the device is installed, the firmware is composed of relatively small sub-firmwares, that is, a collection of small files (2 to n), and each of the sub-firmwares, that is, the files constituting a part of the firmware, has a unique version and can be individually distributed at the same time on the FOTA server (500).
[0049] A firmware device (e.g., a voice recognition board with voice recognition firmware installed, an object recognition board with object recognition firmware installed, a scheduling firmware with scheduling firmware installed, etc.) can reduce the time required for FOTA by comparing the version of each installed sub-firmware with the respective versions of the sub-firmwares being distributed by the FOTA server (500), and selectively downloading only the sub-firmware with a higher version than the sub-firmware stored in the firmware device to perform firmware replacement for upgrading / updating the firmware.
[0050] In particular, since the sub-firmware is replaced after checking each version, the time required for firmware replacement can be reduced by repeatedly downloading only the sub-firmware that is frequently updated among the sub-firmwares.
[0051] FIG. 4 is a diagram showing the process of replacing firmware or sub-firmware in a firmware device that performs voice recognition according to an embodiment of the present invention. As previously discussed, the firmware includes a total of three sub-firmwares.
[0052] Here, the first FOTA server (500a) maintains a composite sub-firmware (750) containing one sub-firmware (first sub-firmware, v2.1) (710) and the latest version information (721, 731) of other sub-firmwares. The composite sub-firmware (750) contains the latest version information of one or more of the sub-firmwares among the two or more sub-firmwares constituting the firmware and other sub-firmwares. For example, a composite sub-firmware may be configured as 750, consisting of the first sub-firmware (710), the version information (721) of the second sub-firmware, and the version information (731) of the third sub-firmware.
[0053] Then, the firmware device (100a) performs a version check with the first FOTA server (500a) (S11) and compares the version (v2.1) of the latest first sub-firmware (710) stored in the first FOTA server (500a) with the version (v2) of the first sub-firmware (210a) of the firmware device (100a). As a result, it is confirmed that a new version of the first sub-firmware (710) is stored in the first FOTA server (500a), and the firmware device (100a) downloads the composite sub-firmware (750) (S12).
[0054] When the download is complete, the firmware device (100a) replaces (updates or upgrades) the first sub-firmware (v2.1) (710) included in the composite sub-firmware (750) (S13). As a result, the firmware device (100b) includes the first sub-firmware (210b) which has been replaced with the latest version, v2.1.
[0055] Meanwhile, the firmware device (100b) can check the second sub-firmware version information (v3.2) included in the composite sub-firmware (750). As a result, the firmware device (100b) confirms that the downloaded second sub-firmware version information (v3.2) (721) is a newer version than the version (v3.1) of the second sub-firmware (220a) and starts downloading for replacement.
[0056] The firmware device (100b) downloads either the second sub-firmware (v3.2) (720) stored in the first FOTA server (500a) or the second sub-firmware (v3.2) (720) stored in another second FOTA server (500b) (S15a or S15b). In the case where multiple FOTA servers are deployed, the firmware device (100b) can select and download from a FOTA server that is faster or has less traffic.
[0057] When the download is complete, the firmware device (100b) replaces (updates or upgrades) the second sub-firmware using the second sub-firmware (v3.2) (720) (S16). As a result, the firmware device (100c) includes the second sub-firmware (220b) which has been replaced with the latest version, v3.2.
[0058] Meanwhile, the firmware device (100c) can check the third sub-firmware version information (v2.5) included in the composite sub-firmware (750). As a result, the firmware device (100c) confirms that the downloaded third sub-firmware version information (v2.5) (731) is identical to the version (v2.5) of the third sub-firmware (230a) and does not perform any separate replacement work.
[0059] FIG. 5 is a diagram showing the configuration of a composite sub-firmware according to one embodiment of the present invention.
[0060] A composite sub-firmware includes at least one sub-firmware file among a plurality of sub-firmwares constituting the firmware, and includes the latest version information of another sub-firmware as an example. Compared to the sub-firmware, the latest version information consists only of numbers or simple characters. Therefore, the file size of the latest version information is very small.
[0061] Alternatively, the filename of the composite sub-firmware according to one embodiment of the present invention may include the latest version information of each sub-firmware. If version information is included in the filename, version information may not be stored separately in the composite sub-firmware. However, since the filename of the composite sub-firmware is also information constituting the composite sub-firmware, providing version information through the filename of the composite sub-firmware also corresponds to an embodiment of the present invention.
[0062] FIG. 521 shows the configuration of a composite sub-firmware including a first sub-firmware (710) file (v2.1), version information (v3.2) (721) of the second sub-firmware, and version information (v2.5) (731) of the third sub-firmware. If the version information is included in the filename, the filename of the composite sub-firmware can be set as an example such as SF1filev2.1_SF2infov3.2_SF3infov2.5.
[0063] SF commonly refers to sub-firmware, and the numbers 1, 2, and 3 distinguish each sub-firmware. "file" indicates that it is stored as a file within the composite sub-firmware. On the other hand, "info" means that version information is provided without a separate file. Since version information is provided in the filename, the version information may not be independently configured separately within the composite sub-firmware.
[0064] Let's take a closer look.
[0065] "SF1filev2.1" indicates that the first sub-firmware file is included and the version is 2.1. "SF2infov3.2" indicates that the second sub-firmware version information is included and the version information is 3.2. "SF3infov2.5" indicates that the third sub-firmware version information is included and the version information is 2.5.
[0066] FIG. 522 shows the configuration of a composite sub-firmware including a second sub-firmware (720) file (v3.2), version information (v2.1) (711) of the first sub-firmware, and version information (v2.5) (731) of the third sub-firmware. If the version information is included in the filename, the filename of the composite sub-firmware can be set as an example such as SF1infov2.1_SF2filev3.2_SF3infov2.5.
[0067] FIG. 523 shows the configuration of a composite sub-firmware including a third sub-firmware (730) file (v2.5), version information (v2.1) (711) of the first sub-firmware, and version information (v3.2) (721) of the second sub-firmware. If the version information is included in the filename, the filename of the composite sub-firmware can be set as an example such as SF1infov2.1_SF2infov3.2_SF3filev2.5.
[0068] 24 of FIG. 5 is an embodiment that includes two sub-firmwares, unlike 21 / 22 / 23, and shows the configuration of a composite sub-firmware that includes a first sub-firmware (710) file (v2.1), a second sub-firmware (720) file (v3.2), and version information (v2.5) (731) of a third sub-firmware. If version information is included in the filename, the filename of the composite sub-firmware can be set as an example such as SF1filev2.1_SF2filev3.2_SF3infov2.5.
[0069] Cases involving two or more sub-firmwares, such as 24, are applicable when upgrades or updates to the two sub-firmwares occur frequently. Alternatively, they are applicable when changes to the two sub-firmwares are related.
[0070] To summarize, the following applies. A device such as a firmware device includes a first version of first sub-firmware and a first version of second sub-firmware. And the communication unit (190) of the device can receive from a first server (first FOTA server) a composite sub-firmware containing version information of a second version of first sub-firmware to replace the first version of first sub-firmware and the second sub-firmware.
[0071] When the version information included in the composite sub-firmware received by the communication unit (190) indicates that it is a newer version than the first version of the second sub-firmware, the communication unit (190) may receive the second sub-firmware from the first server or from a second server that is distinct from the first server. This is applicable when each FOTA server is assigned to a sub-firmware. Alternatively, the second server may be determined in real time according to the communication status of each server.
[0072] Alternatively, the communication unit (190) of the device may receive version information of one or more of the firmware, the first sub-firmware, or the second sub-firmware from the first server. Through this, the device may determine whether to replace the firmware or the sub-firmware. At this time, the device may receive a set of version information consisting only of 711, 721, and 731 of FIG. 5 and download each sub-firmware that requires an update.
[0073] In this case, if the communication unit (190) of the device indicates that one or more of the version information of the firmware, the first sub-firmware, or the second sub-firmware received by the device is the latest version, the communication unit (190) may receive one or more of the composite sub-firmware, the first sub-firmware, or the second sub-firmware from the first server or a second server distinguished from the first server.
[0074] FIG. 6 is a diagram showing the process of replacing firmware in a firmware device including a voice recognition function according to an embodiment of the present invention.
[0075] The first FOTA server (500a) includes a composite sub-firmware (750a). The voice recognition sub-firmware file (v1.6), version information of the operating system sub-firmware (v2.5), and version information of the driver sub-firmware (v3.7) constitute the composite sub-firmware (750a). As an example, the version information of the sub-firmware is in the form of a text file containing characters or numbers. The version information is characterized by being smaller in size than the sub-firmware file. Additionally, as previously discussed, the version information of the sub-firmware may be included in the file name of the composite sub-firmware (750a). In this case, only the voice recognition sub-firmware file (v1.6) may be included within the composite sub-firmware (750a).
[0076] As in S31, the firmware device (100a) checks the version information of the composite sub-firmware (750a) stored in the first FOTA server (500a). The checking method can be implemented in various ways, such as by downloading the composite sub-firmware (750a) to check it, or by receiving only the version information for each sub-firmware to check it.
[0077] As a result of checking the version information, the version of the voice recognition sub-firmware (210a) stored in the firmware device (100a) is 1.5, and the version of the voice recognition sub-firmware constituting the composite sub-firmware (750a) stored in the first FOTA server (500a) is 1.6.
[0078] As a result of checking the version information, the version of the operating system sub-firmware (220a) stored in the firmware device (100a) is 2.3, and the version information of the operating system sub-firmware constituting the composite sub-firmware (750a) stored in the first FOTA server (500a) is 2.5.
[0079] As a result of checking the version information, the version of the driver sub-firmware (230a) stored in the firmware device (100a) is 3.5, and the version information of the driver sub-firmware constituting the composite sub-firmware (750a) stored in the first FOTA server (500a) is 3.7.
[0080] Accordingly, the firmware device (100a) downloads the composite sub-firmware (750a) stored in the first FOTA server (500a). If the composite sub-firmware (750a) was downloaded during the previous verification process, the sub-firmware installation step is started immediately.
[0081] As illustrated in S32, the voice recognition sub-firmware (v1.6) within the downloaded composite sub-firmware (750a) is installed, and the previously stored voice recognition sub-firmware (210a) is removed. As a result, the voice recognition sub-firmware (210b) of the firmware device (100b) is replaced (updated, upgraded) to version 1.6.
[0082] Meanwhile, a download is performed for replacement of other sub-firmware as well. For other sub-firmware, this may be done on servers (500b, 500c) different from the first FOTA server (500a). Of course, depending on the embodiment, 500a, 500b, and 500c may all refer to the same server.
[0083] The firmware device (100b) downloads the operating system sub-firmware (v2.5) stored in the second FOTA server (500b) (S33). Then, it installs the downloaded operating system sub-firmware (v2.5) and removes the previously stored operating system sub-firmware (220a). As a result, the operating system sub-firmware (220b) of the firmware device (100c) is replaced (updated, upgraded) to version 2.5.
[0084] Likewise, the firmware device (100c) downloads the driver sub-firmware (v3.7) stored in the third FOTA server (500c) (S34). Then, it installs the downloaded driver sub-firmware (v3.7) and removes the previously stored driver sub-firmware (230a). As a result, the driver sub-firmware (230b) of the firmware device (100d) is replaced (updated, upgraded) to version 3.7.
[0085] Steps S31, S33, and S34 may be performed with a time interval. This is because, if it takes time for the firmware device to download and replace the sub-firmware, or if there is a problem that interrupts the currently functioning sub-firmware, the version is checked first, and then the download of the sub-firmware can be performed when the firmware device's function execution is temporarily suspended.
[0086] The FOTA method of Fig. 6 can be summarized as follows. A firmware device (100a) connects to a FOTA server and compares the firmware version installed on the firmware device (100a) with the firmware version distributed by the FOTA server to determine whether to proceed with FOTA. At this time, if the version of the sub-firmware is changed, the firmware version is also changed.
[0087] In one embodiment, the FOTA server (500a) may separately provide the version of the entire firmware in FIG. 6. This can be calculated based on each sub-firmware version.
[0088] Then, the firmware device (100a) compares the version of the entire firmware and downloads the composite sub-firmware (750a) if it is higher than the version of the firmware stored in the firmware device (100a) (S31).
[0089] The composite sub-firmware (750a) contains the latest first sub-firmware (voice recognition sub-firmware) file. Therefore, when the download of the composite sub-firmware (750a) is completed, the first sub-firmware, the voice recognition sub-firmware, is updated as in S32, as in 210b.
[0090] Additionally, the firmware device (100b) extracts version information of the second sub-firmware (operating system sub-firmware) included in the composite sub-firmware (750a) and version information of the third sub-firmware (driver sub-firmware), and compares this with the versions of the second sub-firmware (operating system sub-firmware) (220a) and the third sub-firmware (driver sub-firmware) (230a) within the firmware device (100b). As a result of the comparison, if the versions of 220a and 230a are lower, the corresponding sub-firmware is downloaded from the FOTA server and updated. This was examined in processes S33 and S34. That is, instead of performing FOTA on all distributed sub-firmware files in bulk, as shown in FIG. 6, the versions of each sub-firmware can be compared, and only the sub-firmware that requires an update can be selectively updated.
[0091] In replacing the firmware in the manner illustrated in Fig. 6, instead of the entire firmware with a large file size, small partial firmware files, i.e., sub-firmware files (2 to n), are provided, and multiple sub-firmware versions are compared to selectively enable FOTA only for the sub-firmwares with lower versions.
[0092] In addition, as shown in Fig. 6 where three FOTA servers are arranged, multiple sub-firmware files can be individually distributed simultaneously on multiple FOTA servers.
[0093] If a single large full firmware is composed of small sub-firmware files and FOTA is performed on a sub-firmware file basis, the number of unnecessary downloads or full firmware replacements can be reduced.
[0094] In addition, when a firmware device downloads a composite sub-firmware containing version information of other sub-firmwares during the process of providing only a portion of the sub-firmware, the versions can be compared without the need for the download process of each individual sub-firmware, thereby increasing the speed of firmware replacement.
[0095] For example, FOTA can be selectively performed by comparing each version of the sub-firmware files distributed by the FOTA server with each version of the sub-firmware installed in a firmware device, which is an example of a voice recognition board, and downloading only the sub-firmware with a lower version. This enables fast updates or upgrades by including one or more sub-firmware files and version information of one or more sub-firmwares within the composite sub-firmware, thereby reducing the size of the downloaded file while transmitting version information for each sub-firmware to the firmware device.
[0096] The embodiments described above are summarized as follows. In order to upgrade firmware that performs specific functions, such as voice recognition, object recognition, or artificial intelligence, using FOTA, the firmware is composed of a collection of relatively small files (sub-firmware) (2 to n). In addition, instead of replacing the entire firmware, only some sub-firmware files can be downloaded and replaced.
[0097] Each sub-firmware file has a unique version and can be updated on a per-sub-firmware file basis. Additionally, each sub-firmware file is simultaneously distributed individually by the FOTA server. In this process, multiple FOTA servers may be deployed.
[0098] In addition, the board with installed firmware or the firmware device containing the firmware compares the version of each installed sub-firmware file with the version of the sub-firmware files being distributed by the FOTA server. If the files being distributed by the server are of a higher version, only the corresponding sub-firmware file is selectively downloaded to perform a firmware upgrade. As a result, the time required for FOTA can be minimized.
[0099] In particular, composite sub-firmware includes one or more sub-firmwares and one or more sub-firmware version information, enabling FOTA to be performed while reducing the number of FOTA server connections.
[0100] During the process of performing FOTA, firmware devices including voice recognition boards, object recognition boards, and artificial intelligence boards may use memory in proportion to the size of the sub-firmware. Furthermore, if the firmware is composed of a collection of relatively small sub-firmware files (2 to n) and only a specific sub-firmware—that is, a part of the firmware—is upgraded via FOTA, the amount of memory used during the FOTA process can be minimized compared to the process of performing FOTA on the entire firmware at once. In other words, by performing FOTA updates on the sub-firmware, the amount of memory used for FOTA can be minimized.
[0101] When applying an embodiment of the present invention, the problem of the download time becoming long during FOTA execution due to the increased size of the firmware when the firmware performing a specific function is configured as a single file can be resolved.
[0102] A configuration according to one embodiment of the present invention includes a number of sub-firmware files, one or more FOTA servers that distribute the number of sub-firmware files, and a part that compares the versions of the sub-firmware files distributed by the FOTA servers with the versions of the sub-firmwares installed on the firmware device.
[0103] In addition, each sub-firmware file can be distributed on a different FOTA server. Or, each sub-firmware file can be distributed on the same FOTA server.
[0104] As mentioned earlier, the firmware device may be an M2M device or a non-M2M device. If it is an M2M device, the firmware device can directly connect to a FOTA server to download sub-firmware.
[0105] In another embodiment, if the firmware device is a non-M2M device, the sub-firmware can be downloaded via another M2M device.
[0106] In addition, general electronic products can connect with M2M devices, and the M2M device can operate in conjunction with the device by storing firmware suitable for that device. For example, a general electronic product may not provide voice recognition or voice guidance functions, but the M2M device can provide these functions instead. In this case, the M2M device can connect with multiple electronic products and store firmware to provide voice recognition or voice guidance functions suitable for the connected products. Furthermore, the M2M device can check the firmware version, download the composite sub-firmware, and then perform a firmware update or upgrade.
[0107] However, the composite sub-firmware download including the aforementioned sub-firmware may operate on the M2M module or independently of the M2M module, and the present invention can be applied in various ways.
[0108] Below, we examine an embodiment of the present invention in a FOTA system operating in an M2M module.
[0109] FIG. 7 is a diagram showing a FOTA process based on an M2M module according to an embodiment of the present invention.
[0110] Inactive data of the firmware or M2M device assigns a version. Inactive data refers to data applied during the voice guidance process and is an example of firmware.
[0111] If the firmware device includes an M2M module, the communication unit (190) of FIG. 1 may be included in the communication unit (310) of the M2M module. Likewise, the control unit (150) of FIG. 1 may be included in the control unit (350) of the M2M module.
[0112] As described above, the version of the inactive data is the entire firmware version as one embodiment. Additionally, the version of the inactive data is the version of the sub-firmwares among the firmware as one embodiment. When the inactive data consists of multiple sub-firmwares, whether to update the firmware can be determined based on the version of each sub-firmware.
[0113] A plurality of electronic devices (50a, 50b, 50c) are connected to an M2M module or an M2M device (300) that includes an M2M module (S41). The M2M device (300) may include components unrelated to M2M in addition to the M2M module. The following description focuses on the configurations of the M2M modules within the M2M device (300). If an M2M module is included in any one of the plurality of electronic devices, that electronic device becomes an M2M device and other electronic devices can be connected to it.
[0114] The connection of multiple electronic devices (50a, 50b, 50c) is made through the device connection part (320) of the M2M device or M2M module. For example, the first electronic device (50a) can be connected to the device connection part (320) of the M2M device.
[0115] After connection, the M2M device checks the inactive data stored in the storage (390). At this time, depending on the predetermined information or specific value transmitted by the first electronic device (50a) connected to the device connection part (320) of the M2M module, the M2M device can provide the latest voice guidance message to the user.
[0116] The information or value provided by the first electronic device (50a) includes identification information of the device, identification information for a voice guidance message that the device intends to output, or other information necessary to output a voice guidance message.
[0117] In this process, the M2M device can check whether the version of the inactive data stored in the storage (390) is the latest by connecting to the FOTA server (500) to check the version (S42) and download the latest version. In this process, the M2M device (300) can download a composite sub-firmware in which the inactive data is composed of multiple sub-firmwares, includes one or more sub-firmwares, and includes one or more version information of the sub-firmwares.
[0118] Inactive data that has been downloaded once can be shared with other electronic devices.
[0119] That is, when multiple electronic devices (50a, 50b, 50c) provide the same voice guidance function, when the first electronic device (50a) performs a connection and the inactive data required for voice guidance is updated / upgraded to the latest version, when the second electronic device (50b) subsequently connects to the M2M device (300), the latest voice guidance message can be provided without a separate update process because the inactive data has already been updated.
[0120] In addition, since the inactive data can store the address of the latest voice recognition server that each electronic device or M2M device must connect to, it is possible to switch to a server storing the latest technology and the latest inactive data.
[0121] Meanwhile, according to one embodiment of the present invention, the server address to be accessed may differ for each sub-firmware constituting inactive data.
[0122] The process of FIG. 7 is summarized as follows. Depending on the connection event of the electronic devices (50a, 50b, 50c), a voice guidance event requesting voice guidance occurs (S41). Then, a process of checking whether the data is the latest inactive data is optionally performed on the FOTA server (S42). If a preset time (e.g., 6 hours, 12 hours, etc.) has not passed since the update / upgrade of the inactive data occurred, the M2M device (300) may skip the version check process.
[0123] Then, the storage processing unit (340) checks the sound source and setting data stored in the storage (390). That is, it checks the sound source corresponding to the voice guidance event requested in S41 in the mapping table (S45). Then, by playing the checked sound source, it can provide voice guidance to the user (S46).
[0124] Based on the configuration of Fig. 7, the latest voice guidance message can be provided by using the FOTA system in a voice recognition application. That is, a product connection event is performed at the moment the power of the electronic devices (50a, 50b, 50c) is turned on (S41), and while connected to the internet, it is checked whether there is the latest inactive data (variable part) in the FOTA server (S42), and if there is the latest inactive data in the server, it is changed to the latest data. Then, a voice guidance message can be provided based on the changed latest inactive data.
[0125] FIG. 8 is a diagram showing the process of checking the latest data of a server and playing a voice message accordingly, according to an embodiment of the present invention.
[0126] The electronic device establishes a connection with the M2M device (S61). It may transmit a voice guidance event. The M2M device checks whether it is connected to the internet (S62). If it is not connected or if a connection is impossible, it proceeds directly to step S65 to check for the existence of the latest information in the storage (390) (S65), and then plays guidance messages and error messages using the stored basic or latest information (S66, S67). Alternatively, if it is within a certain time after replacing or downloading the previously inactive data (e.g., 6 hours, 24 hours, etc., depending on the update cycle), it may proceed directly to step S67 without attempting or checking for a separate internet connection.
[0127] Meanwhile, if connected to the internet, the M2M device (300) performs step S63 when it is able to communicate with the FOTA server by establishing a WIFI connection or other communication connection. That is, the M2M device (300) checks whether the information stored on the FOTA server is up to date. At this time, the version can be checked based on the entire firmware, that is, the entire inactive data, or the version can be checked by sub-firmware. The M2M device (300) can check the version of the application and the version of the inactive data (variable part).
[0128] As a result, if the information from the FOTA server (500) is up to date, the M2M device (300) stores the information downloaded from the server in the storage (S64). At this time, as previously discussed, the M2M device (300) may apply one of the following download methods: downloading the entire firmware, or dividing the firmware into sub-firmwares and downloading each sub-firmware separately. Additionally, when downloading by sub-firmware, the M2M device (300) can download the composite sub-firmware. Furthermore, it can check the version information for each sub-firmware and download only the necessary sub-firmware.
[0129] Meanwhile, if the information of the FOTA server (500) is not up to date, it checks whether information exists in the storage (390) (S65). If information exists as a result of the check, the M2M device (300) plays a guidance message and an error message using the latest information in the storage (S66).
[0130] Meanwhile, if there is no information in the storage (390), a guidance message and an error message are played using basic information (S67).
[0131] The process of Fig. 8 can be summarized as follows. The M2M device (300) can apply the version of the inactive data or the version of the application installed in the M2M module of the M2M device (300) as a key to update / upgrade the inactive data from the FOTA server (500). Then, the M2M device (300) provides the latest voice guidance data and setting data according to the application version and the version of the inactive data.
[0132] When applying the above-described embodiment, only the inactive data (variable part) required for voice recognition needs to be supported, so a binary of the M2M module according to the equipment is not required. In addition, since existing applications only need to perform FOTA of the inactive data (variable part) compared to the FOTA method, the time required for FOTA is short. In particular, it is efficient because it is possible to support various types of devices using a single binary for the M2M module.
[0133] Looking at the above-described embodiment, server information can be checked using the version of the application program and the inactive data version installed in the M2M module. In addition, an M2M module that is not connected to the communication unit can operate according to device events using previously stored inactive data.
[0134] Additionally, the key applied by the M2M device including the M2M module when updating or upgrading inactive data may include one or more of the version of the inactive data or the version of the application installed on the M2M module. That is, the M2M device may use the version of the inactive data to determine whether to perform a replacement operation, such as updating or upgrading the inactive data.
[0135] At this time, if the version of the inactive data is lower than the version of the inactive data stored in the FOTA server (500), the M2M device can download the inactive data from the FOTA server (500) for an update or upgrade.
[0136] Likewise, the M2M device can determine whether to update inactive data based on the version of the application installed in the M2M module. For example, if the version of the application installed in the M2M module is lower than the version of the application related to the operation or execution of the inactive data stored in the FOTA server (500), the M2M device can download the inactive data from the FOTA server (500) for update or upgrade.
[0137] Of course, in this process, the M2M device can perform an upgrade or update of the application by downloading the firmware corresponding to the application from the FOTA server (500).
[0138] In one embodiment, the inactive data of FIGS. 7 and FIGS. 8 is firmware composed of one or more sub-firmwares. In addition, the download or update process can be performed on a sub-firmware basis, and at this time, the composite sub-firmware can be downloaded.
[0139] Meanwhile, if individual versions of sub-firmware operate in correlation with each other, M2M devices or firmware devices, etc., can be replaced by reflecting the correlation of the sub-firmware.
[0140] Looking at FIGS. 7 and 8, the M2M device further includes an M2M module, and the device connection part of the M2M module connects other devices (other electronic products).
[0141] Then, when the first device establishes a communication connection with the device connection unit, the control unit of the M2M module checks the communication connection with the first server (S62). After establishing the communication connection with the first server, if the sub firmware or firmware stored in the first server is the latest version, it receives the composite sub firmware from the first server (S63~S64). Subsequently, the first device performs the requested function using the second version of the first sub firmware included in the composite sub firmware (S66).
[0142] Meanwhile, the function requested by the first device may be performed using the first version of the first sub firmware that is stored in advance without a communication connection with the first server. This is an example in which, when the time has not long since the M2M device replaced the sub firmware, a guidance message or an error message is played using the first version of the first sub firmware without a separate communication connection for faster execution time.
[0143] FIG. 9 is a diagram showing an example of sequential replacement of associated sub-firmware according to an embodiment of the present invention. It is examined based on the example of sub-firmware related to speech recognition in FIG. 2.
[0144] One firmware (200e) consists of three sub-firmwares (210v, 220c, 230d). The versions of each sub-firmware are as shown.
[0145] Here, unless the sub-firmwares are interrelated with other sub-firmwares, replacement with the latest version can be performed for each sub-firmware individually. On the other hand, if one sub-firmware is related to another, the replacement of the sub-firmware can be applied according to the relationship. An example of such a relationship is a case where data is dependent or libraries are dependent.
[0146] In Figure 9, regarding the voice recognition sub-firmware, it is assumed that the firmware device has downloaded the voice recognition sub-firmware (v3, 210v1) because version 3, confirmed by the FOTA server, is the latest. However, the voice recognition sub-firmware (v3, 210v1) is associated with the operating system sub-firmware v1.3. Therefore, the firmware device does not replace the voice recognition sub-firmware and maintains the state of storing the latest file until the operating system sub-firmware v1.3 is downloaded.
[0147] Afterwards, when the firmware device downloads the operating system sub-firmware v1.3, the voice recognition sub-firmware and the operating system sub-firmware are replaced simultaneously, so that the firmware (200f) can operate with the latest voice recognition sub-firmware (v3, 210v1) and the latest operating system sub-firmware (v1.3, 220c1).
[0148] In summary, when the first sub-firmware of the second version of the composite sub-firmware (voice recognition v3 of FIG. 9) operates in association with the second sub-firmware of the second version (operating system v1.3 of FIG. 9), the first sub-firmware of the second version (voice recognition v2.5 of FIG. 9) of the first version is maintained within the firmware while the second sub-firmware of the second version (voice recognition v3 of FIG. 9) is stored until the second sub-firmware of the second version or the composite sub-firmware containing the second sub-firmware of the second version is received. Then, when the firmware device downloads the second sub-firmware of the second version (operating system v1.3 of FIG. 9), the second sub-firmware of the second version (operating system v1.3 of FIG. 9) and the second sub-firmware of the second version (operating system v1.3 of FIG. 9) are included in the firmware (200f), each sub-firmware can be replaced.
[0149] Additionally, the firmware device can download a second sub-firmware associated with a new version of the first sub-firmware before another third sub-firmware. This is an example of maintaining the firmware at the latest version.
[0150] The aforementioned firmware and M2M modules can be implemented in various ways depending on the storage capacity and other factors implemented in each electronic product. For example, an electronic product with insufficient storage capacity may update the firmware or use the firmware's functions via another M2M device. In this case, the electronic product may transmit version information for a specific app or identification information regarding a function to the other M2M device.
[0151] When firmware that performs specific functions, such as voice recognition firmware, is configured as a single firmware, the firmware file becomes large, which increases the time required to download the firmware file during the FOTA process. In addition, the size of the memory required for FOTA operation also increases, leading to a problem of rising product production costs.
[0152] Embodiments of the present invention minimize the time and memory capacity required for FOTA by configuring the entire firmware into multiple small parts, called sub-firmwares, rather than a single large file, and selectively performing a FOTA upgrade only on specific sub-firmwares that require an upgrade. As a result, the cost of the product is reduced due to the reduction in memory capacity.
[0153] Accordingly, when applying an embodiment of the present invention, in the process of updating a module for voice recognition, voice guidance, or object recognition, etc., which provides specific functions, using the FOTA method, the firmware can be divided into applications, operating systems, and drivers, and then versions can be compared and updated sequentially or according to importance for each part. Accordingly, the file size required for updates or upgrades can be reduced and the update time can be reduced.
[0154] Although it has been described that all components constituting an embodiment of the present invention are combined or operate as a single unit, the present invention is not necessarily limited to such an embodiment, and within the scope of the purpose of the present invention, all components may be selectively combined in one or more ways to operate. Furthermore, while all components may each be implemented as a single independent piece of hardware, some or all of the components may be selectively combined to be implemented as a computer program having a program module that performs some or all of the combined functions on one or more pieces of hardware. The codes and code segments constituting the computer program can be easily inferred by those skilled in the art of the present invention. An embodiment of the present invention may be implemented by storing such a computer-readable storage medium and reading and executing it by a computer. The storage medium for the computer program includes a magnetic recording medium, an optical recording medium, and a storage medium including a semiconductor recording element. Additionally, a computer program implementing an embodiment of the present invention includes a program module that is transmitted in real time through an external device.
[0155] Although the present invention has been described above with reference to embodiments, various changes and modifications can be made by those skilled in the art. Therefore, it should be understood that such changes and modifications are included within the scope of the present invention as long as they do not depart from the scope of the invention. Explanation of the symbols
[0156] 100: Firmware device 300: M2M device 500: FOTA Server
Claims
Claim 1 Firmware including a first version of the first sub-firmware and a first version of the second sub-firmware; A device for replacing firmware, comprising a communication unit that receives from a first server a composite sub firmware including version information of a second version of first sub firmware to replace the first sub firmware of the first version and the second sub firmware, or receives version information of one or more of the firmware, the first sub firmware, or the second sub firmware from the first server, and replaces the first sub firmware included in the firmware without replacing the entire firmware, and when the first sub firmware of the second version of the composite sub firmware operates in association with the second sub firmware of the second version, maintains the first sub firmware of the first version in the firmware while storing the first sub firmware of the second version until receiving the composite sub firmware including the second sub firmware of the second version or the second sub firmware of the second version, and replaces the first sub firmware of the second version and the second sub firmware of the second version simultaneously. Claim 2 A device for replacing firmware, wherein, in the case where the version information included in the received composite sub-firmware indicates that the second sub-firmware is a newer version than the first version, the communication unit receives the second sub-firmware from the first server or a second server distinguished from the first server. Claim 3 A device for replacing firmware according to claim 1, wherein when version information of one or more of the received firmware, the first sub-firmware, or the second sub-firmware indicates that it is the latest version, the communication unit receives one or more of the composite sub-firmware, the first sub-firmware, or the second sub-firmware from the first server or a second server distinguished from the first server. Claim 4 In claim 1, the above composite sub-firmware is a device for replacing firmware, comprising one or more sub-firmwares and information on the latest version of one or more sub-firmwares. Claim 5 A device for replacing firmware, wherein the filename of the composite sub-firmware includes version information of the sub-firmware. Claim 6 delete Claim 7 A device for replacing firmware according to claim 1, wherein the device further includes an M2M module, and the M2M module further includes a device connection portion to which other devices are connected. Claim 8 A device for replacing firmware according to claim 7, wherein when a first device performs a communication connection with the device connection part, the control part of the M2M module checks the communication connection with the first server, and after performing the communication connection with the first server, if the sub firmware or firmware stored in the first server is the latest version, receives the composite sub firmware from the first server, and then performs the function requested by the first device using the first sub firmware of the second version included in the composite sub firmware. Claim 9 In claim 8, the device including the M2M module is an M2M device, and the M2M device is a firmware replacement device in which the key applied when updating or upgrading inactive data applies the version of the inactive data or the version of the application installed on the M2M module. Claim 10 In claim 8, a device for replacing firmware that performs a function requested by the first device using the first sub-firmware of the first version stored in advance without a communication connection with the first server. Claim 11 A device for replacing firmware according to claim 1, further comprising a control unit for controlling the device, wherein the control unit is the first sub-firmware or a module distinct from the firmware. Claim 12 A method for a device including firmware to replace firmware, wherein the device stores a first version of first sub-firmware and a first version of second sub-firmware; A method for replacing firmware, comprising the step of the communication unit of the device receiving from the first server a composite sub-firmware containing version information of the first sub-firmware of the second version to replace the first sub-firmware of the first version and the second sub-firmware, or receiving version information of one or more of the firmware, the first sub-firmware, or the second sub-firmware from the first server, wherein the device replaces the first sub-firmware included in the firmware without replacing the entire firmware, and further comprising the step of maintaining the first sub-firmware of the first version within the firmware while storing the first sub-firmware of the second version until receiving the second sub-firmware of the second version or the composite sub-firmware including the second sub-firmware of the second version, and the step of simultaneously replacing the first sub-firmware of the second version and the second sub-firmware of the second version. Claim 13 A method for replacing firmware according to claim 12, wherein if the version information included in the received composite sub-firmware indicates that the second sub-firmware is a newer version than the first version, the communication unit further comprises the step of receiving the second sub-firmware from the first server or a second server distinguished from the first server. Claim 14 A method for replacing firmware according to claim 12, wherein if version information of one or more of the received firmware, the first sub-firmware, or the second sub-firmware indicates that it is the latest version, the communication unit further comprises the step of receiving one or more of the composite sub-firmware, the first sub-firmware, or the second sub-firmware from the first server or a second server distinguished from the first server. Claim 15 A method for replacing firmware according to claim 12, wherein the composite sub-firmware comprises one or more sub-firmwares and information on the latest version of one or more sub-firmwares. Claim 16 A method for replacing firmware according to claim 15, wherein the filename of the composite sub-firmware includes version information of the sub-firmware. Claim 17 delete Claim 18 A method for replacing firmware according to claim 12, wherein the device further comprises an M2M module, and the M2M module further comprises a device connection portion to which other devices are connected. Claim 19 A method for replacing firmware according to claim 18, wherein when a first device performs a communication connection with the device connection part, the control part of the M2M module checks the communication connection with the first server, and after performing the communication connection with the first server, if the sub firmware or firmware stored in the first server is the latest version, receives the composite sub firmware from the first server, and then performs the function requested by the first device using the first sub firmware of the second version included in the composite sub firmware. Claim 20 In claim 18, the device including the M2M module is an M2M device, and the method for replacing firmware further comprises the step of applying a key applied when updating or upgrading inactive data to the M2M device, wherein the key applied is a version of the inactive data or a version of an application mounted on the M2M module. Claim 21 A method for replacing firmware according to claim 19, further comprising the step of performing a function requested by the first device using the first sub-firmware of the first version stored in advance without a communication connection with the first server. Claim 22 A method for replacing firmware according to claim 12, further comprising a control unit for controlling the above device, wherein the control unit is the first sub-firmware or a module distinct from the above firmware.
Citation Information
Patent Citations
Printer
JP2009053901A
Electronic apparatus, version check system and version check program
JP2018106357A
Firmware update system
JP2013250923A
Information processing apparatus, firmware updating method and computer program
JP2014191797A
Device control system, communication adapter, and household appliance
WO2020110312A1