Spray Can Plotter

Berlin, 2021

Very close to my workshop, there are two huge legal graffiti walls at the opposite side of a little park. It's a vibrant place and like many of my neighbors, I'm a big fan of what's happening there. Every time I visit the spot, there are new pieces to enjoy. Nothing stays long on those walls. Everything is being painted over, sometimes even several times a day. I have no background in graffiti, but the energy at those walls motivated me to participate anyway. I did so by making a large scale spray can plotter. The local graffiti scene embraced the plotter and during the last half year, we have made a few experiments together, some of which I have documented here. If you are interested in reading about the technical side of the project, this is covered in the Graffomat GitHub repository.

Local graffiti artist the Fly came up with the idea to plot a “graffiti form” that everyone could fill in and paint over
Kids in the park took the opportunity to improve their tagging styles

The beginnings of the project

When I started to build the plotter in spring, I also began reaching out to the local graffiti artists who are regularly active on those walls. The first thing that I learned is that graffiti jargon for a legal wall is “Hall of Fame” and when I visited the Hall several times a day, I usually returned with a bunch of practical tips and tricks about various types of spray paint, about different caps and about “hacking” the cans.

Parkaue Hall of Fame over several weeks

A couple of weeks later, the plotter was ready for a first test. My friend Jana (who's always up to doing wild experiments with paint) tried it out together with me. Our first plots involved simple vector drawings and bitmap tests of a portrait of computer pioneer and fellow Berliner, Konrad Zuse. I chose his photo because one of the first pen plotters in history, the “Graphomat Z64”, was developed at his company Zuse KG back in 1961. This also inspired me to name my contraption “Graffomat”.

When I shared the photos of the first session online, some people on the Internet got upset about the "Hello World" crossing a wildstyle piece below. Fortunately, the mood at the Hall was more relaxed. The local sprayers were rather curious about the machine and together we discussed ideas for further experiments.

A vector “Hello World” was the very first plotter test
We tried out various things including a bitmap plot of Konrad Zuse on the top right

It turned out that my new buddies at the Hall confused Zuse with former East German party leader Erich Honecker. They advised me to write Zuse's name below his picture for clarification. I did so for the next test, when I plotted the portrait as a CMYK color picture with four different cans of transparent spray paint.

Testing the CMYK layers beforehand on the computer
Spraying the last layer (black) of the color photo
From further away, the portrait was recognizable
Close-up of the transparent paint

Collaborations and contributions

After the initial series of technical experiments and some tweaking of the firmware, the local graffiti artists were eager to experiment with the plotter themselves. Those human / machine collaborations led to interesting and inspiring aesthetic outcomes.

Spontaneous collaboration with Howtokillagraffiti
Detail A
Detail B

Graffiti artists love to paint on trains. Therefore, using the plotter to spray a long train was a bit of a no brainer. The Fly contributed the vector drawing of an old Berlin S-Bahn wagon and I traced the plans of a steam locomotive. We stitched the long train together with several plots and at the end, everyone was invited to leave a piece on the locomotive and on the wagons. The Fly also made a video of that action.

Painting a train
Final touch on the locomotive
Parkaue Express featuring The Fly, Planet256, Lila, DankOne, Glurak, ArghEins and Bkome

A few fellow nerds, hackers and digital artists also found the spray can plotter experiments interesting and started to contribute files and software. Pixtxa, whom I know from the Chaos Computer Club's annual hacker congress, reverse engineered the file format and sent me a list of numbers via Twitter DM. This message turned out to be the code for a “cyber”-banner, a motif which is a popular insider joke in German hacker circles. I guess he was working on that list for a whole night, as I received the message at 5:56 AM. A couple of hours later, I could surprise Pixtxa by returning some photos of the spray painted banner.

Plotting the “cyber banner”

Arturo Castro and Carolina Romano used the plotter for a 3D animation experiment. Carolina created a spinning head in Blender, which is an open source 3D animation program. Arturo wrote a script that converts the 3D data into 2D coordinates, which the plotter could interpret. The outcome was a big wall full of single frames, each of them being slightly different. Everyone could photograph the single pictures with a stop motion app and turn the images back into an animation.

By the way: The head belongs to NAMAVE, the main character of a puzzle game which Carolina and Arturo are developing at the moment.

The entire NAMAVE wall with an explanation on the left side
Tagging the finished wall with a joystick

Here's also a video of the animation experiment:

When Kati and I were in Chemnitz this Summer, our friend and local neighbor Daniel Bachmann coded an interface for TouchDesigner, a node based visual programming language. He used it to generate the plot file for the portrait of a woman. Together, we sprayed the image as a mural in Daniel's backyard. Daniel also made a video of the process, which he posted on Facebook.

Daniel observes the plotter spraying his TouchDesigner files in the backyard
The finished picture

In the meantime, I also gave an online workshop involving the plotter. During a zoom session, the participants could control the spray can themselves from their homes in real time via the arrow keys on their keyboards. The workshop documentation (in German) involves a detailed technical explanation of the plotter and also of the real time communication, which uses Javascript, Websockets, NodeJS and the Web Serial API.

Online graffiti workshop with the Graffomat
My little data center
The result turned out a bit wild

Last but not least, Kati and I recently built the Vektorkollektor, which is a mobile vector drawing machine. Participants can draw pictures with an arcade joystick and a pen plotter. The images are also saved on an SD card in the same file format that the spray can plotter reads. We used those files to replicate some of the collected vector drawings ten times magnified on a couple of walls in Chemnitz.

Painting the entrance of the community garden “Zietenaugust
“Yo bunny Yo!”


There are quite many people (and institutions) who inspired this project and made it possible. Some helped me with the experiments, others provided the Hall, some gave me precious tips, many collaborated and a quite a few people donated spray paint. Here's a list of whom I want to thank. I'm already sure that it's incomplete - sorry for that!

Jana Linke, Jugendclub Linse, Theater an der Parkaue, Jürg Lehni, Dank One, Howtokillagraffiti, Glurak, The Fly, Planet256, Argh Eins, Bond, Eksyd One, Hohe, Bkome, Meko, Nesu030, Cylixe, Karolonia, Arturo Castro, Carolina Romano, Daniel Bachmann, Pixtxa, Bleeptrack, Sam Tubbax, Darsha Hewitt, Geraldine Juarez, joliesendahl, Mediengruppe Bitnik, lila fisch

While I built the plotter, I also received an art grant from the Berlin Senate (Senatsverwaltung für Kultur und Europa). It paid my bills and gave me the freedom to make this project. Thanks a lot for this support!

Additional resources