This ESP32 project gave my office a "mood ring" that reacts to calendar events, the weather, and more

My kids bought mood rings in the summer that change color, supposedly to reflect your current mood.This gave me an idea for building a mood ring of my own for my office that would give me useful information at a glance.I gave my Cheap Yellow Display another job I wanted something different from a typical dashboard A Cheap Yellow Display (CYD) is a very versatile tool for the price.

It's an ESP32 board with a small, built-in touchscreen display, and you can buy one for around $15.With ESPHome, you can create configuration files that compile into firmware for the CYD, letting it do whatever you want.I have a CYD in my home office that I use as part of my music discovery setup.

A playlist of new music is generated each week, and when it plays, the album artwork is displayed on the CYD.I can tap the screen to add songs to a separate shortlist playlist, and when I play through this shortlist, tapping the screen automatically adds the album to my Apple Music library.I wanted a good way to use the CYD when I wasn't playing music, and sharing information seemed like a good option.

I didn't just want a boring dashboard, so I decided to get a little more experimental.Related 5 mind-altering ESP32 projects that change the way you look at your home forever The sixth sensor.Posts By  Adam Davidson The weather sets the colors Music gets things moving The idea was to have the CYD display a mood ring that would change based on current and upcoming events.

The first thing that I wanted to display was the weather.I use the OpenWeatherMap integration in Home Assistant to provide details of the weather conditions in my location.It exposes conditions such as sunny, partly cloudy, rain, fog, and more.

The mood ring doesn't cover every condition, but it displays strong yellows for sunny weather, softer yellow for partly cloudy conditions, blue patches for rain, and muted blue-gray patches for cloud and fog.As the weather changes, so does the mood ring, so I can see the current conditions at a glance.There's also a simplified text label describing the weather condition, such as SUN, SUN/CLOUD, and RAIN.

If I'm playing music in the office, the weather colors still remain, but the mood ring dances a little, causing the patterns to shift.It doesn't analyze the audio or match the beat, and it doesn't really serve any purpose other than to make the mood ring feel a little more alive.My calendar events change the ring's mood The ring changes the closer the event gets Close Perhaps the most useful part of the mood ring is that it can give me a visual indication of how close upcoming events are.

An hour before the next event is due to start, the ring shows a small patch of red.This red arc expands further around the ring as the event gets nearer and then pulses during the final five minutes before the event is due.Text in the center of the mood ring shows a countdown to the event so I can see how long is left in minutes.

The event name appears at the bottom of the screen, so I can see at a glance what event is upcoming and how long I have before it starts.The events come from a calendar within Home Assistant, which pulls together key events from my work calendar as well as our family calendar.The CYD uses these events' start times to know when to start displaying the red portions of the ring.

The red arc never expands to the full circumference of the mood ring, topping out at 85% of the circle.That way, I can still see the weather colors even when an event is almost due.Sitting for too long puts the ring in a bad mood I can see when I'm being too sedentary The final thing that the mood ring does is show me when I've been sitting down for too long.

I have an mmWave presence sensor in my home office, with a zone set up that only covers my office chair.The sensor can tell with good accuracy when I'm sitting at my desk and when I'm not.After 30 minutes, the ring begins to fade.

By 60 minutes, the ring looks increasingly frazzled, and by 90 minutes it becomes dark purple with jagged red edges.If I leave my chair for five minutes, the ring resets to its original appearance.The time I've been sitting also appears in the middle of the ring, so I can see exactly how long it's been, though an event countdown replaces it if an event is coming up.

The ring becomes a visualization of what I'm doing to my body by sitting still for too long.It's a useful visual reminder that encourages me to get up and move around more often.Not every dashboard needs to be boring I've never been a big fan of smart home dashboards; for me, a smart home should require as little manual control as possible, with most things happening automatically.

Some information is always useful to see, but a mood ring is far more interesting than another display with buttons and numbers.

Read More
Related Posts