feat: add blog post about Raspberry Pi alarm clock

This commit is contained in:
2026-05-05 14:02:31 +02:00
parent 4912f010ba
commit 6663d92ef7
7 changed files with 91 additions and 0 deletions
+7
View File
@@ -18,3 +18,10 @@
padding: 1em;
}
}
// Ensure images inside markdown content are responsive
article img, main img {
max-width: 100%;
height: auto;
border-radius: 4px;
}
@@ -0,0 +1,42 @@
---
title: "Ein Wecker basierend auf einem Raspberry Pi"
date: 2026-05-05
description: "Ein Raspberry Pi wird zu einem interaktiven Wecker mit Arcade-Button und Rätselfunktion."
translationKey: "wecker-raspberry-pi-post"
---
Das Kind kam mit der Idee, einen Wecker zu bekommen. Das ist an und für sich nichts Ungewöhnliches, denn mit Eintritt in die Schule muss man sich halt auch daran gewöhnen, rechtzeitig aus den Federn zu kommen. Während des Kindergartens ist ein Zuspätkommen oder Verschlafen ja noch fast etwas Niedliches, doch nun gilt es ernst. Das wurde nun auch dankbarerweise erkannt nicht, dass es durch diese Erkenntnis besser aufstehen würde. Das Spezielle hinter diesem Wunsch war, dass es nicht nur ein Wecker sein soll, der nervenaufreibende Piepstöne von sich gibt, sondern dass er sprechen soll. Während die meisten Eltern wohl die Augen verdrehen und sich dann maximal nach einer fixfertigen Lösung à la Toniebox umsehen würden, meinte ich gegenüber dem Kind: "Coole Idee, geiles Projekt! Machen wir zusammen."
## Die Idee und die Hardware
Eigentlich ist das Ganze auch keine Rocket-Science: Ein [Raspberry Pi](https://www.raspberrypi.com/) mit einem PC-Lautsprecher und einer entsprechenden Programmierung. Die Bedienung war eher die Herausforderung. Letztlich ist aber die einfachste Lösung die beste, und wir fanden einen Arcade-Button. Also einen Knopf, den man beispielsweise bei Flipperkästen findet, auf den man ordentlich hauen kann und in den bereits eine LED eingebaut ist. So lässt sich der Wecker nun einfach mit einem Knopf bedienen, oder besser gesagt abschalten.
![Die Komponenten: Raspberry Pi und der Arcade-Button](wecker-1.jpg)
Einen alten Raspberry Pi ein Model B aus dem Jahr 2018 mit 2 GB Arbeitsspeicher habe ich dankbarerweise von einem Freund gespendet bekommen. Eine etwas grössere SD-Karte auch. Eigentlich wollte ich erst ein NixOS auf dem Gerät installieren. Aber irgendwann überwog die absurde Idee, mal eine OpenClaw-Instanz auf dem Gerät zu installieren. Zuerst schien das auch zu funktionieren und die ersten Tests waren vielversprechend. Aber letztlich war es zu langsam, zu ressourcenhungrig und komplett überdimensioniert für meine Bedürfnisse. Ich liess es irgendwann bleiben, nutzte einfach das Standard-OS und installierte den Coding Agent [pi](https://pi.dev), um das Ganze zu bedienen. Auch hier: Die einfachste Lösung ist letztlich die beste.
## Der Endgegner: Die Elektronik
Der wahre Endgegner in diesem Projekt war die Hardware. Ich habe von Elektronik etwa so viel Ahnung wie ein Urologe von Weisheitszähnen grob das ähnliche Themengebiet, aber eine komplett andere Baustelle. Ich tat also, was ich in dieser Situation immer tue: Die KI fragen. Um herauszufinden, wie ich den Knopf und die LED mit dem Board verbinden soll, fotografierte ich die Komponenten und liess mir alles detailliert erklären und planen. Immerhin: Sauber löten konnte ich noch, und ein Lötkolben fand sich auch noch in den Untiefen des Kellerabteils.
![Die Verkabelung und Lötarbeiten an der Hardware](wecker-2.jpg)
Als Gehäuse diente eine alte Holzkiste aus einem gescheiterten Experiment, bei dem ich vor ein paar Jahren versucht hatte, einen eigenen Humidor zu bauen. Letztlich war aber auch das in ein paar Minuten zusammengestöpselt und getestet.
![Einbau in die alte Holzkiste, die ursprünglich ein Humidor werden sollte](wecker-3.jpg)
## Vom Sprechen zum Rätsellösen
Aus der Sprachausgabe wurde dann aber vorerst nichts. Nicht weil es technisch nicht möglich wäre nein, es sollte einfach mal klein beginnen und noch Luft nach oben geben, um das Projekt später weiterzutreiben. Ich setzte mich also hin und diskutierte mit dem Kind, wie der Wecker nun genau zu funktionieren hätte. Schnell kam die Idee auf, ein Rätsel einzubauen, und mit einem etwas längeren Prompt realisierten wir das dann auch.
Wir nahmen einfach mal den Song ["Sunshine Reggae" von Laid Back](https://www.youtube.com/watch?v=R82XGJV_nkU) zum Aufstehen. Ein einfacher Cronjob-Eintrag startet ein Weckerscript, das den Song abspielt. Betätigt man den Knopf, fängt die eingebaute LED an, zufällig zu blinken. Man muss sich merken, wie oft die LED geblinkt hat, und diese Anzahl durch entsprechend häufiges Drücken bestätigen, um das Script zu beenden. Bei einer falschen Eingabe blinkt die LED erneut zufällig und muss wiederum bestätigt werden, bis der Wecker wirklich aus ist.
Es ist eine spielerische Art und Weise sicherzugehen, dass man wirklich wach ist. Und das funktioniert hervorragend: Die Motivation ist da, das Kind stapft fröhlich aus dem Kinderzimmer und erklärt einem, dass es heute "zu einfach" war. Ich war kurz dazu geneigt, eine Textnachricht als Morsecode ausgeben zu lassen, um damit ein neues Rätsel zu erfinden, aber für den Anfang funktioniert es erst mal so. Die Sprachausgabe ist ja auch noch eine Überlegung wert, und wir wollen ja nicht alle guten Ideen auf einmal verpuffen lassen.
![Der fertige, interaktive Raspberry Pi Wecker](wecker-4.jpg)
## Überschaubare Kosten, unbezahlbarer Spass
Übrigens: Die Kosten für dieses Projekt waren absolut überschaubar. Den Arcade-Button und die passenden Kabel musste ich für ca. CHF 10. bestellen. Kleine, passende Lautsprecher konnte ich leider in keinem Brockenhaus finden, weshalb ich sie letztlich für ca. CHF 30. neu kaufte. Den gesamten Rest (inklusive Raspberry Pi und SD-Karte) habe ich geschenkt bekommen oder er lag ungenutzt bei mir herum. Mich kostete das Projekt unter dem Strich also etwa CHF 40.. Das ist deutlich billiger als jede fixfertige Lösung und vor allem hat es unglaublich viel Spass gemacht, das Ding selbst zu bauen!
Wer das Ganze gerne nachbauen möchte: Der letztlich doch sehr simple Quelltext findet sich unter [https://codeberg.org/gurix/wecker](https://codeberg.org/gurix/wecker).
@@ -0,0 +1,42 @@
---
title: "An alarm clock based on a Raspberry Pi"
date: 2026-05-05
description: "A Raspberry Pi turns into an interactive alarm clock with an arcade button and a puzzle function."
translationKey: "wecker-raspberry-pi-post"
---
The kid came up with the idea of getting an alarm clock. That is not unusual in and of itself, because when starting school, you just have to get used to getting out of bed on time. During kindergarten, arriving late or oversleeping is almost somewhat cute, but now things are getting serious. Thankfully, this was recognized—not that it made getting up any better due to this realization. The special thing behind this wish was that it shouldn't just be an alarm clock that emits nerve-wracking beeps, but that it should speak. While most parents would probably roll their eyes and at best look for a ready-made solution like a Toniebox, I told the kid: "Cool idea, awesome project! Let's do it together."
## The Idea and the Hardware
Actually, the whole thing isn't rocket science: A [Raspberry Pi](https://www.raspberrypi.com/) with a PC speaker and some corresponding programming. Operating it was more of the challenge. Ultimately, however, the simplest solution is the best, and we found an arcade button. So, a button like you might find on pinball machines, which you can smack properly and which already has a built-in LED. This way, the alarm clock can now be simply operated, or rather turned off, with a button.
![The components: Raspberry Pi and the arcade button](wecker-1.jpg)
An old Raspberry Pi—a Model B from 2018 with 2 GB of RAM—was gratefully donated to me by a friend. A slightly larger SD card as well. Actually, I first wanted to install NixOS on the device. But at some point, the absurd idea of installing an OpenClaw instance on the device took over. At first, that seemed to work, and the first tests were promising. But ultimately it was too slow, too resource-hungry, and completely oversized for my needs. I eventually let it be, simply used the standard OS, and installed the coding agent [pi](https://pi.dev) to operate the whole thing. Here too: the simplest solution is ultimately the best.
## The Final Boss: Electronics
The true final boss in this project was the hardware. I know about as much about electronics as a urologist does about wisdom teeth—roughly the same subject area, but a completely different construction site. So I did what I always do in this situation: Ask the AI. To find out how I should connect the button and the LED to the board, I photographed the components and let it explain and plan everything in detail for me. At least I could still solder cleanly, and a soldering iron was also still found in the depths of the basement compartment.
![The wiring and soldering work on the hardware](wecker-2.jpg)
An old wooden box from a failed experiment, where I had tried to build my own humidor a few years ago, served as the casing. Ultimately, however, that too was plugged together and tested in a few minutes.
![Installation in the old wooden box, which was originally supposed to be a humidor](wecker-3.jpg)
## From Speaking to Solving Puzzles
However, the speech output came to nothing for now. Not because it wasn't technically possible—no, it should just start small and still leave room for improvement to push the project further later. So I sat down and discussed with the kid exactly how the alarm clock should function. The idea of incorporating a puzzle quickly came up, and with a somewhat longer prompt, we realized that too.
We simply took the song ["Sunshine Reggae" by Laid Back](https://www.youtube.com/watch?v=R82XGJV_nkU) for waking up. A simple cron job entry starts an alarm script that plays the song. If you press the button, the built-in LED starts blinking randomly. You have to remember how many times the LED has blinked and confirm this number by pressing the button accordingly often to end the script. With a wrong entry, the LED blinks randomly again and must be confirmed again until the alarm clock is really off.
It is a playful way of making sure that you are really awake. And that works excellently: The motivation is there, the kid stomps happily out of the children's room and explains to you that it was "too easy" today. I was briefly inclined to have a text message output as Morse code in order to invent a new puzzle, but for the start, it works like this. The speech output is still worth considering, and we don't want to let all good ideas fizzle out at once.
![The finished, interactive Raspberry Pi alarm clock](wecker-4.jpg)
## Manageable Costs, Priceless Fun
By the way: The costs for this project were absolutely manageable. I had to order the arcade button and the matching cables for approx. CHF 10.. Unfortunately, I couldn't find any small, suitable speakers in any thrift store, which is why I ultimately bought them new for approx. CHF 30.. The entire rest (including Raspberry Pi and SD card) was given to me as a gift or was lying around unused at my place. So the project cost me roughly CHF 40. bottom line. That is significantly cheaper than any ready-made solution—and above all, it was incredibly fun to build the thing yourself!
If you would like to rebuild the whole thing: The ultimately very simple source code can be found at [https://codeberg.org/gurix/wecker](https://codeberg.org/gurix/wecker).
Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB