
Bear with me because with this week’s startup profile we are going deep into the weed of IoT enabling technology.
Runtime, a company that is building an operating system for microcontrollers, has raised $7.5 million in first round funding from NEA, Foundation Capital and Danhua Capital.
These microcontroller operating systems handle the basics of how a chip implements security, communicates with networking chips and handles higher level software. Runtime’s innovation could make it much faster and cheaper for product companies to build and manage chips for connected devices.
Let’s dig in. The OSes for lower-level Microcontroller Units (MCUs) used in sensors, wearables and other battery-powered devices are known as real-time operating systems because they handle data coming at them as it comes in. There are dozens of Realtime Operating Systems (RTOSes), which makes building IoT devices complicated. That’s a problem companies like ARM have tried to solve by creating a unified RTOS for IoT, but for now most companies use a proprietary variant based on the type of chip they buy, or they use FreeRTOS, an open source project.
So the market is still fragmented which means if Whirlpool wants to build a connected appliance, it has to buy the MCU from a vendor, buy the connectivity radio and hire a few engineers to put everything together. If Whirlpool switches the underlying chip in later products it will still need the original expertise on the original chip’s RTOS to ensure its older machines stay updated.
Runtime offers a twist on this scenario. It is following in the footsteps of FreeRTOS and ARM with Apache Mynewt, an open source OS. But the aim is to provide more than the bare-bones elements of an RTOS by adding things like software to connect the MCU to a radio, security elements and the ability to run file systems.
The idea was to build a modular, fully functioning OS for microcontrollers that also has the benefit of breaking up elements such as secure boot loaders or radio connectivity. That makes it highly configurable without requiring a lot of the extra engineering time. It also means the component parts can spread more widely, offering a new source of business for Runtime.
Runtime has built a cloud that can manage devices that use the Mynewt OS, which is how it hopes to make its money. Companies can hire Runtime for consulting, support and also cloud management for Mynewt devices. CEO James Pace says the company has $1 million in bookings and between 5 million and 10 million devices in its cloud today.
Pace has been thinking about this problem for years as a member of the team that started Silver Springs Networks. In 2015 he formed Runtime to build Mynewt and help lower the complexity associated with building connected devices. With a more configurable and fully functioning OS, designers can build exactly the features they need into a MCU and save room on the chip for more application-specific needs.
For example, Pace says one customer purchased an MCU from a vendor where 90% of the available memory was taken up by the vendor’s own code. By putting Mynewt on the chip instead, the vendor was able to claw back 30% more space for its own software. This is a big deal for companies trying to create more customizable hardware.
Better software on the chip can increase battery life, enable special functions or just make things faster. And with the ability to use the same underlying code even if you buy chips from another vendor, this feels like a good solution for companies wanting to build their own connected devices.
However, there is plenty of competition, both from chip vendors who have their own RTOSes and also from module vendors such as Particle and Electric Imp, which are solving the same problem but in different ways. My hunch is the big enterprises that want to build connectivity into their existing product lines may veer toward modules, while companies trying to build hundreds of millions of connected devices will look closely at something like Mynewt.
Mynewt is under Apache Foundation, Zephyr is a Linux Foundation project.
Oh man, I even called it Apache Mynewt. Fixed. Thank you.