This project provides a way for people in long distance romantic relationships to go to sleep with the presence of a significant other surrounding them.



The Problem Area:

Long distance romantic relationships are difficult to maintain and going to sleep alone when you are in one is a common pain point. You miss the presence of and interaction with your partner, and being alone in a bedroom where their presence is naturally expected is a direct reminder that they are not there-- you crave some sort of connection with them to make you feel less alone and to make sleeping easier. 


How we addressed this problem:

"Aura You Sleeping" provides a way for you to go to sleep in each other's presence. When one partner puts his/her head on a pillow, a force sensitive resistor reads the pressure and signals a fan to spin in the other partner's room. This causes the scent of the partner to diffuse in his/her room so that they know you are sleeping (and vice versa if both partners are sleeping). This way, partners can go to sleep surrounded by the scent they associate with their partner, so its like they are sleeping together. They will also know if their partner is sleeping or awake, so they know if they can or cannot contact that person. If they can't, they will at least have their partners scent as a reminder of or connection to them to keep them company.

Ideation Sketch:


Storyboard | In context use





Code: At first, we were just going to have the fan turn off and on when any pressure was applied to the FSR, but after working with the code we realized that it was necessary to create a "thresholdValue" for the FSR digital pin that when reached, would activate the other person's fan. This is something we didn't originally take into consideration and learned through out the process. It also make the product more usable, because it will sense a pressure that is similar to a person's head and not any lighter pressure that wouldn't signal sleep.

Structure: At the beginning of the process we were going to create a diffuser that had the oil in a container underneath the fan, because we couldn't think of a way to get the fan to blow the oil from below. After some more focused thought and sketch iterations around this issue, we came up with a concept that had the oil soaked in a cloth and encased in a box so that it filled up the box. The cloth would also be above the fan. The fan would be at the bottom of the box and blow the scent out of the box when activated. 

Below is the final structure design sketch for "Aura You Sleeping?"


Challenges encountered:

During the design process we encountered two major problems and these are described below.

1. Subscribing to an event in the cloud so that two particles can communicate with each other: It was difficult for us to figure out exactly how to structure our code so that we published the right event to the particle cloud, triggered the other particle to read the information, and then to get the other particle to react based on that information. We set up the structure correctly in our first attempt, but through a series of iterations of the code, we learned that we were communicating the wrong information through the cloud or that we were not consistently calling the correct function to activate the event once the information was read by the other particle. Once this was resolved, we were able to focus on stopping the event once activated.

2. Set up of the fan to an external battery: This was difficult for us because no one on our team had worked with an external battery before. We had to use one to support the 12V fan. Once we figured this out and located the correct external battery (and with the help of our TA Roberto Andaya) we were able to wire the fan correctly to our breadboard. We periodically experienced issues with the wiring during iterations because the wires on one of the fans were almost the same color, so we often wired it wrong. We suggest making sure not to use wires that look too similar when wiring a part (if you can avoid it, always do)!



Bill of Materials:

- 2 breadboards (generic)

- 2 particle photons 

- 2 TIP120 transistors

- 2 Diodes

- 2 Resistors (1K)

- 2 Resistors (10K)

- 2 DC Fans (12V)

- 2 Force Sensitive Resistors

- 2 External Power Supplies (12V)

- 12 Jumper Wires


Fritzing Diagram


Code Building Process:

1. Firstly we tried to drive the fan from the FSR sensor and adjust the threshold value from testing.

2. Then we built code to trigger the fan from another device. This step took a lot of time until we figure out that we should use different event names to make the two paired devices not being triggered simultaneously.

3. The final step was to make the fan stop spinning when the pressure was relieved. This step took the most time as controlling events is very different from running code from local machine.

int forcePin = A0; //map the FSR sensor to pin A0
int fanPin = D0; //map the fan to pin D0
int thresholdValue = 2000; //trigger the fan when detected pressure is larger than this number
int forceRead; //the detected pressure
String state; //define when the fan should be on and should be off
int condition = 0

void setup() {
  pinMode(forcePin, INPUT);
  pinMode(fanPin, OUTPUT);
  Particle.variable ("track",forceRead);
  Particle.subscribe("K-Aurapress-detected", myHandler);
//subscribe to the other device while the coupled should subscribe to "Y-Aurapress-detected"

void loop(){
  forceRead = analogRead(forcePin);
  if(forceRead > thresholdValue and condition == 0){
    state = "yes";
    Particle.publish("Y-Aurapress-detected", state);
    condition == 1;
//publish "Y" event when the FSR senses pressure to trigger the fan
  }else if(forceRead <= thresholdValue and condition == 1){
    state = "no";
    condition == 0;
    Particle.publish("Y-Aurapress-detected", state);
//publish "Y" event again when the FSR cannot sense any pressure to stop the fan

void myHandler(const char *event, const char *data){
  String has = String(data);
  if (has == "yes"){
  }else if (has == "no"){
void spinthefan(){
void stopthefan(){
Click to Expand

Final Product

Below are 3 photos of the final prototype:


Video Demonstration

IoT - Aura You Sleeping
Zhenyang Li -


We learned that Force Sensitive Resistors are very sensitive! But this is a perfect accidental finding for our project because it makes the seemingly over-sensitivity of the FSR a positive. The impreciseness of the FSR is okay since we just need to have it read above a certain pressure level, and not at a precise level, to then activate the fan. The user doesn't need to worry about providing a certain amount of pressure initiate the interaction with their partner.

Ideating around the topic of connected relationships made us realize the extreme size of opportunities for development in this area right now. This made it difficult for us to narrow in on a single idea to focus on, so we ultimately agreed to focus on improving connection for a romantic long distance relationship and proceeded to ideate upon that. We also wanted to explore activating less explored senses to improve connection between these types of partners and learned that not much has been developed that initiates sense of smell. We were all very passionate about exploring this opportunity, which ultimately led to the group brainstorm, development and agreement on creating "Aura you sleeping?".

Next Steps:

1. Control the fan speed by setting it to run at different speeds depending on different pressure or to be activated by either pressure or a button, so that the person could turn it on and off at any time. This would be beneficial for people who live in different time zones or for a person who might want to stop the device from releasing the smell because it is too potent or maybe they don't want to smell their partner that night.

2. Get a larger FSR so that it covers more of the pillow or connect the FSR to a surface that is more reactive and that cover more surface area than what we were able to with this time frame. This way, the partner doesn't need to worry about "missing" the sensor when they lay their head on the pillow to go to sleep and can be more certain that doing so will activate the other partner's scent diffuser/fan.



The class TA, Roberto Andaya and Professor, Daragh Byrne, both provided guidance in the hardware and software development process. We also consulted the below online sources:

Share this Project


49713 Designing for the Internet of Things

· 25 members

A hands-on introductory course exploring the Internet of Things and connected product experiences.

Focused on

This project provides a way for people in long distance romantic relationships to go to sleep with the presence of a significant other surrounding them.


February 11th, 2018