My Valentine

Creator and Developer

Created as a gift for Valentine's Day, My Valentine is a small IoT table lamp that changes the light color following intelligent algorithms.


Created as a gift for Valentines Day, My Valentine is a small cube-shaped IoT table lamp. The model was from Weighted Companion Cube of Portal game. It changes the light color using two different algorithms:

  • In the table lamp mode, the light color and intensity can be configurated locally using an Android app (called My Valentine Lighter).
  • However, the most interesting mode is the tracker mode. In this mode, its light is controlled by an algorithm that tracks the geolocalization of a smartphone.


Using the My Valentine Tracker app, the user defines a destination and activates the tracking. As long as the user gets near to its destination, the app communicates with a server that activates My Valentine and controls its light and behavior (that can blink or stay lit).

Thus, only with the light color of My Valentine, it is possible to know if the user is arriving its destination.

My Valentine Tracker Screenshot


This was a simple project, that took 40 hours of work. The table lamp design was taken from here, the rest of the design and software development was made by me.

I designed it with Fusion 360. All the parts have been printed with an Anycubic Kossel Linear Plus 3D printer.

I used an ESP8266 microcontroller. The code was made in C++11. The software connects in a REST web service that has light and color information. The REST web service was made with Python, Flask-RESTful, SQLite and SQLAlchemy.

The Android apps were made with Java.