The Musical Toilet Experience
About the project
Transformed a toilet into a musical experience with the Wii theme! It also has a 'mood', urging or discouraging use.
Project info
Difficulty: Easy
Platforms: MicroPython
Estimated time: 4 hours
License: Creative Commons Attribution CC BY version 4.0 or later (CC BY 4+)
Items used in this project
Story
Every project has a story, and this one began with a light-hearted inside joke between my partner and me. Every time we'd sit on the toilet, we'd spontaneously hum, sing, or whistle the iconic Wii theme music. This sparked an idea: what if the toilet could play the theme every time someone sat down?
The Build Process:Initially, I considered placing a switch under the seat. However, I remembered the ESP32's touch pin capabilities. I attached a piece of copper foil tape to the seat and connected it using a short jumper wire. A word of caution: the capacitive touch sensor on the ESP32 isn't adjustable. The wire length is crucial; if the capacitive touch value dips below zero, the code crashes. I learned this the hard way, as documented in my YouTube video. Due to this limitation, the circuitry had to be positioned very close to the toilet seat.
For a potential second version, I'd likely opt for an external touch sensor with adjustable sensitivity. The current circuitry, though simple, can be simplified further. I utilized the ESP32 as the central processing unit and an Adafruit FX soundboard for sound management, amplified through a speaker. A more streamlined approach would involve a microcontroller with built-in audio playback capabilities.
To address my habit of doom scrolling, I programmed the Wii music to play for the initial 10 minutes. After that, an interrupting sound plays, followed by a passive-aggressive reminder at the 20-minute mark, urging the user to wrap things up.
For those interested in replicating this quirky project, all my code is available on GitHub. https://github.com/FireMarshmellow/Musical-toilet
Part 2: The Toilet with EmotionsInspired by an episode of the Safety Third podcast, where Alan Pan floated the idea of two toilets with distinct personalities - one eager to be used and the other, not so much - I decided to bring this concept to life. Given that I had only one toilet, I had to think outside the box.
I integrated a sensor that detects when the lid is opened. Depending on its 'mood', the toilet either encourages or discourages use. The touch sensor then determines if it's been used and plays a corresponding sound. To achieve this, I added an IR sensor to the toilet tank, ensuring its sensitivity was adjusted to avoid false triggers.
Thanks to some imaginative scripting by a friend and a text-to-speech synthesizer, my toilet now has a voice, expressing its 'feelings' every time the lid is lifted.
Curious to see this in action? Check out the detailed build process on my YouTube channel. If you enjoy the content, don't forget to hit subscribe!
Leave your feedback...