To combat fragmentation, ARM built a new type of OS for the internet of things

ARM may be a chip design firm, but like its rival Intel, it also spends a lot of time and money on building software. And to help cement its growing prominence in the world of battery-powered connected devices, ARM has designed a new operating system by adding more capabilities to its mBed software development platform.

Called mbed OS, the new operating system is designed to run on the lower-level M-class of microcontrollers that generally ran one of many customized real-time operating systems, or RTOSes. These RTOSes were originally developed for the embedded world and were proprietary and not very flexible. But they were lightweight and could operate on tiny microcontrollers. As more developers flock to the internet of things, though, having a bunch of customized RTOSes represents a brake on innovation — which is why [company]ARM[/company] decided to build mbed OS for inside devices like the Misfit Shine pictured above.

The OS consists of a device-side OS that runs on ARM’s M-class designs and a server side piece of software called mbed Device Server that will run in virtualized environments and other types of chips. The OS design means that constrained and relatively “dumb” devices can communicate back to smarter ones running higher power OSes.

The mbed OS is free, will be available to ARM’s partners and developers in the fourth quarter and can be used on products coming out in 2015. One could even upgrade existing ARM M-class controllers with the new OS if the device can handle it. The OS contains security, communication and device management features and supports Wi-Fi, Bluetooth, 6LoWPAN and Thread, but not Z-wave or Zigbee. It can support both IPv4 and IPv6 as well.

It only needs 32 kb to 64 kb of RAM and 256 kb of flash memory to run, which means it’s lightweight enough for most small devices. The array of protocols it supports are on the slide below.

Screen Shot 2014-10-01 at 10.04.12 AM

As a platform, this is fairly impressive. ARM is really making an effort to branch out into new areas as part of its internet of things strategy. It was once content to offer the chip designs for the application processors inside cell phones and other consumer devices. But as it has moved into other markets, such as servers, and placed a greater emphasis on its microcontrollers, it has had to use software platforms as a way to compensate for the silicon tweaks that its chip licensees can make to its designs to ensure that applications will run on ARM-based silicon no matter which firm is producing that silicon.

So with mbed OS, ARM is trying to build a bridge between the full-featured operating systems like Android, iOS, Linux, etc. that require more space and power, and the myriad lightweight operating systems that overwhelm the embedded world. I look forward to hearing what developers think of it as it rolls out to them.