I'm excited to announce today that Arm is expanding the Mbed family with a brand-new operating system, Arm Mbed Linux OS.
One of the most rewarding aspects of product management is when you solve pervasive problems that you've experienced first-hand. In my case, I've been creating embedded products for around 25 years. Today many of these products would be described as IoT. Throughout this time, some common themes and challenges have emerged and recurred.
- Products were usually left unattended. We had to provide a cost-effective way to service products that were either numerous in quantity or installed in remote or lights-out locations.
- Many products handled sensitive data or controlled high-value assets (including spacecraft). Security (both data protection and process integrity) has long been an essential requirement.
- We often had "aggressive" deadlines, and frequently, teams were working at or above capacity. Make versus buy was always frustrating because despite the appetite to procure platform layers that weren’t essential to our “core business”, this would usually have meant compromising the product in ways we couldn’t accept.
Sometimes because of, and often despite these challenges, a high proportion of our engineering time was consumed with creating a platform that met our needs. We had to:
- Find a suitable commercial or OSS operating system and determine a long-term support strategy for products that were expected to remain in service for longer than 3-5 years.
- Strip and harden the OS back to the minimum required to service the target application while minimising the footprint and attack surface.
- Implement a secure update mechanism and often remote device management with diagnostic capabilities. Integrating and testing compatibility with off-device management services was often time-consuming.
The platform provided essential support for our application, but the platform was invisible if we did our job right. Once we had developed this foundation, we had to maintain it, often for years after a newer model had superseded the product. Although essential, this burden became an enduring distraction that often reduced the resource available to work on new products. Put simply, each team reinvented the wheel, and it didn't make commercial sense.
It is with this backdrop that I was delighted to join Arm's Mbed team to solve these problems in a scalable and efficient way. My goal has been to extend the benefits of Mbed OS to IoT products that use Cortex-A silicon. We're delivering this "sibling" OS using the Linux kernel and with tools and recipes from the Yocto Project. This new OS will live alongside Mbed OS and is called the Mbed Linux OS.
At a time when the price-performance ratio of Cortex-A SoCs continues to improve, it's possible to deploy ever more advanced processing within IoT devices. This can enable products to handle complex workloads more autonomously, improving availability and placing fewer demands on connectivity to the cloud or edge gateway. Mbed Linux OS is designed for these IoT devices and is deeply integrated with the Pelion IoT Platform to simplify lifecycle management.
The mission of the Mbed Linux OS team is to provide and support the essential layers needed to build amazing IoT products, so OEMs are liberated to focus exclusively on adding their unique value. We want you to build products quickly and minimise the ongoing support and maintenance burden for products you’ve already shipped.
A few of the highlights of what we have planned are:
- Secure, signed boot and signed updates to protect against unauthorised changes. Of course, we're following the principles laid down by Arm's Platform Security Architecture and taking full advantage of the latest security features in the newest hardware.
- Applications can be deployed in OCI compliant containers, helping to protect from compromised applications and enabling developers to use a modern developer workflow.
- Integration with Pelion for device provisioning, connectivity and updates. To allow different development teams to deliver updates more efficiently, you can update the OS firmware and individual applications independently.
- The option of full, commercial support for customers who need the reassurance of a firm SLA and platform longevity.
- Tools to help you get prototyping and demoing quickly, including support for popular development boards and production ready modules. Mbed Linux will help you to utilise the best hardware that’s suited to your application today and make it easier to migrate to even faster devices when these become available.
- Supported by the Pelion Device Management Application, to simplify in-field provisioning and eradicate the need for legacy serial connections for initial device configuration.
- Both the Mbed Linux OS and our test suites will be open source, helping you to automate product testing in a modern continuous integration pipeline.
We're pre-announcing Mbed Linux OS today. If you're eager to get involved, please register your interest at https://os.mbed.com/linux-os. We'll release a developer preview later in the year and expect to release the first public version in spring 2019.