Yiyi Shao, Jad Rabbaa, Quinn Rockliff

Ever wonder what other people are feeling right now?

Emolace is a fashion accessory reading emotional tweets from all over the world, it changes colours depending on different hashtags used. By tracking the sharing of the hashtags: #happy #sad #ew #scared and #mad, Emolace tells you the current emotion of the ever-updating internet.

The speed of blinking is based on the strength of WiFi signal, which will tell you how well as an individual you connect to the cyber world.

Code is available at Github

BOM List

Day 1

5 ideas in class

  1. Water bottle that displayed levels of other bottles
  2. Hat that measured tasks completed
  3. Christmas sweater that communicated with phone christmas tree
  4. Device that measured people around you on the subway and reacted to it.
  5. Twitter to wearable that displayed the emotion of the internet via LEDs
  6. Use photon board for this project


Day 2

On day two Jad and YiYi met to work more on the concept of experiment five. We found that we need to develop more for the concepts and we also want to add a little bit more challenge to the code. We did some research http://richardhayler.blogspot.com.au/2016/04/getting-started-with-adafruit-feather.html  and found that there is an art project which can detect how many Wifi routers around us and change color.


We think it’s pretty cool especially as a wearable device because the user can be more aware of the invisible internet environment. We considered what the best materials would be for the job and ordered some LED strips off amazon. Unfortunately we later realized that they were 12V not 5V and had to cancel and reorder putting our supplies order behind a day. Thankfully, Kristy offered to bring in some LED strip for us to use in the meantime. So we just used the 12V led strip with an external power supply to make the code working.

Here is the fritzing diagram to connect 12V led with photon board.


IFTTT has a trigger app for particle photon, it can call a function each time when a specific hashtag from Twitter. Photon is very convenient to use, code can be flashed through wifi, which is very useful for us to debug and adjust. The little difference in particle IDE is that each function is called in integer and not inside the loop.


We did some thinking about:

Why do we want the emotions of the internet to be worn?

Who would want to wear this?

What shape and form will this device take on?


Day 3

– Compiling a table for materials, cost, and suppliers.
– Discussion:
Wearing the emotions of the internet translated into colors
Showing the strength of one’s connectivity to internet through intensity of color.

Interesting discussion between Jad and Quinn

> Conclusion: both concepts are slightly similar, combining both speak to the same concept:
So we decided to use the color scheme to translate the emotion, and its intensity to translate the strength of connectivity to these emotions.


Day 4

Quinn bought materials at a fabric store to start prototyping the design of the necklace. We purchased faux leather, crepe and some black mesh. We began creating the fabric tubing to encase the LED and diffuse the light. We went through a few iterations of production of creating this tubing. White glue first – not strong enough. Sewing – too time consuming and not in our skill set. Hot glue – this method worked and allowed us to ensure a secure connection of the fabric in minimal time. We created 3 4 layer white fabric tubes to hold the led section of the necklace. We then began sewing the clasps onto the leather pieces deciding if we should place them at the back or connect them to either side of the battery pack/photon. Quinn has to go home and use the sewing machine at home for this.



screen-shot-2017-12-13-at-15-24-11 screen-shot-2017-12-13-at-15-24-16

We also developed the code and develop the Wifi connectivity. We found an example code of getting RSSI ( relative received signal strength in a wireless environment) from photon board successfully had it dim at different wifi strengths by connecting a single LED.


Reference for the pic above:


It’s a bit awkward to hold an opening laptop and walk around because we need to keep an eye on the screen which will print out the RSSI value so we can get the right range in our environment and also be more aware of those numbers. We even tried to use a metal plate to block the wifi signal but which didn’t really work.


After few testing, we found that -20 is the maximum wifi signal and -80 is the minimum wifi signal. We incorporated a new variable (rssi indicator) to do this. We also changed and added the hashtags #mad #disgusting #happy #sad #scared to play around with what hashtags are more effective at gaging emotion.

Example code for wifi signal


Day 5


On this day we began to move on to the protoboard and consider what the best way to run our circuit was. In class we soldered header pins onto the protoboard so that we could move our photon on and off the protoboard. We were still waiting for our led strips that were late so we had to wait until monday to test the circuit, especially the battery power, with a 5v strip.


We developed the design and sewed some initial prototypes of the faux leather. We realize that the battery pack weighs more than the photon and anticipate this being an issue. We tried using clasp but considered perhaps sewing or velcro will be better.

-moved onto protoboard

-added the hashtag #ew


Day 8

Our LED strips came and we were able to test them using the battery and they work great! Additionally the original circuit we used that had 3 transistors – we no longer needed. This really cut down our protoboard soldering time and allowed us to put the RGB/Ground pins directly into the photon. Then we just needed to wire the battery packs. We opened up the plastic casing and soldered longer wires to the pack so that we could wire to the photon through the white fabric tubing.


The old code can work by just calling each function, however, we did find problems when we begin to make 3 necklaces changing color at the same time. The old code need to set up 3 individual IFTTT accounts to work with 3 particle accounts, which is quite stupid and also caused those apps crashing in IFTTT (functions can only work when Photon board is online). So we looked back the IFTTT again and found that they can also publish a public event that any photon board can subscribe to it and the apps can keep running all the time! So we put different value for different emotions and we can just write statement for each one to be just one color.



screen-shot-2017-12-12-at-17-51-46 screen-shot-2017-12-12-at-17-51-40

We have another problem of the changing color today, it’s not turning into the right colour as we set for each emotion. So we start checking the soldering from led strip and debugging by command out everything else but remain one color. And we found a very weird issue, the RGB value totally reversed for some reason! But it worked perfectly with the 12V led strip before!

We are not sure if it’s the case that we soldered the led strip from the other side or maybe it’s a bad manufactory led strip? Red should be (255,0,0), but it turns out to be blue from the led. We have to manually do math and reverse each RGB value to get the right colour.


Day 9

Today we continued to put together the necklace. Just like in the fashion design industry we used paper to sketch the size of the necklace on the neck and chest so we know how long each piece of fabric should be.
To make things symmetrical Jad folded a paper and sketched one side then unfolded it and then cut that piece of paper to trace it on the fabric before cutting it accordingly.
We know the electronics could be heavy for those fabrics so we followed a design that sit on the chest like a cleopatra necklace


We cut the silver leather in U shape and to balance weight volume, Jad thought the batteries could be on one side and the microprocessor on the other side.
Quinn made the back of the necklace from three braided pieces of leather so the design would be simplistic from the back and highlight the front.

screen-shot-2017-12-13-at-15-37-57 screen-shot-2017-12-13-at-15-38-06

Day 10

We measured the estimate length of the necklace from the lower side because this will help us know how long the LED strip should be as well as how long the cord of the battery case to the Photon should be. Through trial and error we succeeded in defining the right length and went on joining the wires from one side to the other and leaving some space for the micro processors as well for the batteries case to hide them in a way that doesn’t interfere with the design and make it non obvious where these parts are within the necklace.

Jad realized before assembling the fabric and the electronics that too much weight won’t allow the necklace to sit in a round shape on the chest and there must be an incorporation of some sort of support to keep it in shape and together. As we assembled the pieces the concern was validated as the necklace was droopy and not in a good shape. Jad then cut a piece of cardboard in the U shape of the necklace and glued the fabric to it and that helped in solving the whole issue. The necklace now sits flat and comfortably on the chest without problems. screen-shot-2017-12-13-at-15-38-19

Day 11

Before we glued all the pieces together, we thought ahead of the problems we would face when changing batteries or resetting the microprocessor. We needed to have some sort of mechanism to remove the batteries and replace them so we thought of velcro as the best solution.


The batteries case is now covered with a flap that opens and closes which is great.

But the on/off switch in on the other side towards the cardboard that it will be glued to. Jad then cut a little square that allows the user to switch the batteries on and off very easily from the other side.



The batteries case is now secure on one side, and the same for the microprocessor on the other side and in between the LED lights strip and of course the wire that goes from the batteries to the microprocessor.

Now we were able to stitch and glue all the fabric and pieces together. And cover the whole with the black mesh that Quinn found in the fabric store.

We wanted that net or mesh to make a cloud effect so it diffuses the color of the LED and make the whole necklace light up as one entity so we had to hot glue that mesh from the back of the necklace to the cardboard in a folded arbitrary way so it creates that intended cloudy effect.


So on the other side it looked like so: screen-shot-2017-12-13-at-15-38-42

And for camouflage of the squarish battery section on the right, Jad thought of adding a rosette made from the same mesh material on the right and two thin bands on the left.



Final Product:

screen-shot-2017-12-13-at-15-38-53 screen-shot-2017-12-13-at-15-38-58

We also work on the RSSI part of the coding today, it’s quite frustrating to figure out how to define the analog pin from the example code as it seems like analog pin is defined in RSSI function and we are using three pins for RGB which is quite difficult to do so. Beyond that, it’s not very visible for people to see the difference of the brightness of the led strip. So we changed our plan to visualize the wifi strength by the blink rate of the led, when wifi get strong it will blink fast, when wifi get weak it will blink slowly. We remapped the RSSI value between 1 to 5, which is more easy to work with led blink rate.

Day 12

It’s our last day to finalize the physical part and code part of the emolace.


Day 13

User Testing day!

Emolace – User Testing Plan

Repair Kit

  • extra batteries
  • needle and thread

Our using testing plan is to test the 3 devices separately and record our experiences through a form that will be answered every 3 hours. Participants are encouraged to document moments that stand out to them but try and do daily tasks and functions they normally would.

Short vlogs documenting experience.

Testers will take short ten-fifteen second video logs recording their experiences and concerns. This is for moments that cannot be captured in the form.

Form to be answered every 3 hours. For a total of 4×3 responses.

  1. How aware are you of the necklace?
  2. Is it comfortable to wear?
  3. Do you feel a connection to the changing colours?
  4. Does this connection affect how you feel about other events in your life?
  5. How does the reaction of other people impact your experience with the device?
  6. What questions are they asking?
  7. Were you aware of the changing brightness of the LEDs, did this make you aware of the spaces you were in?
  8. Additional comments obstacles experienced.


Jad’s videos:


Yiyi’s video:



Quinn’s video:


Link for questionnaire



Evaluation and Future

For future iterations of this design we are interested in considering new means of data collection as well as improving aesthetic elements of the necklace. The current approach to collecting data uses hashtags on twitter in english, which can be limiting to the scope of data collected. As suggested by colleagues during our critique and reflected on after, the addition of location specific data collection or alternatively the expansion of hashtags used could create a more effective demonstration of emotion. Aesthetically speaking we are interested improving the balance of the design through more considered weight distribution. The distribution of weight is currently on one side (the battery pack side) and the investment of smaller batteries could create not only a more comfortable design but a more sleek one. This ability to size down some of the hardware aspects of the necklace will result in a design that is more portable and wearable on an everyday basis.



In conclusion, our groups desire to create a fashionable wearable that shared the emotion of the internet and demonstrated connectivity was successful. We were able to learn about production of multiples and design considerations when dealing with hardware. Throughout user testing we were able to collect data on how we, as users, and others, as viewers, perceive our device. This valuable information allowed us as as group to consider the future iterations of the wearable and think about what is next for EMOLACE. Thank you!

Experiment 3 – Emotions of Internet – Yiyi Shao


Check out the website here!

Project Description

Internet created a cyber world for people to live a second life, which also created a space for people to express their emotions and feelings, especially through social media. If we see internet as a huge container, it is gathering every users’ emotions in every second. If you ever wondered how everyone in this world is feeling right now, this project will give you the answer. It reads particular emotional hashtags from twitter. When most people tweet about sad, it will draw random blue eclipse in the website canvas and light up an cloudy led which presents a teardrop coming from the “internet container”. When most people tweet about happy, it will draw pink rectangle instead and turn off the led. In this project, I considered the interactions and relationships not only between human and computers but also between physical world and cyber world. Every users are participating in the interactions and be part of this project. It also complete the transformation of emotions from physical human feeling to digital form of hashtag and come back as a whole in physical form of a tear drop and visualisation in the website. This world is bitter-sweet, there must be some points in your life that in a really bad mood, but so does everyone else! Hope next second you will be happy again.

About Me 

Yiyi Shao is a digital artist from China and interested in interaction design, motion graphics and VR. She is doing her Mdes in OCAD University and very passionated about the combination of cool technology and arts.

Project Journey

Day 1

We were given a new assignment today about Peripheral Experiment, I always want to explore new type of technology to create project. So my aim for this experiment is to go as far as I can to experience something that I never tried before.

After some research, I found there is a really cool levitation system which can work with arduino. So I came up with an idea of using wind speed data from weather API to control the floating plant.

Inspirations and examples online:







Here is my sketch:


How it will work:


image source:


Feather board will connect to one hall effect sensor, one solenoid with electronic current and one small fan (external force to make plant spin). A website will read weather API of the wind speed and transfer the data to feather board.

My attempt process:





Although I successfully made the electromagnetism, but it never levitate metal or any magnets I got. I don’t have device to measure the magnetic force to let them stay in a balance, so I have to switch to another more practical idea.

P.S: Don’t use your hand to touch the electromagnetic object, it will make you sick…

Day 2

I switch my idea to use water pump and DC driver. Water is a very interesting material to work with, it’s flexible and capable with lots of sensors, so I camp up two ideas as following:

Idea 1: Still working with weather API, but not sure which types of data to use, maybe the the possibility of rain.

Idea 2: Completely change my input, using twitter service in IFTTT. Every time people tweet something about sad, the water will drop.

I really like the second idea and I think it’s brilliant, so I decide to keep going in that way and I literally ran to Creatron to buy the stuffs I would need (A 12V liquid pump, 5V driver, 12v power supply with wire).

My new sketch:


How it will work:

When people tweet with “#sad”, IFTTT will send a trigger to Adafruit IO then pass it to P5.js, and finally through SerialControl to turn on the DC driver which will eventually make the pump to drop water.

Fritzing diagram:




My first attempt create an absolutely disaster and split water every where on the table,which almost destroyed my laptop and feather board.img_7158

But finally the water pump works!


Day 3

Today I am working on the IFTTT and p5.js. I have set up my IFTTT recipe to get data from twitter and send message to Adafruit IO. I change the message from “On” to “1”, which is more easy to use. Then I used the class example to test on the LED light. After the meeting with Kate, I realised there will be a problem for this project. Every second there will be at least 15 tweets about sad and my output will be always on. I would need to make a threshold or counter to set a critical value. For example, every 5 seconds, if there are more than 100 tweets about “#sad”, then my output will be triggered.



Well, I spent my rest of day try to figure out the logistic flow but no luck. So I move to build my container to which will hold everything inside including a small container with water, DC driver, water pump and feather board.



Day 4

I talked to Feng today about the timer and counter function, she suggested me to use a function called setInterval, which will trigger a function in a certain period of time. But the difficult part is, every time after a counter called, it must go back to zero and count again. So the logistic is, the counter  need to count and save the incoming data inside an empty array, and then this array will be empty in a particular period of time by using setInterval.

This part confused me a lot and I never get it right. I even asked my friend from Computer & Science for help, we spent 5 hours to work on the counter and timer function and finally make it slightly work. However it didn’t turn out to be the in the right effect as I expected.



At this stage, I don’t have many time left to finish this project. And another idea just pop up into my mind which just saved my life. All I want is a “0” to turn off my output, why not just add it from my input? This world can’t be sad all the time, there must be happy somewhere right?


screen-shot-2017-11-13-at-00-21-49 screen-shot-2017-11-13-at-00-22-06


After I add the happy feed to IFTTT, everything works normally now! I finally tested my LED, and it can be turn on and off based on the input from IFTTT and Adafruit IO. I was so excited and quickly replace the LED with water pump and DC driver, after I uploaded the code(wrong one, it’s actually the code for LED) to Feather board I heard weird sound coming from water pump and it eventually burned and can’t function anymore. I googled online and then realised the motor is really sensitive can easily get burned. It is also risky to use 5V motor to work with 3V Feather board. It’s the last night, So I have to alter the idea of using LED in the end.

Reflections and Evaluations


I tried and learnt lots of new things and went out off my comfy zone in this experiment, it challenged my personal abilities. The whole process aligned with the main concept of this project, which is sad but also happy. The sad part is that it didn’t turn out as what I expected for the final result, but for the happy part is that I tried my best and learned a lot as I said before.

For the future of this project, It definitely has a lot to improve. I would like to make the water pump work, and I think I will also keep the LED part. The visualisation can be even more tie in with the sad and happy concept, maybe the contents of each tweet can be also placed in the website. It would be also great to work with Kylie’s plants project like what Max said in the class. The tear of Internet can water a plant and give its life, it reminds me a quote which is saying “Without rains, nothing grows”. The concept can definitely develop more like more considerations of how to prevent the plant to be too dry or too drowned.

My code is available at Github.