Week 8

Zebing Yao - Mon 11 May 2020, 11:13 pm
Modified: Mon 11 May 2020, 11:14 pm

Document and evidence individual work done

Domain research:


An online office observation was conducted this week, key works that relate to this domain was used to search something about office, such as ‘office workers’, ‘office’, and ‘office observation’. A number of useful sources are listed below:

https://www.youtube.com/watch?v=YpUeKQl-s-8 -> American office observation (news reporter)

https://www.youtube.com/watch?v=yYIFefUXc_c -> software design company office

https://www.youtube.com/watch?v=FAplyNf7uuE and some other videos

  1. People stop sitting normally because they want to get water, print out files, chat with other colleagues, and go to restroom.
  2. The offices are quiet most of time: It links back to the responses from interviewees. Office workers might need to concentrate on the work, and it is important to ensure that the product is workplace friendly so it would not affect others as well as their work efficiency.
  3. Compared with private spaces such as home, offices involve multiple people working in the same space: It can actually be an advantage/resource that private spaces do not have. If multiple people can be connected to take same actions together such as walking or stretching, then users might be more likely to do light-activities, especially for users with introverted characteristics.

Based on these information, I made some changes to the concept mentioned in the previous journal

  1. New annoying feature: The patch starts to vibrate instead of bleep constantly after long-time sitting. It aims to reduce the impact on work efficiency.
  2. Multiple users (office workers) are involved: Two playful interactions (games) mentioned in the original concept were removed. A new playful interaction that involves multiple users was created.
  3. A new relax and ease-of-use interaction: As mentioned in the concept on the front page, users will be gathered together, and one patch among them will be randomly selected and lighted up. The light can be removed by simply touch its surface. Then, the light would ‘jump’ to next user, and so on.
  4. Extra changes for work efficient and easy of use: It can be turned off by removing the patches from the clothes. Also, reduce the number of patches to two.
Design principle

On the other hand, a design principle was searched and trying to implement it into my concept because the concept is designed for everyday life with playful and open-ended interactions. It might involve a series of interaction process, such as how the user explores, discovers, and adjusts it. So, it is important to ensure the user interacts with it without confusion. So, based on research, Valk, Bekker, and Eggen (2015) develop a model for playful interaction. It involves three stages, which are invitation stage, exploration stage, and immersion stage. The overall interaction process was checked and improved based on these three stages, and a number of improvement was made in the concept. For example, LEDs on the ring can easily get user’s attention and show the changes. So, they will be used to represent the changes of system state and interaction process. For example, all LEDs are activated means that the sitting time is long enough. Then, all LEDs will be turned off, and specific LED will be lighted up to tell the user the current step is completed, and to guide the user what to do next. Moreover, responses should be provided to the user every time when he/she tried an action so that the user is able to explore how to interact with the patches. For example, if touching the wrong patch, then the LEDs on the correct patch will keep flashing. Finally, while users are gathered together and interacting with each other, the provided responses from the patches should be similar and coherent in ongoing engagement. Specifically, the light’s color and brightness should be the same while passing it to other users.

Prototype construct:

In addition, I also started to construct the prototype for my concept. Two features were build. First one is to activate LEDs on the neo-pixel ring by pressing a paper. I formed an overall construction process for this feature:

  1. Simply set up the ring on the Arduino Uno board to explore how to use the neo-pixel ring since I have never used it before, so I am need to get familiar with its basic functions and codes.
  2. Then, try to write simple codes to activate some specific LEDs on the ring, which is a good warm-up for the latter part of this feature.
  3. Thinking about how to activate the ring by pressing something.
  4. Connecting the pressing function to the ring.
  5. Add the point 2 to the feature so that it is able to activate some specific LEDs by pressing something.
  6. Adding counting time function into this feature so that I am able to activate the LEDs every few seconds or minutes by pressing something, which is for implementing the feature that after sitting, one LED on the patch would be lighted up every 5 min.
  7. Test the completed feature to see anything needs to be improved.

Arrange the jumper lines on the board to make it more clear and structured.


A neo-pixel ring was simply placed on the board, and connecting to pin 2 for data input, ground, and power. After following the construction guidance online, a basic code to activate the ring was created. Then, I got a basic view of the ring:


Then, through exploring the code, I am able to activate specific LEDs on the ring.


After that, I took a look the materials I got, and I found that the pressure sensor could be used to detect whether user is seated or not. After press or pinch the sensor, the value would be read in the system. So, I think it is really helpful for my feature, and I can activate the LEDs by comparing with the value from the sensor and a pre-set value. Then, it is possible to detect whether the user is seating or standing, and activate the LEDs. After that, I combine the functions I created with the pressure sensor, so the point 5 is fulfilled.

Imgur Imgur

Next, I used ‘delay()’ method to freeze the whole system for a specific time so that it is possible to activate one LED every few minutes. However, it caused a problem that nothing can be conducted during freezing the system, so if the user stands up during freezing, then I am not able to detect it through the pressure sensor. I have read through some projects, and I found that using two variables to track and count the time is a more flexible and efficient way to solve this problem. As the figure below:


Finally, I combine everything together, and create this feature:


I simply tested this feature by pressing the pressure sensor, and the LEDs are activated every specific time, so it was successful. Then, I rearrange the jumper lines, sensor, and led to make it more clear:


Things need to be done

Based on the concept, a number of features need to be constructed in order to form a prototype, which are code improve, vibrating function, construct another device, and data communication between two devices. I will work on them at the end of this weekend and next week as well. By the way, the appearance of the prototype also needs to be improved.

External source


According to this source, I learned the basic structure of the neo-pixel ring and its code. For example, through calling Adafruit_NeoPixel to activate the overall functions of neo-pixel ring. Moreover, through calling begin, clear, and show to control the LEDs. Also, the combination of these methods can easily turn off and on the ring, which is quite helpful to solve what I have struggled in the feature. For example, I could not turn off all LEDs at one time, so I turned off them one by one. However, after I have read through this documents, I found out that the combination such as clear() and show() can just quickly and simply deactivate all of them.