How to IoT your (mid-distance) relationship

· 2 min read
How to IoT your (mid-distance) relationship

I did something I use IoT to let my girlfriend know I'm thinking of her.

Now of course you're going to ask "Why don't you just tell her?!".. Because I can also do it through technology in a beautiful way.

What is IoT?

The Internet of Things (IoT) is a collective term for technologies of a global infrastructure of the information society, which makes it possible to network physical and virtual objects with each other and to let them work together through information and communication technologies.

The idea

My idea was this:
I take an ESP32, two RGB LEDs, three 220 ohm resistors and put the whole thing together.

Breadboard model of the project

I tried it out a bit and then got the whole thing up and running on my breadboard:

It worked..

Said and done.

Now, of course, you still need a housing for it..
Fortunately, I own several 3D printers and can print the case myself (Doesn't look pretty but does the job).

Now I had to build a trigger that I could use to tell the ESP via MQTT that it should blink. So I took an Aqara mini wireless switch, integrated it into my existing system using Zigbee2MQTT and let the ESP listen to the topic of the button:

With the "blink()" function, it executes the sequence for the LEDs in order to signal what the ESP is supposed to signal.


Final Finish

Then it was time to give it a new home. Since I printed a case for the part in advance, I only needed something to hide the LEDs.
So I went to the drugstore and bought some tracing paper to hide the LEDs with.

It doesn't look pretty but it does what it's supposed to. It holds the whole thing together and since it wasn't meant for mass production anyway, I thought I'd just spray it with gold paint and it's good.

You want to rebuild the whole thing?

If you want to rebuild the whole thing, here's a list of the parts you'll need:

Of course, I also made the source code publicly available. Please note, however, that your MQTT broker must be publicly accessible.