Inspiration
Valentine's Theme: Long distance relationships are unable to experience each other's physical presence, so AtmoSphere is a way to sync their environment.
What it does
A photoresistor at one location monitors local light levels in real-time. This data is processed and transmitted to a partner lamp anywhere in the world. The partner lamp then adjusts its intensity—switching between "Off," "Dim," "Warm," and "Bright" states—to mirror the sun or lamplight of the other person.
How we built it
We used two ESP8266 microcontrollers (one for each lamp), light sensors (LDRs), and LEDs. We built a Flask-based Python server to act as a data bridge between the "Sender" and "Receiver" boards, and implemented the categorisation of sensor data into environmental states in C++ (Arduino). An LCD provides live status updates, showing exactly what the light level is in the partner city.
Challenges we ran into
We originally used LED strips, which were more complicated to implement and ran into many server errors, so we pivoted to using LEDs instead. Environmental light levels were much lower than expected, with a usual 20-80 units instead of our original 50-200. We solved this by recalibrating our software mapping to ensure the lamp remained responsive in low-light conditions.
Accomplishments that we're proud of
We went into with no experience in hardware, so we're proud of being able to successfully build a final project.
What we learned
We learned how to implement hardware functions using software through the Arduino IDE.
What's next for AtmoSphere
To react to temperature and humidity changes, lights that change colour, brighter lights. Make it two ways, so that there isn't just one sender and one receiver.
We are opting for the Arduino Uno sponsor prize.
Log in or sign up for Devpost to join the conversation.