Rapid prototyping in the electronics sector is an engineering philosophy which has been around for about a decade, but which has come more squarely into the public eye over the last couple of years.
So what is rapid prototyping? It's an approach that focuses not on building a full, polished product immediately. Rather, it uses existing hardware and software, often off the shelf, to develop a working version of a product that can then be tested in the field. Once this product is available, it can quickly evolve with feedback, allowing an incremental approach to the 'final' design. Prototyping, in itself, isn't a new concept; every product goes through a number of stages of completeness. In the past, however, many embedded systems were built from the ground up each time. Engineers started with a schematic of the hardware and then created a PCB design for the full system. Having done that, the PCB was manufactured, populated and debugged, after which software development could start. But the downside of this approach was the need to get close to the final hardware before practical software development could start. Rapid prototyping not only brings designers more flexibility, it can also help to accelerate time to market and encourage the reuse of existing software – important as software becomes the dominant factor in embedded systems design. But perhaps the biggest benefit of rapid prototyping is that it encourages the design engineer to get something into the hands of their software developers as quickly as possible. When that happens, a prototype product will, in turn, get into the hands of potential users more quickly. Perhaps the device with the highest public profile is the Raspberry Pi, created initially with teaching of programming in mind. In contrast, the other important option is Arduino – hugely popular in the Maker community and with people that are not natural programmers. Growing fast are platforms such as BeagleBoard and BeagleBone. ARM has also been developing a rapid prototyping solution for some years and launched the approach as mbed – and this has come some way since its launch in 2009. Some 70,000 developers around the world now use mbed as a starting point for their next product. More than 30 official mbed boards are available and there are more than 9000 published projects. The website – mbed.org – provides a comprehensive database of hardware development kits, reusable software components, reference applications, documentation and development tools. While many rapid prototyping platforms are focused on microcontrollers, they remain very powerful tools. Many rapid prototyping systems growing in popularity have also been created around low cost ARM based microprocessors (MPUs). The Raspberry Pi, for example, features an SoC from Broadcom which includes an ARM11 based core. The MCU based Arduino board is available with Cortex-M0+ and Cortex-M3 based devices. But approaches such as BeagleBoard now focus on powerful MPUs and it is highly likely that more such devices will be seen in the future. BeagleBoard takes a higher level approach, using a Cortex-A8 based device to support more complex compute tasks. Cortex-A series processors are found in a range of mobile computing devices and smartphones. In common with the other approaches, BeagleBoard is also designed to take advantage of open source software. Which rapid prototyping approach should you consider? It depends on your software and product requirements. If connectivity and a small footprint are important parameters, then you might look at the ElectricImp. If you need a full Linux environment, with good audio/video capabilities, you might be looking at the Raspberry Pi. Arduino, meanwhile, offers incredible simplicity and productivity when it comes to the programming environment, together with a huge range of 'shields' to expand the hardware capabilities. One of the benefits of rapid prototyping is flexibility; unlike the early days, where you had to start from the position of almost having a finished product, different concepts can be tested. This also means that options can be explored for longer than might have been and software can continue to be developed. Today, software is king; providing hardware is only a small part of the task. And if you take a rapid prototyping approach using one of the available platforms, how easy is it for you to convert your prototype into a production ready design? It's increasingly easy, because all rapid prototyping worlds have this goal firmly in their sights. An example is Raspberry Pi, which is now available in an embedded compute module that slots into a standard DDR2 SODIMM connector. While earlier rapid prototyping platforms were focused, future offerings will move to embrace greater levels of abstraction, not only looking at device hardware and software, but also at the server/cloud/application infrastructure. Their goal will be to make connectivity a trivial task; something which is far from easy today. ARM has recognised this trend, particularly the challenges involved in designing products for the Internet of Things (IoT). Its solution is a new software platform and free operating system to simplify and speed up the creation and deployment of such products. Today, IoT devices exist largely in isolation. The ARM mbed IoT Device Platform will solve this by providing a common communication and management toolkit that can be used for a wide variety of purposes. This Platform is expected to speed significantly the large scale deployment of a new breed of both IoT devices and cloud services. The Platform has been built around open standards, bringing Internet protocols, security and standards based manageability into one integrated solution optimised for energy and cost constrained devices. It is supported by the established and expanding mbed hardware and software ecosystem that will provide common building blocks for IoT devices and services. This new platform will accelerate the growth of the IoT by enabling innovators to focus on value add features and differentiation. There are two components to the Platform: mbed OS, a free operating system for use with Cortex-M based devices; and the mbed Device Server, a software product that provides the server side technologies required to connect and manage devices securely. Sitting on the cloud side, mbed Device Server will provide a bridge between the protocols designed for use on IoT devices and the APIs used by web developers. In this way, the devices which will provide 'little data' can be integrated more easily into cloud frameworks which employ 'big data' analytics on aggregated information. To summarise, the rapid prototyping systems discussed here have some common themes: they are built to help traditional developers and the new class of makers alike; they offer lots of expandability, so the platform can be readily built into a larger product prototype; and they focus on making connectivity as easy as possible – with some, such as mbed and electricImp, making that a fundamental part of the offering. Last, but not least, the philosophy is to kick start software development by helping a designer to bring together the essential aspects of a product or a system as quickly as possible. Rapid prototyping is very much here to stay! ARM ARM is at the heart of the world's most advanced digital products. Its technology enables the creation of new markets and transformation of industries and society. It designs scalable, energy efficient-processors and related technologies to deliver the intelligence in applications ranging from sensors to servers, including smartphones, tablets, enterprise infrastructure and the Internet of Things. Its innovative technology is licensed by ARM Partners, who have shipped more than 50 billion SoCs containing its IP since the company began in 1990. Together with its Connected Community, ARM is breaking down barriers to innovation for developers, designers and engineers, ensuring a fast, reliable route to market for leading electronics companies. Richard York is vice president of embedded sector marketing for ARM.