Card10 Cover Generator

Generative 3D Model

Berlin, 2019

Recently, I wanted to learn how to program in OpenSCAD, an open source parametric modeling program for designing 3D models by describing them with code. Around the same time, I got a little piece of electronics, the “card10-badge”, which is something like a smartwatch that you can program yourself. You can read more about the card10 in the documentation about the apps which I wrote for it.

The card10 badge with electronic components exposed on its top

As the card10 came without any cover, but with electronic components exposed on its top, I decided that designing a 3D printable cover for the card10 would be a nice exercise for learning the programming language of OpenSCAD, while it would also lead to a useful physical object.

Screenshot of OpenSCAD with the basic card10 cover
The 3D printed cover clipped onto a card10

I shared the model online, assuming that others might want to print it as well. Considering that the card10’s were given out to 5000 attendees of the Chaos Communication Camp and that these people have likely access to 3D printers at their local hackerspace, this is exactly what happened.

After using my cover for a while, I wanted to improve a few details. My ideas went in different directions, as the card10 can be operated in various ways. I went back to my OpenSCAD code and programmed a couple of additional features for the original simple cover. Those features could be turned on and off individually in the code, which would lead to potentially thousands of different designs. The card10 cover generator was born! You can find it here, together with instructions on how to make your own card10 cover.

Various card10 covers designed with the cover generator

The cover generator could now produce simple covers which would just clip onto the card10 and give it basic protection, but also quite complex covers, which include a 3D printed wristband. It's almost 100% 3D printed - there are only two additional paperclips required that are used as metal axles and which connect the wristband with the cover. The nice thing is that you can swap the covers without any tools.

Swapping the card10 between different covers

A few weeks later, I went to xHain, the hackerspace in my area, in order to attend a “card10-workout”. That was a hackathon where people met to write software for the card10. At the event, I got to know segal, who told me that it would be possible to run OpenSCAD on a webserver. I was excited, as this meant that the generator could even work online, in a web browser! Segal began right away with the implementation and the Online Cover Generator was born. Here, you can try it out yourself.

Screenshot of the online cover generator

Next step was to spread the covers even further. I thought that the upcoming 36C3, the annual hacker congress of the Chaos Computer Club, might be the right place for that. There are usually many 3D printers around at the congress and as I experienced in the past, many of them are just printing useless stuff. Probably because it's exciting to watch a 3D printer printing. I reached out to Jan from YouIn3D, who's organizing the 3D printing assembly at the congress. It turned out that he's also the guy behind the infamous Online Dildo Generator. He definitely knew something about online 3D model generators and he liked the idea to run a cover printing service at 36C3.

Building an oversized card10 cover

In order to advertise our service properly at the 3D printing area of the congress, I printed an oversized card10 cover and put an old digital photo frame in it, which was left over from another project. This was easy and quick to make, as I just had to scale up the 3D model and the printer was doing most of the work on its own. Since the photo frame could also playback videos, I also made a short promotional animation.

Promo video running on the big card10

Our 3D printing service at the hacker congress was working out nicely. We got a few hundred card10s covered and it was also an interesting occassion to get to know many people. One of them was twelve year old Janek. He was obviously very excited about the 3D printers and decided to hang out with us the entire time. At the second day he became our assistant and from the 3rd day on, he was basically running the entire show by himself.

Unfortunately one cannot easily to take photos at the congress, as the photo policy there is very strict. But here are two pictures which won't violate anyone's privacy:

Printing card10 covers at 36C3

Photo by Maud Rossdeutscher
3D printing assembly at 36C3

Photo by Maud Rossdeutscher


This was quite an interesting project, which began as little learning exercise and unexpectedly became something much bigger at the end. I'm very happy that I learned how to use OpenSCAD, as modeling by code opens up very exciting possibilities. In the meantime, I also discovered OpenJSCAD, a Java Script based version of OpenSCAD, which would have been a more appropriate choice for programming an online cover generator, though. I'll keep that in mind in case I want to make something similar again.

I'm also very satisfied with the covers that I have now. When I wear my card10, I get constantly asked about it. People obviously think that it looks quite cool. And now that I can wear it without worrying that it breaks, I also programmed a few apps for it, which are documented here.

Finally, I also had a really good time at the 36C3 and with Jan and his posse I got to know some very nice people, which is always super :)


Thanks to the whole card10 team for developing such a nice little badge. Many thanks to segal for turning the cover generator into such a cool online generator! And thanks to Jan, Christian, Janek, Maud and all the other nice 3D printing people at the congress. I couldn't have run the card10 cover printing service without them!