The robots are coming. Advances in robotic production and artificial intelligence are moving humanity progressively closer to the sentient beings of science fiction lore. Google, the giant corporation in this scenario, has bought 12 emerging robotics companies in the past year, secreting the technology away to experiment with in a lab somewhere in the depths of Googleplex.

Google’s quest to create a real-life Android may sound a bit too close to the dystopian beginnings of “The Matrix,” “The Terminator” or “I, Robot” for comfort, but on the other end of the spectrum is an open-source robotics movement aiming to bring cheap, accessible robotic software and hardware to the world.

The Poppy Project is an open-source humanoid platform with child-sized proportions, designed by the Bordeaux, France-based Flowers Laboratory, in conjunction with the  Institute for Research in Computer Science and Automation and ENSTA ParisTech. What began as a research project to study human development and motor skills evolved into Poppy: a humanoid platform consisting of an open-source Python library and framework along with 3D-printed modular hardware, designed to provide an affordable and hackable robot for science, education and art.

(Related: An educational robot programming language)

“Open source both for the skeleton and software is especially attractive because it’s made so that people can hack it, transform it, improve it,” said Pierre-Yves Oudeyer, research director and founder of the Flowers Lab. “There is no entry barrier to get your hands on these technologies.”

“We created the Poppy humanoid robot initially to study the properties of the legs, of the vertical column in balancing and dynamic walking, and then very quickly we also decided to make this robot open source,” Oudeyer said. “We wanted to share with other labs around the world in a community of science, so that not only could other labs reproduce what we’re doing, but they can use the tools we’ve developed for their own research projects so they don’t need to reinvent the wheel.”

Prototype Poppy
The Poppy Project began three years ago as a product of the 3D printing boom. Oudeyer explained that traditional manufacturing techniques made the creation and, more importantly, the continued innovation of a humanoid robot prohibitively costly and time-intensive, but the arrival of 3D printing allowed the members of the FLOWERS (FLOWing Epigenetic Robots and Systems) team to print, assemble and improve their robot design at a rapid pace.

Poppy’s hardware, designed primarily by FLOWERS team member and Ph.D. student Matthieu Lapeyre, allows for assembly in two to three days, with the sum of its parts costing about US$10,000.

Poppy is built for rich physical interaction. Behind the mechanisms controlling Poppy’s leg, hand, arm and torso movements, wide-angle cameras and LCD screen is a cross-platform library written in Python called PyPot.

The PyPot framework, hosted on GitHub, works on Linux, Mac OS and Windows to enable simple development, deployment and scripting governing custom-built robots. PyPot defines low-level motor commands as well as higher-level primitive behaviors such as its gait. The framework then combines primitives and commands to create complex behaviors.

“The main idea was to build something that was as easy as can be, something really, really simple,” said Pierre Rouanet, a FLOWERS team research engineer and the programmer behind PyPot. “The robot is not meant to be used solely be computer scientists, but other people who are not as expert developers.”

Rouanet continues to work on PyPot, improving Poppy’s control over balance, walking and other behaviors, but hopes other developers will augment and reimagine what the open-source software is capable of as a universal platform for powering robots.

“I would like to see the software be forked and used in many, many different directions,” he said. “As we’ve tried to make it very generic, it could be really nice for people to use it to write different behavior for the robot. That behavior could be combined and reused by other people, by other labs. I’m sure they could do many thinks we haven’t even thought about.”

Building with Lego bricks
Poppy is a platform for experimentation, not only in terms of computer science, but also as part of a growing community of programmers, institutions and artists.

One space in which Poppy has taken hold is education. A number of engineering schools and universities (such as French technical high school Lycée Raoul Follereau, and La Cité des Sciences et de l’Industrie) have reached out about using Poppy as a teaching tool to show the integration of mechanical engineering, computer science and electronics in a single machine. The Flowers Lab is also working to make Poppy programmable with visual programming languages and environments such as Scratch, to teach coding to students.

“Poppy is one of the very first humanoid robots that’s 3D printed and open source,” Oudeyer said. “The open-source philosophy is attractive to educators, because if this is about learning how Poppy is walking, you really need to be able to open it, to deconstruct it, to see how it’s built and how it’s been designed.”

Artists have also embraced Poppy, and the humanoid robot recently finished up an artistic residence at the Lycée Saintonge chapel in Bordeaux. A dancer, a musician and a plastician were engaged in the first artistic application of Poppy as an expressive tool, to explore the theme of motion.

“The Poppy platform is interesting for [the artists] because of its association with movement,” Oudeyer explained. “They set up a show where the humanoid robot is dancing with the dancer, and they’re exploring how the coupling of the movement between the human and the robot can be done in such a way that it’s producing emotional feelings by people observing their interaction.”

The FLOWERS team is currently working on simplifying the open-source software and hardware design of Poppy even further, with a major “1.0” release set for September, according to Oudeyer. Beyond that, the team is focusing on fostering the community to advance the technology beyond their laboratory. The researchers see Poppy as a set of Lego bricks, an open platform that could serve as a steppingstone for a new and diverse generation of widespread, accessible robots.

“It’s really a platform that is providing Lego bricks for building animated structures, that would teach people how to use these technologies and then allow them to advance innovative products,” Oudeyer said. “Poppy is one humanoid, but from this platform many groups of people could invent variations such that this humanoid creature could be transformed into families and various subfamilies. A bit like a tree of living creatures that is diversifying with time.”