POP ART: A Bubble-Blowing Robot

Our concept was to make a robot blow coloured bubbles onto a canvas, where they would burst, leaving an imprint of the colour in an unpredictable representation of the robotic movement and commands.  We called it Pop Art.

We chose bubbles as the focus of this Hardware I seminar project as they’re light and fun, environmentally low impact, and something most have childhood memories of.  There are also not many precedents of a robot being used to blow bubbles: one excellently-titled installation at the V&A Museum in Dundee (‘Soap Opera’, 2019) used the motion of the robotic arm to push air through a bubble wand held as an end effector.  Ours would go further by creating an end effector that could selectively blow bubbles of different colours onto a canvas creating a colored painting.

Yet we also chose bubbles as there is beauty in them: they wobble through the air with a luminous irridescence, no two alike.  They’ve been used in culture and literature to symbolise hope, thoughts, or even as metaphors for life – for as certainly as each one of us will die, each bubble will burst, and when it does, it leaves no trace.  Part of this project was also about the futility of trying to keep hold of something ephemeral, as we attempted through the paint imprints left behind after the bubble had burst.  It occurred to us that, often, what’s left behind looks nothing like the thing you were trying to remember anyway.


Our approach was to hack an existing bubble gun to make the basis of our end effector, so we bought a kids’ one in a brightly coloured plastic. A look inside revealed a mechanism set around the pulling of a trigger, with an electrical and a mechanical outcome:

a) Electrical

the pulled trigger connected the circuit and started a motor, which i) turned a peristaltic pump which drew bubble liquid out of the soap container and towards the gun opening, and ii) turned a fan which blew air towards that bubble opening.  When hacked, this would be controlled by a Raspberry Pi Pico.  We would add soap containers for each bubble colour, and a selection mechanism to allow the peristaltic pump to draw from each on command.

b) Mechanical

The pulled trigger moved a plastic swiper across the gun opening, priming it with a film of bubble liquid, ready to be blown out into the world.  We referred to this as the soap film charger. When hacked, we would need a mechanical motion to periodically make this movement.  We fitted a microservo into the body of the gun, and 3D printed a component to allow its rotational movement to be translated into the linear swiping of the soap film charger.

The gun had some other components to for its second function of firing water, and we removed these to make our end effector more compact.  We were also able to remove the trigger, as its function had been replaced by our hacking solutions.

Diagram of a bubble gun

The bubble gun before hacking

Diagram of a hacked bubble gun

The bubble gun after hacking


Initially, we wanted four colours of bubbles that the end effector could pick from. We had an idea to achieve this using three two-way solenoid valves, which we intended to arrange as shown in the diagram below.  Each solenoid functioned as a gate, so always had either one side or the other open, but by connecting them in a serial arrangement we would be able to selectively draw from four different soap sources.  We needed to address each of the three solenoids every time we wanted to pick a colour, although when picking green or red, the command to Solenoid C would be arbitrary, and when picking yellow or blue, the command to Solenoid B would be arbitrary.

Diagram of solenoid arrangement

Arrangement of three two-way solenoid valves to form a four-way colour picker

Unfortunately the solenoids turned out to only work in pressurised system, so we switched to using a single solenoid valve without this requirement, and continued with two colours of bubbles: red and blue.  If the colour picker was required to draw the red bubbles, the command to this solenoid would be set to 1.  If it was required to draw blue, it would be set to 0.


The hacked gun was reassembled, and mounted onto a 3D printed platform with a flange for attaching to the robotic arm. The platform also had a box to contain the electronics on the top side, keeping the MCU and wiring separated from the four pots of bubble liquid, which hung on the bottom of the platform like an udder.  A small printed cage contained the solenoid. Now we were only using two bubble colours, we were able to use the third pot for waste liquid collection, drained from below the soap film charger.  This further reduced the risk of any drops of bubble liquid coming into contact with the electronics as the robotic arm moved around.

Diagram of end effector

Diagram of the bubble-blowing end effector

Electronics on the end effector featured a RaspberryPi Pico, 5V servo motor, 5V DC motor (driving a fan and peristaltic pump), solenoid valve, relay, transistor, and a 24V battery pack to provide power.  An optocoupler converted 24V from the robot to 5V for the RPi board.

The action of the firmware is demonstrated in the following animation.


The robot outputs two signals: one to control the solenoid, one to power on the DC motor which controls the blowing fan and the peristaltic pump which sucks the colored soap to the gun head.

On receiving the motor on signal, the RaspberryPi actuates the motor and the servo.  The servo creates an oscillating swiping motion on the gun head which keeps the ring lathered with soap, optimising the bubble creation.

Flow diagram for robotic control of the bubble blower

In conclusion, we have demonstrated the feasibility of hacking and attaching a mechanical bubble blower to a robot and have it blow different coloured paint bubbles onto a canvas to create an intricate painting.

POP ART is a project of IaaC, Institute for Advanced Architecture of Catalonia developed at Master in Robotics and Advanced Construction (M.R.A.C.) in 2021 by,

Students: Ipek Attaroglu, Alfred Bowles, Grace Boyle, Andrea Lizette Nájera Rodríguez

Faculty: Angel Muñoz, Shahar Ableson