Assignment 3

For this assignment, I got my idea from the fact that I really struggle to get up in the morning. All throughout high school, I was the irresponsible child who my mum had to wake up at least twice for me to actually get out of bed. Before I started university, my entire family worried that I won’t wake up on time for my classes. In order to be the responsible adult that I’m expected to be, I decided to prevent this problem by adopting two solutions: firstly, to not have any classes before 11:50 and secondly, to sleep by the window with some sort of light on. So instead of wasting electricity all night, I created something that turns on to wake me up in the morning.

There are three LED lights (l pretended that three LED lights would be bright enough to wake me up).

This circuit uses a photo resistor as the analogue input. The amount of light detected by the photo resistor is used to tell approximately what time it is – “how urgent it is that I wake up”.

The first light is made to turn on around 6:30 when the light reading value is 5. This means that I have enough time to go for a quick run at the gym, have breakfast, take a shower, do a lot of reading, have lunch and grab a coffee before my class at 11:50.

By 8, the second LED turns on at light reading value of 600. This still means that I can gym, shower, maybe read and brunch before class.

Lastly, the third light turns on around 11 at light reading value 800. This means I won’t have time for gym or work but I can have a shower and eat something before running to class.

More LEDs can be added to “set more alarms”.

Here is the code that I used:

// Pins
const int ledPin = 2;
const int ledPin2 = 3;
const int ledPin3 = 4;
const int photoCell = A0;

// Variables
int ledState = LOW;
int lowThreshold = 5;

void setup() {

pinMode(ledPin, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(photoCell, INPUT);
Serial.begin(9600);
}

void loop() {

int lightReading = analogRead(photoCell);
Serial.println(lightReading);

// If low light level is detected, light remains off
if (lightReading < lowThreshold) {
digitalWrite(ledPin, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
}

// If light level goes up, light turns on
if (lightReading > lowThreshold)
digitalWrite(ledPin, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);

if (lightReading > 100) {
digitalWrite(ledPin, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
}

if (lightReading > 150) {
digitalWrite(ledPin, HIGH);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, HIGH);
}
}

A (barely working) CPR Simulator

This week’s project is designed for CPR training. Sometimes people are not sure how hard they should compress and this device will provide them with guidance!  The light turns on after each press on the pressure censor. Blue indicates the press is too light, green just right and red too hard.

The following is my code:

int fsrAnalogPin = A0; // FSR is connected to analog 0
const int RED_PIN = 9;
const int GREEN_PIN = 10;
const int BLUE_PIN = 11;
int fsrReading; // the analog reading from the FSR resistor divider
float smoothedValue = 0;

void setup(void) {
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
Serial.begin(9600);
}

void loop(void) {

fsrReading = analogRead(fsrAnalogPin);
smoothedValue += (fsrReading-smoothedValue)*0.05;
delay(1);

Serial.print(fsrReading);
Serial.print(” “);
Serial.println(smoothedValue);

if (smoothedValue < 150 && smoothedValue > 50 ) {
analogWrite(BLUE_PIN, 120);
analogWrite(GREEN_PIN, 0);
analogWrite(RED_PIN, 0);

}
else if(smoothedValue<500 && smoothedValue >=150 ){
analogWrite(BLUE_PIN, 0);
analogWrite(GREEN_PIN, 120);
analogWrite(RED_PIN, 0);

}
else if( smoothedValue >=500 ){
analogWrite(BLUE_PIN, 0);
analogWrite(GREEN_PIN, 0);
analogWrite(RED_PIN, 120);

}

else {
analogWrite(BLUE_PIN, 0);
analogWrite(GREEN_PIN, 0);
analogWrite(RED_PIN, 0);
}

}

———–MISTAKES AND CORRECTIONS——

My circuit stops working as I was trying to do some final adjustment before class. I was really frustrated because the device worked before but it does not read the analog input and display the correct colour even with the same code as before. Luckily, Aaron helped me with debugging after class.

We started by commenting out most of the code and only left a very small part that works and then we slowly built on it and make sure each small part works. This is great debugging technique.

Also, the pressure censor is very sensitive to changes in pressure and the input data fluctuates a lot.   As a result, the led changes colour too rapidly sometimes. So we added :

smoothedValue += (fsrReading-smoothedValue)*0.05;

so that the changes in data are more gradual and the transitions between different colours in the LED is a lot smoother.

 

 

Project 3: Positive Feedback Loop

Unlike the previous projects, I was initially stumped on what to do for this project, and wanted to avoid being over-ambitious. The idea I cam up with that was somewhat interesting was actually to have the LED read itself. Obviously, this could be done internally by the software, but I set up the photo-resistor right next to the led, and set the interval for blinks to decrease at a rate mapped from  the reading on the photo-resistor. I also set up up to automatically calibrate so that all values that corresponded to just ambient light are ignored.  My personal code from last class was giving my confusing bugs and was becoming a bit of a mess, so I instead modified the blink without delay example file from arduino.

const int ledPin =  2;
const int photoresistor= A1;
int ledState = LOW; 
unsigned long previousMillis = 0;
const long initialInterval= 1000;
long interval = initialInterval;
int backgroundIntensity= 0;
void setup() {
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, ledState);
  backgroundIntensity= analogRead(photoresistor)*1.05;
  Serial.begin(9600);
}

void loop() {
  unsigned long currentMillis = millis();
  interval= (interval- abs(constrain(map(analogRead(photoresistor),backgroundIntensity,1023,0,10),0,10)));
  if(interval<=0){
    interval= initialInterval;
  } 
  Serial.println(interval);
  if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis;
    ledState=! ledState;
    digitalWrite(ledPin, ledState);
  }
}

 

 

Emotion & Design Response

I’m going to start off by saying that I really quite liked this piece. Since middle school, I’ve always been an adamant believer in the concept: Attractive Things Work Better. In fact, I’d like to take it one step further by saying: Using beautiful things may even make the user more productive.

Most people believe that in a certain price range, the item with the best technical specifications and the most functions is the one with the best value. The aesthetic design, compatibility (with software and other accessories or products), and other less “tangible” qualities are often overlooked. In my opinion, these less concrete elements play just as important of a role as the tech specs in creating the best possible user experience, contributing significantly to its “value”, though in a less tangible way. As Norman stated in the second last paragraph, “good design means that beauty and usability are in balance”.

Take Apple as an example. Many Apple products such as the MacBook Pro or the iPhone do not have technical components that even come close to rivaling those employed by other products of other brands in the same price range. Yet, there are many (although still a minority) that choose to go with Apple’s products because of their soft qualities (i.e. sleek design, interconnectivity, aka Apple Ecosystem, etc). Throughout the years, Apple has stuck by its core values by putting as much emphasis on design and software as its hardware. Yes, they have been vehemently criticized because of the subpar specs, but they’ve also managed to garner a loyal customer base that appreciate the soft qualities of its products. Seeing how they’re currently still the world’s most profitable company, I’d say it worked out pretty well for Apple.

Emotion & Design: Attractive Things Work Better

For an article focused on design, the article sure looked and was formatted terribly.

Whether this was intentional or not I am not sure, but let me explain why I say this.

Firstly, he provides some images of the teapots he wants to talk about but the images are so tiny. I couldn’t really see the details he was talking about in them. Again, this was maybe a personal choice to make the article seem more, I’m not sure, professional? But in truth it just inhibited me from following along as smoothly as the pictures intend in the first place. Or the same thing with the book cover he wanted to show. Too. Small. To. See. The. Detail. He. Wants. To. Point. Out.

Secondly, the actual text formatting was unpleasing to the eye. He has sections in which he wants to focus on a specific topic and he uses the exact same font and size to indicate this.

Example found in the text.

Moving on from his aesthetic choices, and aesthetics being integral to his point, his article was functional in conveying what was intended.

I like his descriptions of affect and behavior, although I can’t really think of other positive affects making it easier to do difficult tasks apart from his gift idea. That may be a personal issue, but that side of the spectrum seems less plausible than the other.

The Design of Everyday Things Response

Interesting and informative piece. The section discussing the concept of human centered design resonated strongly with an important bit of advice Aaron gave us after the first assignment. That piece of advice was to always consider the audience/customer/user and all the possible ways they might use your product when designing the item because chances are, many of them might not read the manuals and use the item the way we thought they would when we created it. I agree that the best way to design/create something is to put the audience’s needs, capabilities, and behavior first, then design something to accommodate all of it.

The Psychology of Everyday things

Comment 1.

While reading this, I was reminded a lot of another class I have taken called “Wayfinding” with Professor Goffredo Puccetti. In this course, we walked around our university’s campus and looked at some aspects of the design that were confusing, or even potentially dangerous.

One of the most common problems on campus is that people walk on the grass instead of the pathway; this I think ties into what Don Norman was saying about Human Centered Design. People will want to walk the shortest distance possible to get to their destination, and so that should be taken into consideration when laying out pathways.

This concept specifically stood out to me because it is so prevalent where I live.

Comment 2.

This reading covered a lot of interesting/useful things a designer should keep in mind. From affordances and signifiers to the amount and delivery of feedback; these are all aspects that should be considered in designing lots of things, not just concrete objects.

I like specifically how he mentions things like furniture layout are a part of design, because this is not something people think of when they hear “design”.

This ties back to my Wayfinding class which focused on the ease of navigation and understandability of a space. This too, is design, as it is an umbrella that encompasses a plethora of practices.

Emotion & Design: Attractive things work better

Norman definitely repeated a lot of points in this article from his book. I found what he said about the aesthetics having a positive emotional response rather than a rational response very interesting. Thinking back about the introduction of the iPhone, and the following industry-wide switch from physical keyboards on phones to on-screen keyboards, I’m sure plenty of people including me miss the physical keyboards on the blackberry phones that we had. However, I would never even consider switching back. Today’s screens on phones are gorgeous, and I would not sacrifice such screen estate for a physical keyboard.

The Design of Everyday Things

lately, the word “Design” has become a buzzword that is thrown around everywhere to the point that it almost lost its meaning. All companies are integrating ‘Design’ into their products, all the labs are renaming themselves to ’something Design lab’, etc etc. So it was refreshing to read about design from one of the pioneers of the field of the field of design in general and Human-Centered Design in specific, Don Norman A.K.A The Design Don himself. The Design of Everyday Things is widely considered to be one of the fundamental books on design.
I specifically like what he was saying about Experience Design, because it is an aspect of design that I notice is often overlooked. One example of experience design that comes to mind is the BMW i8. It is a hybrid car, having both an electric and a small gasoline engine, and it is incredibly quiet. It is absolutely a feat of engineering to have a supercar that is this quiet. However, BMW realized that the roaring sound of an engine is an important part of the experience of owning a supercar and decided to feed artificial engine sound through the speaker.
All that being said, there is a problem with The Don’s approach of Human-Centered Design. HCD doesn’t allow much room for technological innovation. It is a design process that improves current technologies in a way that the user wants. However sometimes, as Steve Jobs would say, the user does not know what he wants. If Jobs followed the HCD approach to design, the iPhone would not be the way it is today. We may still have had physical keyboards on phones! Whether that’s a good or bad thing is up for debate.
P.S. Here’s a good video about the ’Norman doors’ discussed in the reading: https://www.youtube.com/watch?v=yY96hTb8WgI

Emotion & Design: Attractive Things Work Better

I believe it’s pretty clear from my last blog post that I agree with the arguments presented in this article. Though he repeated many of the points that were mentioned in his book, the concentration on the cognitive aspects was interesting.

Towards the end, when he mentions the Japanese lunchboxes or bentos, the concept truly came together for me. As I am familiar with the concept of a bento box and it’s aesthetic values. Bento boxes are nutritiously balanced, extremely pleasing (aesthetically), delicious and the amount of food is also perfected. The example was able to very simply explain the harmony that must occur between all parts of a product.  Overall, I don’t have much more to say about this piece except that it was easily understandable.