Table of Contents
Microcontrollers are a solution looking for a problem, and that solution is getting impressive; lots of performance, lots of peripherals, and a price-point that opens them up to a host of new opportunities. However, the problem in exploiting these opportunities is exactly that; what is the problem?
The industry has built excellent tools for embedded engineers to productise microcontroller designs, once the desired specification is known. But when the task is to prove a concept or define a specification, even for experienced engineers the risks and timescales often don't add up. The result is that ideas don't get tried, there is little iteration or design space exploration, the final design is also the prototype, or the specification is overly cautious. This has the potential to be a real barrier to adoption.
To help address this need, mbed provides a platform for microcontroller hardware, tools, libraries and resources designed to enable rapid prototyping with microcontrollers.
One goal for mbed is to get a new user running their first program as soon as possible, to build confidence and trust in the hardware and software toolchain. The mbed tools have applied some novel technology to achieve this, and the results speak for themselves; you can get started in 60 seconds. This achievement means there is little excuse left not to experiment.
The results are achieved through two innovations; a USB disk based programmer on the hardware, and compiler tools as a cloud-computing based web-application that runs in a web browser. The IDE is simple but functional, allowing it to step out of the way and do what it is designed for; edit and compile code. With everything pre-configured and no drivers or software to install, it will work out-of-the-box, on any platform; PC, Mac or Linux. This instant no-hassle access gives great confidence in the tools, enabling users to pick them up whenever they need to use or demo them.
The architecture and implementation of the hardware and software components of mbed provide a unique advantage when it comes to prototyping. The mbed Microcontroller hardware packages a microcontroller, support components and smart USB interface in a practical 40-pin 0.1" pitch DIP form-factor, ideal for experimenting on solderless breadboard, stripboard and through-hole PCBs. To support the exposed interfaces, an mbed C/C++ library provides high-level interfaces to microcontroller peripherals, enabling a clean, compact, API-driven approach to coding. The combination gives immediate connectivity to peripherals and modules for prototyping and iteration of microcontroller-based system designs, providing developers with the freedom to be more innovative and more productive.
Rather than simply providing examples, mbed focuses on reusable library functionality, with clear interfaces and solid implementations. The core mbed library supports the main peripherals, and the libraries already contributed by the mbed design community include USB, TCP/IP, and HTTP support. It is also possible to add third-party and open-source stacks.
The focus on rapid prototyping gives mbed a broad appeal. For engineers new to embedded applications, mbed will enable them to experiment and test product ideas for the first time. For experienced engineers, mbed provides a way to be more productive in the proof-of-concept stages of development. And for marketing, distributors and application engineers, mbed provides a consistent platform for demonstration, evaluation and support of microcontrollers. As a result, the mbed tools will help a diverse audience exploit the opportunities presented by advanced microcontrollers.
The mbed project was initiated by two ARM employees, and later became an official research project within ARM. It is now run and maintained by ARM to help MCU Partners provide their customers with the best way to prototype designs using their microcontrollers.
NXP are a lead partner on the mbed project, supporting it from early on in the project and helping to launch the first official mbed solution, based on the NXP LPC1768 Cortex-M3 MCU.
We've learned that the best way to achieve results is to work in partnership. If you have ideas of how you could work with us to help achieve mbed's goals, or could make use of the technologies we have developed, please email us to discuss it further: