As we spend more and more time on computers, especially laptops, whether for entertainment or work, the long and dreadful list of injuries and syndromes keep getting longer and more real. Maintaining a bad posture for too long can cause injuries that in some cases can be chronic and extremely painful. So, building on that logic, the need for creative solutions for workstations and workstyles to maximize productivity and minimize side-effects has never been higher. As a result of this, I decided to use assignment 4 as an opportunity to explore what I believe the right approach is and build a prototype of that tool based on my own requirements and expectations.

Eventually, I decided to create a wooden laptop stand that raises the laptop about 15-inches off the tabletop, which allows the user to raise their heads and keep their neck at a healthier angle. In addition to that, it is highly recommended to take regular breaks while working for long hours to stretch, or use a toilet, etc. So, in addition to improving the user’s posture, I also added 14 LEDs at the bottom of the stand to communicate to the user that their work session is done, and it is time to take a short break. Similar products exist in the market, however, this is a DIY solution that anyone can re-create at home easily and without the need to spend a lot of money.


Link to Video

Link to Code



The main goal for this assignment is to use an ambient information system that acts as a timer for work sessions. To achieve that, I added an LED strip of 14 LEDs that would communicate to the user, through colour, that the 1-hour work session is finished and it is time to take a break. I decided to follow Pousman et al’s guidelines for the ambient information system in order not to interfere with the user’s focus and get their attention when needed.

In addition to that, another main objective of this project is to make sure it can still be considered a DIY project that can be disseminated online and shared with makers around the world. To be a successful DIY project, in my opinion, it has to be scalable to fit people’s needs and capabilities.

Design Process

Initial sketch
Initial sketch

First, I started by figuring out the dimensions of the stand. I decided to raise my laptop screen by 15-inch because that was sufficient for my desk to keep my neck at a healthy angle rather than keep bending it downwards, which the usual posture using a laptop. For the dimensions, I decided to go with a size that fits a 17-inch laptop screen, I own a 15-inch MacBook Pro, which is sufficient for most laptops available today.


I decided to use wood because durability is something I care about deeply as a designer and wood is both strong and durable. Also, this stand will be used on tabletops and since most tabletops are wooden, a wooden stand is more consistent and less distracting to look at while working.

I decided to create a 4-legged rectangular stand because the four legs ensured four fixed points which are needed when using a laptop. After some trial and error, I realized that for a laptop stand, it is much better to rely on four legs because with 3-legs, the laptop was not stable enough and when both hands are used, can become really unstable.

A diagram of the circuit I used to build this tool
A diagram of the circuit I used to build this tool

After building the stand for the laptop, I started preparing to install the LED strip at the bottom. At first, I was just going to glue the LED strip to the bottom of the stand, however, after some trial and error, I noticed that the LED light are too overpowering based on Pousman et al’s guidelines. So, I decided to build a base for the LED strip that tilts the LED light inwards and deflects the light from the user’s foreground to the background.

Coding this device was a real challenge for me because, until this assignment, I have not been able to fully back an LED strip. With the help of Adafruit’s NeoPixel library, I was able to define each LED in the strip and give it different values at different times. Originally, I wanted to blend the colours and have them slowly change over time, I could not figure it out and after long trials, I decided to use a different approach.

For testing purposes, I have another set of intervals made of 2 seconds each
For testing purposes, I use a testing set of intervals made of 2 seconds each
A selected colour had to be assigned for each interval by assigning a colour to each LED in the strip at each step
A selected colour had to be assigned for each interval by assigning a colour to each LED in the strip at each step

Using Illustrator, I identified a specific spectrum of colours that I want to use to communicate time. Then I divided the hour into 12 intervals and assigned a colour for each interval. Starting with greens then blues then magentas, the user can tell in which third of their work session they are in and roughly how long they have until it is time to break. In the code, each interval was assigned 300,000 ms duration and a colour and using the “millis“ function, the program switched from the first to the last colour over an hour period.


Tools & Materials Used


Arduino Uno

LED Strip – 14 LEDs



The biggest challenge I faced with this project was hacking the LEDs fully. My aim was to assign two colours for the beginning and end of the duration and have the Arduino program blend between those two colours. However, after constantly trying, I decided to give up on that idea and pursue something more tangible and achievable.


Critical Analysis & Future Steps

In general, I am happy with the results of this experiment considering the requirements and expectations I set at the beginning. However, the choppy colour change between the colours is distracting and does not meet my requirements for this tool. So, I plan to continue looking into more ways to control LED strips, and find more blending options. When I tried to use the Adafruit NeoPixel library, my attempts to repurpose it for this project did not work.

Also, I want to consider looking into covering the LED with an acrylic sheet or another material in order to hide the strip and smooth out the light.




Explorations in Thermo Fabrics: Painted Patterns and Threads

For this workshop experiment I mainly worked with thermo paint and dyed fabrics that changed to white when introduced to heat. This was perhaps my favourite workshop yet! There is a lot that could be done with thermo fabrics and creating painted prints that react to heat.

Figure 1. Dyed thermo fabric threaded to thermo painted design with thermo thread to reveal a white trail from electro current. (Paint was blue but later turned white.)

I was mainly playing around with print designs but conceptually I was playing around with the concepts of narrative and tried to translate that into this narrative. My workshop sheet explores these ideas based on the questions provided.

Figure 2. Worksheet #4.

I threaded the painted design thermo fabric to the dyed fabric piece to attempt this. Simple at best, I wanted to see the heat run up or appear to the painted design to see the change in colour.

Figure 3. Close- up shot of dyed fabric changing from electro current.

It’s very faint, but in figures 1 and 2 you can see the colour change in the fabric dye on the right side. I was also very fascinated by the different colours of thermo paints and dyed fabrics I could work and design with. I mainly experimented with thematic paint and thread and thought about the heat creating cool prints and designs based on the thread design.

Figure 4. Power voltage used to attach to thermo thread.

I noticed the paint camouflages to white when met with heat. I unfortunately blew my Arduino micro when I accidentally ran a pretty high voltage through it. (and burned my finger.) Causing the chip to overheat on the micro to overheat.

Running it through the the plug directly I was able to see the heat change.

Figure 5. Thermo paint changing white after receiving voltage.
Figure 6. Thermo paint changing white after receiving voltage (not so much change happening in this shot though.

If I were to do this again I would try again with some interesting heat patterns just with thread sewn into the the dyed fabric to reveal the patterns.


Reminder String with Bracelet

Experiment by: April De Zen


The purpose of this assignment is to create an ambient reminder, taking that into consideration I thought it would be neat to update the old string on your finger trick for reminders. The new twist would be having the string change colours on your finger to remind you. Since this will need some battery power, I added a bracelet to the design so the ring wouldn’t become bulky.

Materials & Tools
Thermochromic pigment
1 roll of conductive thread
1 roll of resistive thread
1 roll of regular thread
1 roll of yarn
1 piece of sheet felt
3x 3V round battery
Sewing needles
2 Alligator clips
DIY French knitting kit

Workshop and experiments
In class we experimented with Thermochromic pigments. We dyed fabrics and threads and blended the pigments with white paint as well. We tested how resistive thread can be used to send a low current through the pigment in the fabrics to change the colour.

Creating the wearable
After formulating my idea, I started making it. First using a DIY French knitting tool (link to instructions) I created the base of the bracelet and left extra yarn on each side to create a ring. My 1st bead was to use the resistive thread and use my friendship bracelet making skills to weave the thread into the yarn (link to friendship bracelet instructions). Once the thread was incorporated into the yarn I could start testing to see if the colour would change to white and how much voltage I would need — at least that was the plan.

screen-shot-2019-02-14-at-10-40-06-am screen-shot-2019-02-14-at-10-36-06-am

1st Failed Attempt
Turns out, the pigment on the thread brushed off if you handle it to much so as I was weaving the tread the pigments change right off and there was no colour left on the thread. I still ran a line of conductive thread for the resistive thread through the bracelet because I was convinced I would find a way to fix the colour issue.


2nd Failed Attempt
Disclaimer: DO NOT DO THIS.
I had a thought that I would try painting the pigment on and for some reason I thought I would use the conductive thread instead of the resistive thread. I thought it would work better…
I wove the conductive thread to the yarn and painted the pigment on. When I tried to test it, it sparked immediately and blew out my batteries. Bad idea.


3rd Failed Attempt
Back at the studio, I got my hands on some more pigment mixed in water do I could try dying the 1st attempt to bring the colour back. I thought this worked, it was bright blue and looking amazing. When I tested it, the thread turned white just like it should but when it was disconnected it didn’t go back to blue. It stayed white. Another fail.


4th Attempt (not ideal)
Out of complete desperation, I another took a test piece of yarn and 5 strands of resistive thread and quickly knotted the yarn with the thread. Then I painted it to see if this would work. Maybe I could still save my original prototype by painting instead of dying the thread. Upon testing, it looked like it would work so I have it a go.


Next Steps
I don’t know if I even want to take this any further. It is a cool idea but the truth is, changing from light pink to white has no impact and is barely noticeable. The out come really doesn’t warrant this much work, in this case. Not sure if it’s just a bad batch of pigments or if I missed an important step to setting the colour but I really didn’t enjoy this medium.

Activity Nudger

The concept:

The Activity Nudger light is a desktop companion that notifies a person working at their desk when they have been sitting for more than an hour, gently nudging them to get up for a few minutes. The device works with an on-off switch mechanism that controls the two states a person can be in. i.e Stationary Mode and Mobile Mode. While in Stationary Mode the device lights up white with a yellow ring and when in Mobile Mode, it glows ambiently in a greyscale color scheme slowly changing colors from black to white.

The design / Worksheet:


  • Display info that is important but not critical:

Activity nudge shows the user time information in a visual manner. It informs them that they’ve been working for at least an hour and are due a break. The info is not critical in that, if the user feels like they are not ready for a break yet, they can simply reset the Stationary mode by pressing the button to toggle the state. Ignoring the device, does not result in any critical side-effects.

  • Can move from the periphery to the focus of attention and back again.

When the device is in Stationary mode, it is in the periphery as no animations are happening, allowing the user to focus on their task at hand. When it switches into mobile mode, the ambient nudge, gently notifies the user and becomes the focus of attention. However, the user can with the click of a button, switch back to stationary mode thus shifting the device back to the periphery.

  • Focus on the tangible; representations in the environment

It is also a small, portable device that sits atop one’s desk and blends into the study/work environment non-intrusively. When it is off, it still blends into the desk environment as it looks like a small book.

  • Provide subtle changes to reflect updates in information ( should not be distracting)

The Activity Nudger stays white in stationary mode and when in mobile mode it lerps through a greyscale color scheme that it not distracting to the eye as it gradually changes going from white to greys to black with the yellow ring turning white as an additional indication of state.

  • Aesthetically pleasing and environmentally appropriate

The book theme fits into the office/study environment. Additionally, I would like the glass for the book to be frosted so that the ambient lights are even more muted and less distracting.

Low-fidelity Prototype:

Parts list:

  • Arduino Genuino Micro
  • 1 concave pushbutton
  • 1 single LED light
  • Jumper cables
  • Breadboard
  • 220 Ohms resistor
  • 10k Ohms resistor

screenshot-2019-02-14-004120Circuit diagram created on web app.


Arduino code:

The Arduino code for the device monitors signals from the push button and passes data to a Processing sketch over serial communication. Using an if condition, I toggle between the Stationary & Mobile state whenever the button is pressed.




Processing code:

The Processing code alerts a user to get active by creating an ambient nudge notification that tells them they have been stationary or working on something for at-least an hour. During testing, time was sped up to switch the state from stationary to nudge for mobile after a minute. When designing your own activity nudge use the time values you desire. I user 60 steps for 60 seconds a min and 60 min and hour, I user 1000 to represent 1 second. For an hour change this to 3,600,000  in the millis() check.

When msg is received over serial communication in serialEvent(), the string is split into an array and then depending on the state i.e 1 = = Stationary and 2 == Mobile, the isMobile boolean value is then set. This is what the draw loop determines to which animation to draw.

In my draw loop I use the millis function to run at set time intervals and change the background from black to grey in the Mobile state. In the Stationary state, the millis() check is used to figure out when to trigger the ambient nudge notification if a user has been in the Stationary state for atleast an hour or when testing atleast a minute.






When you need to run algorithms that happen over time – it is better and more efficient to use the millis() function. I had attempted to use a for loop and count down from a specific number to determine what color to make the ambient background, however this didn’t work because the loop still ran too fast and i couldn’t get the gradual change in colors and millis() gives a much cleaner solution.

Found a nice circuit diagram creation web app:


Github link to code: here

Performing an action every x-seconds : here


Keep Walking!

Slow Technology Activities

During class workshop we worked on preparing thermochromic items; we dyed thermochromatic fabrics and resistive threads, painted fabric with acrylic mixed thermochromic pigments, and made our own screenprinting templates. Later, we sewed thermochromic threads to dyed and painted fabrics to test slow technology when actuated by heat.

We studied Pulse Width Modulation that is used to vary the output power between 0 and 255. Then, we experimented this feature with an LED light using Arduino “fading” sketch to make it fade in and out and then we tested making it fade faster and slower by modifying the increment value. We tested PMW again with for a slow vibration motor using vibration_PWM.ino sketch.

 Class workshop documentation:







Ambient Device Concept


I want to design an ambient notification device that aim to improve daily walking activities. This can be achieved by making a smart carpet with embedded resistive pressure sensors to detect our gaits. When someone walks across the carpet, the sensors actuate notifications.  The slow technology I’m proposing will use weaved Shape Memory Alloys, looks like a wire mesh textile, to create a wall sized ambient display that gives info about people walking activity via 3D volumetric morphology. This informative art piece is best to be hanged on the wall of the main living room of the house.

Because I don’t have shape memory alloy available, I tested gradual actuation using thermochromic fabric and threads for ambient  notification. The same logic and programming code applies for gradual actuations in shape memory alloys. Below are some resources for researches done by others, in addition to inspirational images that explain the trajectory of my design intentions.

SMA Smocking

Functional textiles driven by transforming NiTi wires

Inspirational images of wire mesh sculptural art by Eric Boyer and Bonnie Shanas



Thermo‐responsive shape memory alloys are able to adopt a temporary configuration and return to their programmed physical shape when heated to a determined activation temperature.

SMAs are treated to memorize their shape at considerably high temperatures (450 C – 550 C).  To get to an aesthetically sculptural form, the woven wires can be fixed to a cast and then placed in the furnace for 15 minutes in order to memorize its artistic volumetric form.

This informative art is displayed whenever family members are walking around in  the house. When people are inactive, the sculptures will look flat and dull. When the art piece looks dull, then it’s a reminder to get up and have a small walk to bring back its beauty. Technically, when there’s no electric current, the corners of the art piece will be pulled away slowly through a pulley mechanism to flatten the sculpture. And when the sensors are activated by people walking on the smart carpet, this will actuate the SMAs to gradually shrink back to their memorized sculptural form. The shrinking force must be greater than the pulling force.  With this slow ambient notification device household members are encouraged to keep walking in order to maintain the aesthetics of the 3D wall art.

Circuit schematics:


Arduino Code:



Next steps:

This project explores ways to make wall art and sculptures alive, interactive and functional. I aim to make a higher fidelity prototype to be tested at all different stages. first stage is weaving the SMA nitinol wires, then try training them to give them a 3D cultural form. I also want to explore options and mechanisms for flattening the sculptures when they’re not actuated. Wiring and connections should be well studied and hidden in order to enhance the aesthetic visuals.

Wake Up Curtains

Timer Curtains
Workshop #4 Notes
Olivia Prior

Demo of the wakeup curtain pattern.
Demo of the wakeup curtain pattern.

Timer Curtains are curtains that use thermochromic paint to allow light into a room by gradually removing the colour from the pigment on the patterns of the fabric by using electrical voltage.  The heat from the voltage turns the painted pattern to white which allows for more light to enter the room. The curtains are activated by a timer or an alarm that allows the user to set either a time to wake up or to set a time that they would like to get up and take a break. The patterns gradually remove themselves one by one, so the transition from patterned curtain to white is an ambient experience. This allows for either a slow wake-up or slow reminder to that a break is coming up.

With this project, I wanted to create a product that used patterns as a form of time telling. Upon exploring the thermochromic paints I was curious as to what would happen if you made multiple tiny patterns and could control them individually. I had painted dots onto a sheet and it reminded me of the UI/UX pattern of “loading ellipses” you often see on websites. I wondered how you would be able to use this known UI/UX pattern into the physical world as a notion of timekeeping, but also keeping the connotations of a moment “loading”. I wanted to see if it was possible to gradually remove the dots over time to create a white sheet, to explore the applications of this method, and to see if it was an effective use of a clock.

Workshop notes & ideation write up
Workshop notes & ideation write up

Process & Explorations
I started off by painting patterns using two colours of thermochromic paint. I initially wanted to test how far the heat from the voltage could spread along one colour before bleeding into the adjacent colour pattern.

The patterns painted with thermochromatic pigment.
The patterns painted with thermochromic pigment.

I created multiple different patterns on many sheets of white fabric, and once dry sewed some resistive thread through the different colours.

Resistive thread stitched along the length of one of the pigment colours.
Resistive thread stitched along the length of one of the pigment colours.

I attempted to run 5V power from my Arduino to the sewn thread using alligator clips that were simply connected to power and ground. At first, I saw no change. After seeking some advice, I realized that the distance of the sewn circuit was a big factor in the amount of heat that would be dispersed through the thread. The longer the circuit with a lower voltage, such as 5V, would only be seen if the circuit itself was small.

I adjusted the placement of the alligator clips to the first few stitches and immediately saw a difference.

Demo of heat from the circuit changing the pigment on one small part of the circuit.
Demo of heat from the circuit changing the pigment on one small part of the circuit.
Back view, showing the alligator clips attached to the resistive thread. The heat from the current has changed the colour of the pigment form the back.
Back view, showing the alligator clips attached to the resistive thread. The heat from the current has changed the colour of the pigment from the back.

I tested to see if I could make the thermochromic paint fade in an out be connecting the power to a digital output pin on the Arduino. Then I made the delay twenty seconds between turning the power on and off on the pin. In the video below you can see a slight change in the pigment.

Video if thermochromic pigment changing from the heat of the circuit. 

With this knowledge and the set of tools that I had, I assessed the pieces that I painted. I saw that the dots each had a small surface area and came across the idea of slowly fading out the dots individually as a form of an ambient technology. The dots could be used as a timer: the user could set an amount of time, and the dots would slowly fade out. The dots once “vanished”, would indicate that the time is up without interrupting any thought. In terms of installment, I envisioned this pattern on windows curtains. As the dots turned white, they may gradually let in more light into the room and giving the illusion that the person who set the timer should go outside for a break. If the changing of pigment let more light into the room, the curtains would extend the act of ambient notification from simple pattern change to a lighting change in the space.

Envisioning the dots on a full length curtain. There are currently around 60 dots on the curtain, to symbolize minutes.
Envisioning the dots on a full-length curtain. There are currently around 60 dots on the curtain, to symbolize minutes.

I sewed small stitches along the length of each dot to start. I then clipped an alligator clip onto the power and ground of each dot. I made sure that the dangling threads did not touch each other as I was aware of the small working space I had created for myself. Reflecting upon the soft circuits project, I did not want to have a clean workspace.

Close up detail of the resistive thread sewn into the dots.
Close up detail of the resistive thread sewn into the dots.

I then moved each of the pins into the Arduino digital pins and ground. I made my code turn on a new pin every five seconds. The change of the pigment was gradual but effective. Nearly the entire dot had disappeared.

The dots changing colour from the circuit.
The dots changing colour from the heat of the circuit.
Screenshot of simple code used mock up the dots fading in sequential time.
Screenshot of simple code used mock up the dots fading in sequential time.

Diagramming for future iterations
I started to consider how I would be able to expand this project further and to place emphasis on the concept of a clock. I sketched out some process ideas of how this could operate and look:

Envisioning the dots on a full length curtain. There are currently around 60 dots on the curtain, to symbolize minutes.
Envisioning the dots on a full length curtain. There are currently around 60 dots on the curtain, to symbolize minutes.
Envisioning the dot curtain in action. The dots slowly disappear in correlation to the time that was set for them.
Envisioning the dot curtain in action. The dots slowly disappear in correlation to the time that was set for them.
As the timer nears the end, the dots have nearly all faded.
As the timer nears the end, the dots have nearly all faded.
Once the timer finished, the dots would all be completely faded.
Once the timer finished, the dots would all be completely faded.
This pattern envisions the dots in a clock like formation, to very physically represent time.
This pattern envisions the dots in a clock like formation, to very physically represent time.
This curtain envisions what "would happen if the curtain was entirely covered in pigment?" The curtain is striped and the thread would be sewn down the patterns to slowly fade out the stripes.
This curtain envisions what “would happen if the curtain was entirely covered in pigment?” The curtain is striped and the thread would be sewn down the patterns to slowly fade out the stripes.

In these images, I had included two colours of pigment on each dot. Aesthetically speaking, I really enjoy the complimenting colour contrast of both pigments. In my first trial (the “rainbow” pattern), the bleed of the heat from the voltage did not breach onto the second colour due to the width of the brush stroke. Having different colours fade in and out at different times could be used as different types of timers or indicators.

Other use cases for the combination of thermochromic pigment and curtains.

  • Inspired by Harry Potter, the curtains could be used as a “remembrall”. The remembrall is a device that changes state when the owner needs to be reminded of an item of importance. 

Scene snippet of character Neville Longbottom using a “Remembrall”

  • Wake up curtains. The curtains could be given a time and aid in an ambient wake up, similar to the Philip’s Hue Lights wake up on alarm function.
Two images of the Philip's Hue Lights interface for the wake up and go to bed "routines"
Two images of the Philip’s Hue Lights interface for the wake-up and go to bed “routines”
Two images of the Philip's Hue Lights interface for the wake up and go to bed "routines"
Two images of the Philip’s Hue Lights interface for the wake-up and go to bed “routines”
  • Stopwatch: the opposite of a timer. Once set, the pattern could fade in rather than fade out. The pattern could reflect time passing, rather than counting down.
  • The different colours could reflect different weather outside. If the temperature is hotter, the blue could fade away, or vice versa with the pink hues.

Questions to consider for future iterations

  • How would one interface with the curtains? Would there be a web app that they could use to indicate the timer? A button, potentiometer, and LCD screen combination for changing the time, or starting, and stopping the process?
  • How dense does the pattern need to be to affect the light in the space? If the curtains do not affect the lighting of the space, does the fabric need to be hung like a curtain, or could it be a wall hanging?
  • How could the wiring be improved for the patterns? The length of the connections affects the heat generated from the circuit, which would ultimately affect the fading of the pattern. Would using conductive thread and having short connections to multiple power sources be the most effective?  
  • Would having the curtains alter the user’s position in the room? What if their work station was turned away

 The thermochromic pigment is a very accessible and enjoyable technology to explore within soft electronics. The resistive fabric when connected to a circuit has a very similar behaviour to a switch, which when connected to either bespoke interfaces or APIs allows for endless possibilities of applications. Through exploring the concept of time and curtains as an ambient technology I discovered that power management and circuit management are the most concerning factors in setting up a viable product. These mini-experiments are explorations into looking at the possibilities of how one could add thermochromic pigment as apart of their electronics toolkit. Overall the pigment is a useful tool that has lots of applications for creating bespoke experiences embedded in everyday environments.

References and research 

Kobo Kant write up on thermochromic paint

Example of using thermochromic paint and resistive thread on “soft’ materials in a circuit 


Philip’s hue lights ambient wake up tutorial

The Invisible Motivator

By Veda Adnani

The workspace can be very stressful for most, and often we need messages of security and reassurance to keep us going. These inspirational messages usually form part of our ambient environment in the form of postcards, or cut outs. But I believe that the experience of motivating oneself, is more intimate and private and it can be awkward to have strangers at your desk space analysing and staring at your personal messages, often asking questions that can make the user uncomfortable. The Invisible motivator aims to resolve this issue, with an ambient system that only displays messages to its user on the user’s demand at the push of a button, else camouflages with their environment. It blends into other artefacts that the user collects and displays in their personal desk space.

483aec30-c7fc-4315-8e9a-234f1e4b11bbFigure 1: Completed prototype

38921bf3-c69b-4f17-87c1-cdaf514ec2caFigure 2: Closeup of invisible message patch

4a8d027b-fca1-4acb-af1f-163e575ed097Figure3: In class worksheet

In class

We learnt how to work with multiple forms of thermocromic pigments in class, which was an insightful process. We learnt how to make dye, paint and screen print with the medium. This helped us with using the pigment in a versatile manner. I found that these pigments are extremely useful when dealing with temperature sensitive projects, especially wearables. They can also be used alongside other devices like heat pads, as a feedback indicator.

After class I, conducted research on different projects with thermocromic inks to better understand how the medium works and what it can do.


After class I proceeded to test some of the patches we had made with two different stimuli, the first was a hairdryer, and the second was our e-textile tester with 3 batteries of 3v each, which is 9v of total power. I found that the material reacts to the extreme heat of the hairdryer much more instanteously and effectively as compared to that of the e-textile controller.

39977dd3-c0f6-4f62-83d9-d28532081835be82c854-7b46-4312-9665-e79a709c8b71Figure 4 and 5: Testing patches at home with the e-textile tester


For my prototype I used the following materials

– Thermocromic ink in blue

– Acrylic paints both white and blue

– A paintbrush

– A patch of cloth

– Resistive thread

– Basic sowing supplies

– Arduino Micro

– Push Button

– Alligator clips

– Diode

– Modfset

– E-textile tester with 3 batteries of 3V or battery pack


I began my fabrication process by mixing the blue thermorcromic ink with white acrylic paint, and making a mixture of blue and white acrylic paint in the same colour. Once both the mixtures were ready I painted the purely acrylic mixture onto a patch of cloth and let it dry. This part of the prototype is the non-reactive one.

Thereafter I took the mixture with the thermocromic ink and painted a motivational word onto the patch that I had painted previously, and tried my best to ensure that it camouflages into the base. I painted 2 coats of the paint to make sure that it is reactive enough.

Once this mixture was dry, I ran a running stitch of resistive thread across the word. I ensured that it was equally distributed and aesthetically pleasing.

094d9c1a-6b04-428e-a534-43dd7ebb6299Figure 6: Mixing and matching paints (both thermocromic and regular)


ec6abac5-d6b8-46d1-bae1-b59134747b15   59edc86b-39d2-4bf9-b143-e6243efc735d

Figure 7, 8, 9: Painting the base patch, painting the thermocromic message, stitching the resistive thread onto the patch.


I built a circuit with a push button, since I only wanted the message to activate on the user’s demand (or auto display it at fixed intervals of time in the next version of this prototype). For the circuit I took inspiration from a project on by uzarate (link in citations)

Prior to building the circuit with the painted patch, I ran a test at home with a regular patch to see if it works.

f1a20593-21f7-47c3-9a65-6cc72d61e383Figure 10: Cirtuit

4d2aea68-5d26-42a0-b463-29ead0d2faccFigure 11: Testing the circuit at home with a regular patch

(Circuit reference by uzarate on

The only difference between this circuit and mine is that I used the e-textile tester as the second power source with 3 batteries of 3v each within it.


For the coding process, I used a simple I/O code for Arduino. Screenshot below.



While the circuit did work, and the e-textile controller lit up, I feel like the power supple was insufficient, as the ink reacted perfectly to heat from hands and a hair dryer but took sufficiently longer and was slower with this circuit. I am to fix this in the next version of this prototype.

90352083-4375-4257-87b3-875fa82cbe49Figure 13: Cold patch

9047da0e-d986-4ae3-97ce-6946353b2ff5Figure 14: Activated patch


This patch can be placed inside a simple photo frame , even be developed further into a camouflaging patch on their desk wall to minimise notciability for non-users. wWith a push button hidden under the user’s desk at a convenient distance, I envision the user using this prototype as a stress buster during a hectic work day.



Instructables, Uzarate






Snack-time describes a speculative ambient body-centric design project in which people can use it as a reminder.  I am again doing this project for people with diabetes. I know they sometimes forget their snack time in their fast-paced working/ studying environment.  The purposes of this project I imagined working with shape-memory alloys) that highlights when it is time for a snack.

Why this project:

  • We can set alarm on our phone, but lots of people got bored of getting another digital note. Who wants to see another alarm?
  • This product allows them to get some creative input into own treatment.
  • This note- Snack– can vary, and be customized.

attachment-1Above you can see a sketch of my concept.

I have learnt how to shape a shape- memory alloys. You have to give it shape and heat at a high temperature. When it gets colder you can change its shape, When the system works again, the wire gets warmer because it is also a resistor, and gets its original shape again.

Below you can see the low-fidelity prototype of my concept.

I discovered “Fritzing” software. It was my first time using it and found it very useful because I did not have some of the components for the circuit. I

In the image below you can see the sketch of the circuit. The red spring is representing the flexinol (shape-memory alloy).


  • Spreadsheet Data: You can find  here:
  • Hardware: Circuit and Arduino-UNO
  • Software: Arduino
  • Breadboard 
  • Shape Memory Alloy (Flexinol)
  • Batteries (I used a 9V. Don’t forget you need a way to connect it to your breadboard)
  • 1 Voltage Regulator 
  • 1 Rectifier Diode 
  • 1 Resistor
  • Connector Wires (I use alligator clips and jumper wires)




  • Heating code ( here to download): I used it to apply heat on the alloy. I tried to customize it with the code below

int springPin = A1;

void setup()

pinMode(springPin, OUTPUT); // Set the mode of springPin to output.


void loop()

digitalWrite(springPin, HIGH); // Turns on spring.


  • Timer (here to download): I also tried to customize the code by this DTime.ino code. The code itself did not work. I tried to fix it and apply it onto the heating code as well.  I also tried the codes that I found at the library as Arduino-timer, ArduinoThreads, LightDimmer.


  • Learned about how we shape memory-alloy and how it works.
  • Alloy gets its shape by higher heat and voltage.
  • Learned about and used Fritzing for the first time.
  • My knowledge in using Arduino, and reaching the sources still give me a disadvantage.

Information sources:


Next step:

  • I could not make LEDs, memory alloy work (together) with Arduino. Still, I have to work on coding. I am investigating Adafruit, GitHub etc.

You Are the Nature


You are the Nature is the first step towards connecting yourself to nature. The project monitors your heart rate and controls the speed of the flow of water for your office table’s fountain. The faster your heart beat, the higher the flow of water, the more natural sound and the more relaxing your environment. The device helps you to lower your heart rate without taking much for your attention and time.


My goal was to develop a system that helps us monitor our body’s status without requiring much processing from the user. Being that I have always been fascinated with human’s heart rate and how much data there is, I wanted to build something that does the monitoring for us in the background and shows us the result without giving us any numbers.

But when I got into designing the product, I realized the bigger goal in knowing our heart rate at any time is to monitor,  and I thought wouldn’t it be much better if the design could actually do the monitoring in the background for us without getting us involved in the whole process.

I found that our body’s heart rate is hugely impacted by the sound in our environment. But finding a sound that is always playing without annoying the user is really hard, so I thought how about natural sounds. I decided to build a small table fountain that creates more water noise when the heart rate is hard so that it would automatically lower the user’s heart rate by relaxing them.



I did not have a table fountain nor a water pump, so to get started I replaced the pump with a DC Motor as the pump is simply a DC motor underneath and tried designing the circuit that can control the speed of the motor.

I did not have the heart sensor anymore, so I used a potentiometer as the input that controls the speed of the motor.

The DC Motor requires a higher voltage and current than what the Arduino board can offer with its pins, so I needed to design a circuit that would allow me to use a 9V battery to run the DC Motor and control the voltage using Arduino.

I was able to do that by using a TIP120 Transitorthat was controlled by sending a PWM signal to its base and completing the rest of the DC Motor circuit by passing it through the collector and the emitter legs of the circuit. The base signal basically acted as a switch connect the other two legs together at the rate of the PWM signal.

Part List:

  • Breadboard
  • Jumper wires
  • Arduino Micro
  • DC motor
  • TIP120 transistor
  • Rectifier Diode
  • 220 Ohms Resistor
  • 10K Potentiometer
  • 9V Battery


I talk more about the challenges that I faced in the “Insights” section. What I was able to achieve was to control the speed of the dc motor using the potentiometer.



I initially tried using the feather ESP32 for the project so that the connection of the heart rate values would be much easier using the wifi, but after a deep dive into the coding I realized that I needed to use the PWM of the board, and because of the weird story going on with the PWM of the Feather I decided to use the Arduino Micro instead.

The hardest part of the project was designing a circuit that would allow an external 9V source to power up the DC Motor. I was able to find similar examples to it online, but all of the examples did not work. When I was trying to control the speed of the motor, I was only able to turn it off or on.

I tried writing my own PWM code using digital wite and delay and giving different timings for the delay base on the heart rate value, but the process just seemed too complicated and even after that I was still not able to fully control the speed of the motor.

After a bit of calculation, I found that the resistor value that I was initially using was too high (1K Ohm) and did not allow much current to flow into the transistor’s base. To get more current into the base, I changed the resistor to a smaller one (220 Ohm).  That did the trick, and I was finally able to fully control the speed of the DC Motor.

I can use the same circuit to run any other device that requires higher voltage and current than what the Arduino can offer.

Information sources:

How to build your own Fountain:

How to control a DC Motor Speed using PWM:

Next Steps:

The next step would be to purchase a 12V Liquid Pump and test the code with the pump itself. After that, I need to join this experience with the previous one, that measure the user’s heart rate so that I can replace the potentiometer with real data from a heart rate sensor. The final step would be to find the ideal body for the project that would also look nice on my desk.

“I see you” workshop 4

Workshop 4 (thermodynamic paint and ambient devices)

In class exercise


We used the dyed pieces of fabric in the thermodynamic paint and and even the thread.

After the material is dry, you can attach three 3v batteries to form 9v to run current through the thread. The other thing you could do is, use your brad board and the 5V on the arduino. This works, but a small length of thread.





I conducted research using the worksheet provided in class. While I was going through the sheet I came up with a rough idea on what the ambient device could be. In class our brief was to think of something which is subtle and in the environment. After looking over all the examples of various ambient devices presented in class, I was very drawn to the thermodynamic paint.

Workshop 4 worksheet
Workshop 4 worksheet


1.Display information that is critical not important.

 device displays information whenever someone is close to a home. It uses a proximity sensor to change the color of the certain “parts” of the painting informing homeowners if somebody is outside or is approaching their house. It is subtle yet displays important information without being loud or intrusive.


  1. Can move from the periphery to the focus of attention and back again

This would be a painting or piece of artwork that homeowners buy to decorate their homes. These painting which are usually seen as decorative items, could also be ambiently informative.

drawing of ambient device intended use
drawing of ambient device intended use
  1. Focus on the tangible; representations in the environment.

People spend a lot of money purchasing art for their homes. Usually this is used to enhance their environment. I was thinking about making such things more informative.


  1. Provide subtle changes to reflect updates in information (should not be distracting)

The paint will will subtle change due to the electric signals being sent when mapped to the proximity sensor readings.


5) Aesthetically pleasing and environmentally appropriate.

Most homeowners have art of some kind in their home, whether they purchase high end art or ikea, these pieces are used to decorate homes. Thes pieces apart from being aesthetically pleasing, display a lot of important information.

Testing out the sensor


When I tested out the sensor with the battery pack it didn’t seem to work, The colour of the thread nor the paint changed. Hopefully this could be resolved in the future iteration by stitching a straight line.


The idea is for the proximity sensor which would send electrical pulses to activate the sensor by changing the colour of the thread.


This uses the readings for five seconds and calibrates the sensor reading.

The second part of the code sketch tells the microchip to fade away. This helps with the ambience of the sensor instead of having it just go on and off.



Learnings and future considerations

  1. Ambient devices and sensors help are great way to build a world which is ubiquitous and meshes with software seamlessly.
  2. I used the thermodynamic painted fabrics we had done in class, but the one thing I would like to experiment with in the future is the use of memory shape alloys. I would like to so a mix of thermodynamic paint and alloys to build a moveable sculpture like something that comes out the painting.
  3. when using these devices make sure the current range is what is necessary. Make sure to do a running stitch instead of a mish mash like I did.