According to some projections, there will be tens of billions of connected devices by 2020. This so-called "Internet of Things" (IoT) may involve simple devices, but software development won't be simple without a standards-based development platform. And that's why the ARM® mbed™ IoT Device Platform made its first appearance at ARM TechCon on Oct. 1, 2014. In his keynote speech, ARM CTO Mike Muller (right) described the new platform and the reasons behind it. The platform includes mbed OS , a free operating system for ARM Cortex®-M-based devices, and mbed Device Server , which provides the needed server-side technologies to connect and manage IoT devices. The new platform leverages and extends the existing mbed community , which includes more than 70,000 developers around the world. In a humorous note, Muller traced his interest in IoT back to 2001, when he came up with an idea for an Internet-enabled toaster that printed a weather forecast on toast. Another early idea was a coffee maker that could automatically re-order coffee capsules. While these "little data" hypothetical devices only needed one or two bits of information over an Internet link, obtaining this information and pushing it up into the cloud "turned out to be a quite difficult problem," Muller said. Can Art Students Design Electronics? The mbed community, meanwhile, pre-dates the IoT era as well. Muller noted that it started in 2006 as a project aimed at making design easy for non-technical people. In fact, it involved a collaboration with an art college, where students with no programming or electronics background were able to add electronics to some of their projects. Fast forward to today and mbed has extended to thousands of developers and thousands of projects, with over one million project builds last year. So how can mbed help launch the IoT era? Today, IoT devices exist largely in isolation, and devices may not be interoperable with cloud services. Software development for supposedly "simple" devices can be surprisingly complex, and that doesn't bode well for cheap, functional devices that meet time-to-market demands. The mbed IoT Device Platform will address several concerns, according to Muller. One is productivity, which is important given the complex systems that many IoT devices will work with. Another critical area is security. "If we are going to deploy billions of devices, some of which are safety and health critical, we need to address the security issue. That can only be done if it's architected from the very beginning," Muller said. Another issue is connectivity. Muller observed that there are many connectivity standards today, but he predicted that, in time, the world will coalesce around a small number of standards. Management is also a concern, given the need to handle things like firmware updates. Finally, energy efficiency is critical, given that many IoT devices will be battery powered. Free OS Speeds Product Development The mbed OS is billed as a "modern, full-stack operating system" that is designed specifically for ARM Cortex-M-based microcontrollers. It provides security, communications, and device management features to enable the production of energy-efficient IoT devices. It will be available to mbed partners in Q4 2014 for early deployment, with the first production devices due in 2015. Muller noted that mbed OS is not a real-time operating system (RTOS). But perhaps that is not always needed. According to Muller, RTOSes arose in the 1980s and 1990s because processing was a scarce resource. People had to share limited resources that were allocated to different tasks. But today, processing is not a scarce resource, and the real concerns are productivity and energy efficiency, he said. The mbed OS, however, is an event-driven OS. This means the OS can find events that require the same power domain and coalesce them together, Muller said. Thus, the OS offers power-aware scheduling. The OS also provides device data management. And it offers "complete security" architected from the very beginning, Muller said. Open standards are an important part of the mbed IoT Device Platform, and the OS supports key standards such as Bluetooth Smart, 2G, 3G, LTE, CDMA, Thread, Wi-Fi, and 802.15.4/6LoWPAN along with TLS/DTLS, CoPA, HTTP, MqTT, and Lightweight M2M. Muller noted that the early Internet "did not take off until it disaggregated into a set of manageable open standards." He thinks the same thing will happen in IoT when abstraction layers are defined and standards are published. Into the Clouds So why develop the mbed Device Server? "It's the critical bit that is going to bridge devices to the cloud," Muller said. "You need to address both sides of that problem. You can't do just one side." Operating somewhat like a web server, the mbed Device Server handles the connections from IoT devices. It supports the protocols, behaviors, and security requirements of IoT devices, making them accessible through REST (representational state transfer) APIs to enterprise software, web applications, and cloud stacks. Built around open standards, the server simplifies the integration of "little data" IoT devices into cloud frameworks that deploy "big data" analytics. The mbed Device Server is free for development work, but you need to buy a license to use it commercially, Muller noted. The server is available now. Meanwhile, the existing mbed partner ecosystem has been expanded with silicon, module, OEM, system integrator, and cloud partners. The new development platform "allows us to make IoT scale and have a good future," Muller concluded. "I think what's exciting about IoT is how it will transform business models, allow people to build new products, and change the way people actually do things." Richard Goering Related Blog Posts - What Is IoT? What Isn't It? - IoT Focus: Wrestling With the Design, Time to Market, and Cost Challenges of IoT - Archived Webinar: Cadence, ARM Forge Design Flow for Mixed Signal Internet of Things (IoT) SoCs
↧