The Android operating system is becoming a major player in embedded systems – but does developer Google even care?
One feature of a disruptive technology is that it should work its magic in ways even its creators did not intend. So much could be said about the increasing use of Android, the Google-backed open source operating system (OS), in embedded systems.
Even as Android displaces Microsoft Windows and other proprietary OSs in applications that run across the embedded market from TVs and set-top boxes to military communications via medical and industrial, Google remains profoundly disinterested. Such players that influence its thinking about the development of any dessert-themed Android release remain Tier 1 players in mobile handsets and tablets. Everything else is a sideshow.
Nevertheless Android emerged at the right time for embedded designs, or, if you prefer, it is benefiting from a self-fulfilling process. Even designers of the driest industrial control systems today acknowledge that they need to offer richer, more responsive touchscreen user interfaces (UIs). That, of course, is largely because our expectations have been raised by devices like the iPhone and now its Android-based rivals.
Beyond that, everything is being connected. Not that long ago, the typical embedded system was something that was designed to be left well alone. The technology within it was meant to last, often for more than a decade, and was certified to high standards in safety, reliability and security. Today, almost all are connected to a network – public or private – and issues arise about how to communicate with them and load extra 'apps' to expand their functionality.
Then, there is cost. Android is open source – there is no licence fee for the core technology and you can drill right down into the source code and customise it according to your end application. Like Linux, there will be some costs in such tailoring, but with much of the multimedia, UI and other aspects covered in greater detail by Android, the price for doing all that can be much lower.
Certainly, embedded players have been looking at comparisons with the world of handsets and tablets. 'We talked to a company that has worked on smartphone designs and they said that where you used to be looking at a project cost of $12m-$15m, now with Android, it's $1-$2m,' says Shay Benchorin, director of Marketing and Strategic Alliances for the Embedded division of Mentor Graphics. 'Android has cut the cost of building a phone by 90 per cent. People want to take those economies into other markets. Making products at a tenth of the price – it's a no brainer.'
The power of Android
On top of that, costs are tumbling for some of the technologies and infrastructure that make it easier to use Android within a conservative market like embedded systems. One of the foremost among those is multicore processors. However, another, perhaps even more significant one is people.
'We also talked to a defence contractor and they started asking about our Android product,' Benchorin recalls. 'Given the security issues, that did initially seem surprising. But when I asked why, he said, 'Oh, it's simple. If I put an ad in the newspaper or online looking for a specialist in some particular RTOS [real-time OS], I get two or three resumés and they're usually not that good. If I advertise for an Android specialist, I get 300, and can pick and choose between some really good candidates.'
'What Google's done is put Android out there in a way that it's seeded all the supporting infrastructure – and not just the apps developers, but people with knowledge that goes right into the source code – to grow very quickly. And something else that has happened is that you now have this huge, and growing, resource of specialists in low-cost markets working with the technology, innovating with it and keeping it robust.'
Yet challenges do remain. And they are significant, but ways to overcome them also seem to be coming quickly into focus.
'The customisation ramp gets very steep very fast, so you do really have to plan what you're doing and before that have done a pretty good assessment as to whether Android is the way you want to go,' says Chris Buerger, senior director in Product Management at Wind River, the embedded software specialist now owned by Intel.
'I can give you one concrete example in automotive. If you go with Android, you have to separate off the safety and the security side. Now there is a technological skill needed to do that. Part of it comes down to the API [the application programme interface, which sets the terms for communication between different software] and you have to be clever there. The great thing with Android is that you can do that. You need the professional partners though to get you through that process, particularly where you are working in areas that involve the safety-critical, security and reliability.'
Benchorin agrees with this assessment but goes on to say that this kind of partitioning is now being helped by the shift to multicore processing.
'The first thing I'd say is that multicore is becoming cheap. In embedded systems, you have a lot of applications that are very defined and only need lower-end performance, so a device with 500MHz or 600MHz cores will suit them – and processors like that can be cheaper than higher-end single core devices now,' he notes.
'Once you go multicore you can load Android on one core and the RTOS – or if you prefer, Linux with real-time extensions – on the other. And then you use something like MCAPI [the API administered by the Multicore Association] to limit the communication between them as appropriate.
'What that means, for example, is that you can even have the RTOS core monitoring the health of the Android core. If it sees something, it can bring down the Android core and restart it or run an upgrade on it or whatever. But during all that time the critical processes on the RTOS core continue to run. So, if you have, say, a medical or an automotive application, you're not allowing the core functions to be affected.'
However, there is also the question of Android being a moveable feast, subject to many new releases (and those releases in turn subject to numerous patches) over comparatively short periods of time. Embedded technologies are meant to be stable and long-lasting. Google's recent decision to delay the release of source code for the Honeycomb tablet-optimised edition of Android also left some developers wondering just how much they should rely on getting access to the core technology.
'I can see how the Honeycomb thing might have influenced some people thinking of moving to Android,' Buerger says, 'but they have been open about it with main technology partners and we're one of those.'
Relying on core technology
Benchorin argues that the real key is partitioning the system on the cores as appropriate. 'Our focus now with Android is on the UI and the apps,' he says. 'We're no longer trying to chase Google on the optimisations because they are doing a brilliant job with the core technology. There is now that huge developer base out there that we would rather work with than compete with.
'But, looking at the whole picture, if multicore allows you to stick with tried and trusted technology for critical areas and then Android delivers a new fresh, front end with various other features that you can strip out or add in, go with the combination.'
Nevertheless, when companies do switch,'it appears that there is typically a trigger above and beyond a simple technological shift.
'With our military customers, we found that a lot became interested in Android because the Department of Defense was pushing them more towards COTS [commercial-off-the-shelf] technologies, and it fit that model really well,' says Buerger. 'Then with automotive, we found that some customers started because they realised that they needed to bring the kind of audio and multimedia experiences people were having on their mobile devices inside the car. So, again, Android is providing a foundation for that.'
There is still plenty to happen with Android. It is less than four years since the first open source version was unveiled and while it is now, with Honeycomb, at the 3.0 stage, the need for further refinement via the impending Ice Cream Sandwich has been recognised. Nor is there any common strategy for success in embedded – indeed, while Wind River is promoting a full-service offering, Mentor has, as already noted, decided to put greater emphasis on UIs that can be put on top of Android, giving customers their own look.
And who's right? Well, they both could be. The only certainty is that whether Google cares or not, Android in embedded is here to stay. *