ARM Announces “mbed” IoT Device Platform
Following up on the incredible success of smartphones, tablets, and other handheld-size mobile devices, device manufacturers have been toying with ideas on what comes next. A common theme across many of these ideas has been the Internet of Things concept, which sees microcontrollers and Internet connectivity embedded into increasingly small or otherwise unusual devices where network connectivity wasn’t present before. From a technology perspective this is an exercise in seeing what you can do with products and environments where everything is networked, and meanwhile from a market perspective this is about driving the next wave of market growth for chip and device manufacturers.
But while the IoT concept seems simple on the surface – just put a chip in everything – what device makers have found out is that they have yet to discover what a good implementation would look like and what parts they need to build it. For that reason we have seen numerous companies toy with the IoT concept over the last year, launching new hardware components such as Intel’s Edison and the ARM Cortex-M7, or software components like MediaTek’s LinkIt. Which brings us to today’s news from ARM and their latest IoT project.
Being announced today at ARM TechCon 2014, ARM is unveiling their “mbed” (all lower case) IoT Device Platform, which is ARM’s new software platform for IoT devices and the servers feeding them. mbed is a surprisingly blunt project from ARM, who thanks to the success of their platform and their work over the years on their Cortex-M series of CPUs already has most of the hardware in place. Confident in their hardware, ARM is seeking to tackle what they see as the current issue holding IoT back: software.
The mbed platform is a combination of client and server software, consisting of a lightweight OS for client devices – mbed OS – and the matching server software to interact with it, the mbed Device Server. Like ARM’s hardware IP, both mbed OS and mbed Device Server are intended to be building blocks for finished products. Specifically, the idea being that developers will take the mbed components and build the application logic they need on top of a solid software foundation provided by ARM. By providing the OS and Device Server with the necessary support for various networking, wireless, and security standards built in, then as ARM’s thinking goes IoT software development will be dramatically simplified as ARM will have taken care of the hard parts, leaving developers free to focus on the application logic itself, reducing development costs and the time to market
For the mbed OS component, the OS is a lightweight, low-power kit OS designed to run on Cortex-M processors. ARM for their part will build in the necessary hardware features and even some common libraries, with a focus on providing building blocks for developers looking to design finished products. At this point ARM’s announcement predates the software by a bit, so mbed OS is still under development with early access for partners in this quarter with a shipping version in 2015.
Meanwhile the mbed Device Server is essentially a software bridge designed to allow the mbed OS devices to interact with web services. Unlike the stand-alone OS, Device Server is intended to be integrated into larger (cloud) server setups, with Device Server providing the means for the easy interaction with and management of mbed OS clients. As ARM likes to note the Device Server is based around open standards, with the idea being that they’re providing another kit (this time for the server) to give developers a place to start rather than creating a closed ecosystem around the mbed OS and Device Server components. Finally, unlike the OS, the Device Server is already running and available to developers.
In the short term mbed is all about kickstarting the IoT market, which is a big reason as to why ARM is giving away large chunks of it for free. The mbed OS is entirely free, and the Device Server is free for development. Only production setups running Device Server would need to pay a license fee. ARM wants to get mbed spread as widely as possible, and with their strong position in the hardware market they are more than willing to give away the software if it will spur on IoT hardware sales. Or as they see it, the time it takes to develop good software is currently gating the sales of products incorporating their IoT-focused hardware.
Looking at the bigger picture, while ARM has the right idea overall they are not the only company pursuing this software/toolkit market. Intel’s Edison platform ships with its own OS, and MediaTek’s LinkIt platform also includes its own LinkIt OS for many of the same purposes. However in all of these cases ARM and other companies can only provide the building blocks; they still must rely on developers to put together the killer app that will jumpstart the market. Largely for this reason the potential success for the IoT market is out of the hands of ARM and other hardware IP providers, but by providing a solid set of building blocks and working with a very large set of partners such as Marvell and Freescale, they are doing what they can to make that success happen.