When you think of a robot what is the image you have in your head? Probably a Terminator or a BB-8. What do these robots have in common? They both are multipurpose machines. They can fire guns as well as follow and protect you. They can pick up a wrench or interact with you.
But if you look at robots today, there is really not a single multipurpose robot in existence. Many of them are limited by there mechanics. Robots like the roomba will never do anything more than vaccum the floor, because it has no hands to do anything else. But more complex robots like Asimo, which could be multipurpose, are limited by software. Getting a beer is hard. So hard that many in the industry actively avoid it.
Nearly any robot around today is designed to do only one thing, and maybe variation thereof. Baxter does pick and place. Jibo is an interface. Roomba vacuums floors. BigDog carries stuff behind soldiers. Anytime you see any of these robots doing anything more than this, it is either in a research lab or a canned puppet.
But all of this is only due to software. The difficulty in making robots multitools is almost entirely in the software. Roomba could be a security guard if you just added a webcam, but it is not smart enough to navigate a house with intent.
Now let me draw a comparison to another very basic device which, due to software, can now read facial expressions and even move in some cases. The Smartphone. The smartphone is just a computer with a few sensors and vibrating motor. It was designed to surf the web and make phone calls. That is pretty much it. Since those jobs overlapped it was basically a single function device.
But with software the smartphone now does so much more. It entertains, interacts, and even moves. Things that were not part of its design.
This was made possible because the smartphone is inherently modifiable beyond its core functions. Its screen allows completely different interface layouts. Its sensors provide enough information to operate in a 3D world. And its portability allows it to be taken into different environments.
There is a not a robot that does what the smartphone did. There is not a robot that has core functionality but can become so much more. The closest stab at it so far is Pepper, but only because she has an app store.
Pepper is mobile and has a screen on here chest. Though she has arms they are essentially for expression. This basically puts Pepper into a the class of "smartphone on a stand." It is a new more interact version of computing but not much more because she can't interact with the physical world in a legitimate way.
The smartphone was so successful because it was vanilla. You could eat it plane but other people could add chocolate syrup and sprinkles. (sorry for the analogy in the analogy) There is not a vanilla robot. Such a machine would have to have the core capabilities of being mobile, and being able to interact with the world in physical way, as well and an expandable interface method, like speech.
When such a robot comes into existence then software developers will be able to run with it. Build applications that use the robots core capabilities to do more.
Right now the industry wants to make a custom machine for a specific purpose. What they should be doing is creating a generic machine and creating custom software for a specific purpose. A vanilla robot that you can add sprinkled to.