图像
Hiroki Ishiguro
Hiroki Ishiguro
Sr. Principal Software Engineer
已发布: 2023年9月6日

Hello everyone! Chances are, you're reading this on a smartphone. If your smartphone is like mine, it probably receives firmware updates approximately once a month. These updates are essential for upgrading the internal operating system (OS) of the device.

The OS updates can improve performance and prolong battery life. Behind these improvements that directly affect users, there may also be so-called "security patches" included in the software components that make up the smartphone. These patches fix newly discovered vulnerabilities. If you continue to use a smartphone without applying these "security patches", there is a high risk that the newly discovered vulnerabilities could be exploited by malicious third parties, potentially leading to the leakage of the smartphone user's personal information. This risk is particularly high in the case of electronic devices such as smartphones connected to the internet, as they are exposed to the risk of remote attacks.

Therefore, for product developers, especially in the case of internet-connected devices, it is important to establish an operational system to deliver firmware updates, and for users, it is important to apply firmware updates as much as possible.

In this context, the "Guidelines for Terminal Equipment Certification Based on the Telecommunications Business Act (2nd Edition)", issued by the Ministry of Internal Affairs and Communications of Japan, also clearly states that software updates are necessary functions.

Learn more: https://www.soumu.go.jp/main_content/000744264.pdf

On the other hand, the RX family of microcontrollers has been adopted in many industrial devices (including for factory automation). As of August 2023, the latest status is that we have exceeded 1.5 billion RX MCU units. Some devices in the RX family come with built-in Ethernet functionality, allowing them to connect to networks via Ethernet. Furthermore, some of them are also connected to the internet. However, even among the users who should have achieved such network connectivity, many were limited to implementing firmware update functions using SD cards or USB memory. In the case of firmware update functions using SD cards or USB memory, it was necessary to dispatch engineers to where the product is located (or hand over update data to end users) and apply firmware rewrite processing to each product, which was costly and time-consuming.

To solve this problem, it is necessary to "deliver updated firmware via the internet", but the construction of a server system to realize the functionality is a major barrier for companies that develop and design embedded systems, which make up the majority of RX family users. It is believed that this is a factor hindering the spread of firmware update functions via the internet. Moreover, there were many users who lacked know-how about the implementation of firmware update functions in the first place.

In such a situation, Amazon Web Services (AWS) and Microsoft developed a firmware update method using AWS and Azure. Renesas consulted with both companies and made it possible to use their OS, FreeRTOS and Azure RTOS, in the RX family for firmware updates.

By using AWS/FreeRTOS and Microsoft/Azure RTOS, users can obtain the following benefits.

  1. Users can utilize a stable cloud system
  2. There is no need to develop software for the server side (cloud system)
  3. On the client side (microcontroller), all you need to do is incorporate the FreeRTOS or Azure RTOS provided by AWS or Azure

In the application note below, in addition to the content explained in this section, we have summarized the basic concept in a form that mentions the actual mechanism of firmware updates. We recommend that you read it first when considering firmware updates.

Renesas MCU Firmware Update Design Policy Rev.1.00

If you want to experiment on your own, you could purchase an evaluation board such as the CK-RX65N. Then, by creating a new project in the e2 studio integrated development environment (IDE) and selecting either FreeRTOS or Azure RTOS, you can generate a project built with the mechanism for firmware updates via the internet. You can make settings to connect to AWS or Azure, and by building and running, you can check the operation of the firmware update. We have also developed the QE for OTA, a development assistance tool that enables easy trial of over-the-air (OTA) firmware updates, to support these settings.

Realizing firmware updates via the internet is very difficult, but the efforts of AWS and Microsoft have greatly lowered the threshold. However, there are still many challenges in the implementation on the microcontroller side, and we are aiming to solve these problems while exploring the optimal implementation through discussions with many customers. In particular, the QE for OTA tool has solved many challenges related to OTA, such as providing a method for automatically managing multiple devices regarding mass production and becoming a standout solution for Renesas. As the industry moves towards greater standardization, the barriers to OTA will inevitably lower. Yet, by being ahead of the curve and embracing these changes early on, we are establishing a distinct competitive edge over others. We highly recommend users explore the potential of the RX MCU family for internet-based firmware updates.