A quantified selfie for participants of MakeZurich and other hacky events


A quick and fun "minimal" idea. See also the backstory on Oleg's blog.

Like many good things it started in a workshop at Bitwäscherei:

(that's us with Urs and Kurt in the picture)

The idea

Plug in your node, which at some point does print('<your_username>') ...

Monitor the serial console and generate a selfie, based on your dribdat profile API data (e.g. api/loleg) ...

(We use the forgiving PySimpleGUI and ImageIO to quickly whip up the screen above)

Make a GIF with some nice logos, in the future bake in some texts and TTN graphs ...

(We have lots of plans, you see)

Lastly, upload the whole thing as a Drib to our platform ...

In the future this can be really cool .. and shareable :)

(The screenshot above was us playing with an ASCII-rendering of the Webcam stream)


A MakeZurich 2023 hackathon project to explore ideas with embedded hardware and quantified self.



You need to have tkinter on your system:

In Arch, Tk is available in the Arch repository. You don't need aur for this, just type on the terminal:

sudo pacman -S tk

If you are on a Debian, Ubuntu or another Debian-based distro, just type on the terminal:

sudo apt-get install tk

On Fedora:

sudo dnf install tk

Possibly some other dependencies... let us know if you have trouble here!

Run the Python program

Make sure you have Python 3.10+ and Poetry installed, then:

poetry install

Or use your virtual environment manager (venv etc.) of choice, e.g.:

pipenv shell
pip3 install -r requirements.txt

To get dependencies, and finally:


To fire up the app!

Set up your badge

Copy the file to your MakeZurich badge.

Change the username to your account on

Connect or reset the badge while your Python program is running to generate a selfie.


Open source under the MIT License

This content is a preview from an external site.

Edited content version 47

20.06.2023 09:28 ~ loleg

Published a blog post with the background to the MakeSelfie. Thanks a lot Federico and everyone!

20.06.2023 09:28 ~ loleg

Event finished

10.06.2023 16:00

Merge branch 'main' of

Selfie stick

badge prints the RP2040 serial number when the touch button 1 is pressed (@Federico Vanzati)


10.06.2023 13:37

MakeSelfie with tamberg 📾

10.06.2023 13:37 ~ loleg


10.06.2023 13:09

10.06.2023 13:09 ~ loleg

Added user data from API


10.06.2023 11:46

Repository updated

10.06.2023 11:46 ~ loleg

Quick sketch of something we decided to throw together in the last hours

10.06.2023 11:46 ~ loleg


10.06.2023 11:42

Joined the team

10.06.2023 11:42 ~ federico_vanzati

Initial commit :tada:

Initial commit


09.06.2023 06:56

Edited content version 5

09.06.2023 06:56 ~ loleg

Added some notes and ideas from the Quantified Self workshop. Feel free to comment/expand! Have a great MakeZurich :)

09.06.2023 06:56 ~ loleg

Joined the team

09.06.2023 06:54 ~ loleg

Challenge posted

09.06.2023 06:54 ~ loleg

Event started

02.06.2023 09:00
Contributed 4 months ago by loleg for Make Zurich 2023

Creative Commons CC-BY logo The contents of this website, unless otherwise stated, are shared
under a Creative Commons Attribution 4.0 License.

Everyone at the event is required to agree with our Code of Conduct:

Be excellent to each other!

Make Zurich 2023