Back to Parent

Outcome


Outcome

The goal of this project was to create an ambient calendar alert that would notify me of a calendar event 15 minutes before the event started. The light used to create the ambient notification was a neopixel light strip which starts off as a cool white color that slowly fades to red as the event time gets closer. Using IFTTT I was able to connect my google calendar events to make a webhook which would then call a function to my particle argon device. Before creating the code for the calendar alert I did other practice exercises like making the neopixel strip light up pixel by pixel and reversing the sequence, as well as modifying the code to light up blue, red, green, then white in sequence. As you can see in the video below I shortened the time for the transition to show the whole alert transition without making a 30 min long video. As you can see in the code though the fadeDuration was actually 15 minutes long for each fade. 

Process

Working on a couple practice exercises with the neopixels really helped me start to understand the different ways I could control the light strip and how to start to fade from color to color. I had a lot of debugging and working through the code part by part. Following the instructions I just went step by step, figuring out how to first get a fade from white to red and then back to white. I had some difficulties getting the fade to work the same way each time the cloud function was called. I found a good hack for this by storing a value for "fadingToRed" which would then need to be reversed after the first fade and second fade so it would always fade the right direction when the function was called.

Next Steps

Some things that I would've liked to get to was creating a button to stopping the ambient alert after you've been notified of an upcoming event. I also think it would be interesting to create a housing for the light so I could hang it up and really allow it to fall into the background and very casually notify me of events. I wanted to be able to put the light behind my desk monitor so that I could get a nice ambient light behind my bright display and the brightness of the neopixels wasn't so in my face. In this way I think it could become more of an established piece of calm technology that doesn't force my attention.

Show Advanced Options
Screenshot 2023 12 02 024703.thumb
Show Advanced Options
Show Advanced Options

Reflection

Through this project my coding skills really expanded and I was given the chance to really start to understand for() loops better. I think in the future I would try to do better in writing the code piece by piece as I got a little caught up at the beginning as I tried to write most of light transitions right away. After getting caught up I went back to some of the flipped classroom videos to better start from the basic functions and then work my way up to the more complex actions I wanted for the end result.

Drop files here or click to select

You can upload files of up to 20MB using this form.