Week 8 Project

IMG_6391

 

This week I decided to create a switch that worked on the basis of water conducting electricity.

With that, I decided to create a switch turned on by the tears of unviersity students.

It was simple: cry enough into the bowl and the LED will light up.

To do this I attached copper strips inside the bowl so that when the water level inside the bowl was high enough the water would ‘connect’ the two copper tape strips into completing the circuit.

Challenges:

One of the challenges was figuring out even if at wall the current would be strong enough to pass through the water.

Another thing was a stupid ‘bug’ where I had used a photoresistor, not a normal resistor, and pondered for a long time why the circuit was not completing.

Future improvements:

One thing I’d like to improve on is to maybe have different circuits of copper tape in such as way that more LEDs light up the more tears there are in the bowl. with 3 lit LEDs representing a full bowl or something like that.

Week 8 – Creative Switch

Concept

I was thinking about how I could create an unusual and creative switch and also make it fun to use. The one thing that came to mind was the game “Just Dance” in which the user has to step on the correct tile that they see on the screen to simulate dance moves and make the in-game character dance. Due to the time constraint I wasn’t able to create a fully working game, but this is a good start with the hardware part of it mostly done.

How it works and demo

Instead of using the classic button switch, I connected jumper cables to aluminum foils and put sponges between the foils so when they are pressed or in this case stepped on they will detect a signal and light the LEDs.

Here is a short demo of the project:

As for the code, it wasn’t too hard to work on. I found the Serial.println very useful in debugging and testing in general. The hardest part for this project was making all the connections with the wires as the breadboard is small and the cables kept getting into the way of one another so I think I will need to work on my cable management more in the future.

// read the input pin:
int buttonState1 = digitalRead(pushButton1);
int buttonState2 = digitalRead(pushButton2);
int buttonState3 = digitalRead(pushButton3);
int buttonState4 = digitalRead(pushButton4);

// print out the state of the connection:
Serial.println(buttonState1);
Serial.println(buttonState2);
Serial.println(buttonState3);
Serial.println(buttonState4);

I am particularly proud of how the code was clean and well readable in the end even with so many different pins and commands.

Future improvements

In the future I plan to make a full game out of this project and to make a homemade “Just Dance” video game. I also hope to work on cable management a bit more so the board looks a bit more presentable and maybe also switch the sponges for some other material as they haven’t proven to be the most reliable. Overall this was an amazing learning opportunity as well as a very fun project to work on!

Week 8 – Creative switch

Ideation

For this project, I created an unusual switch that does not require the use of hands. The switch is activated when two animal-shaped toys from Kinder Surprise make a “kiss.” I used copper foil to conduct electricity, enabling the switch to complete or break a circuit when the toys touch or separate.

Concept and Design

The switch mechanism is based on the principle of completing a circuit when conductive surfaces meet. The copper foil serves as a conductive material, allowing current to flow when the toys touch, thereby activating a response in the circuit.

I initially created a simple circuit where an LED lights up when the toys make contact. Later, I expanded the project by incorporating a second LED to indicate different states:

  • When the toys “kiss,” a green LED turns on.
  • When they are apart, a red LED shines instead.

Circuit 1: Basic Contact Switch

-> When the toys make contact, the circuit closes, and an LED turns on.

Circuit structure

Video demonstration

Code:

const int toyInputPin = 2;    // Pin connected to copper tape
const int ledPin = 13;        // LED output pin

void setup() {
  pinMode(toyInputPin, INPUT_PULLUP);  // Enable internal pull-up
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int contactState = digitalRead(toyInputPin);

  if (contactState == LOW) {
    // Toys are touching — circuit is closed
    digitalWrite(ledPin, HIGH);
  } else {
    // Toys are apart — open circuit
    digitalWrite(ledPin, LOW);
  }

  delay(10); // Small debounce
}

Circuit 2: Dual LED Indicator

    • The red LED is on by default.
    • When the toys touch, the red LED turns off, and a green LED lights up.

Circuit structure

Video demonstration

Code:

const int toyInputPin = 2;    // Copper tape contact pin
const int ledB = 13;          // LED that turns ON when toys touch
const int ledA = 12;          // LED that is ON by default, turns OFF when toys touch

void setup() {
  pinMode(toyInputPin, INPUT_PULLUP);
  pinMode(ledB, OUTPUT);
  pinMode(ledA, OUTPUT);
}

void loop() {
  int contactState = digitalRead(toyInputPin);

  if (contactState == LOW) {
    // Toys are touching
    digitalWrite(ledB, HIGH);  // Turn ON contact LED
    digitalWrite(ledA, LOW);   // Turn OFF default LED
  } else {
    // Toys not touching
    digitalWrite(ledB, LOW);   // Turn OFF contact LED
    digitalWrite(ledA, HIGH);  // Turn ON default LED
  }

  delay(10); // Debounce
}

Challenges and Learnings

  1. Initially, the copper foil contacts were not always reliable. Adjusting the positioning of the conductive material improved accuracy.
  2. The switch was sensitive to small movements, causing flickering. A small delay (10ms) in the code helped stabilize readings.

Future Improvements

Would be interesting to integrate a buzzer that plays a sound when the toys kiss.

Assignment 8: Unusual Switch

For this weeks assignment, we were asked to create an unusual switch. Passing by the NYU sports gyms, inspiration struck. I decided to create a switch that looked like a basketball hoop, and would light an LED when the ball was in the hoop, thus “completing” the circuit.

For this circuit, I created a basketball hoop within which I implemented wires. I wanted a balance between it actually looking like a hoop, but also still being functional. I wrapped a styrofoam ball with aluminium foil to make sure it would conduct electricity, and thus complete the circuit when the ball was dropped into the hoop, making it the catalyst for completing the circuit.

Upon the successful completion of the circuit, an LED would then light up.

I struggled a bit having the wires stay in place, and ensuring that the ball made successful contact with them everytime. My setup was very rough and could probably have used more aesthetic features, but i was more focused on making sure the idea actually worked. Maybe in the future, it might be worth it to try using copper tape to make sure the switch is completed regardless of the balls position.

Overall, I had fun coming up with an idea, and then implementing it to see whether the circuit would be completed or not.

Video of the switch: https://drive.google.com/file/d/1bRdIRVIdDPK5BbK1ZsrdfVIz8_hRawbn/view?usp=sharing

Week 8 – Reading Response 2 (Her Code Got Humans On The Moon)

The remarkable contributions made by Margaret Hamilton to the Apollo moon mission and the advancement of contemporary software engineering are highlighted in the article “Her Code Got Humans on the Moon – and Invented Software Itself”. I had heard about the Apollo missions before reading this, but I had never given much thought to the code and problem-solving that enabled them. It is amazing to see that Hamilton’s contributions not only aided in the successful landing of astronauts on the moon but also significantly influenced the creation of software as a profession. She demonstrated how important software is in high-stakes situations by emphasizing error detection and rigorous programming, which saved the mission when an excess of data nearly led to a failure. This helps me understand how difficult programming is and how much accountability software professionals have to ensure everything functions properly.

Reading about Hamilton’s accomplishments also got me to thinking about how underappreciated certain technological trailblazers are, particularly women in STEM fields. She was doing more than just coding, at a period when there were no official rules or accepted practices, she was establishing the groundwork for software engineering. The difficulty of gaining attention in a male-dominated sector is demonstrated by the fact that she created the phrase “software engineering” in order to have her work considered more seriously. I find myself wondering how many other pioneers have gone unnoticed over the years. Her experience motivates me to believe that programming is about more than simply creating code; it is also about solving problems, coming up with creative solutions, and making sure things work, especially when lives are on the line. I now have a greater regard for the history of computing and the people behind major technological advancements.

Assignment 8 – Reading Response 1 (Attractive Things Work Better)

The Nielsen Norman Group’s assertion that “attractive things operate better,” truly got me to consider how much design affects how we interact with products. Even before I have tried something, I usually think it will work well if it looks good. This makes me think of sleek programs like Instagram or Apple products, where the simple layout makes things seem easier to use and more pleasurable. It is intriguing how aesthetics may influence how usable something is and increase our tolerance for small imperfections. Even if a website or app functions well, I have found that when it appears busy or out-of-date, I get annoyed right away. This helps me understand that good design influences how people interact with and feel about technology, thus it is not just about appearances.

However, I believe it is critical to strike a balance between usability and aesthetics. Something does not necessarily work well just because it looks wonderful. I have used apps with stunning designs but were difficult to use, leading me to quickly give them up. This demonstrates that although beauty can improve an experience, it should not take the place of usefulness. A well-designed product should be simple to use and aesthetically pleasing. I now understand why businesses work so hard on user experience design, it is not just about making things seem good, it is also about making interactions feel seamless and pleasurable. I am now more conscious of how design affects my personal expectations and preferences when utilizing technology as a result of this reflection.

Week 8 – Reading Reflection

Attractive things work better:

I think the most important point to me when reading this essay was the idea of context being a vital part of design. Depending on the time of day, mood, and situation, certain objects might be preferred over others. For example, sometimes I switch out the type of bag/purse I bring outside depending on where I’m going. The aesthetic and functionality of the bag both matter when choosing for the right occasion. Taking into account negative moods and stress when designing/using an object also rings true in this example. Let’s say I’m going somewhere with a lot of walking around/physical activity. I don’t want a clunky bag with unnecessary pockets and components; I want something easy to carry even if it means looking a little more plain. When I’m doing a lot of physical activity, I’m going to feel more stressed out. That’s why choosing a simpler bag to avoid unnecessary panic when digging for items in my bag would be smarter. People think differently when they’re under pressure or anxious

Her Code Got Humans On The Moon

I had known that women were a crucial part of the start of computer programming from a previous media class that talked about computers and the necessity of a female workforce during WWII. However, even when were women were working on the same things as men, they were portrayed in media as doing clerical or busy work. They weren’t acknowledged for how much they contributed. These were women with degrees in mathematics and various STEM fields looked down upon and dismissed despite their qualifications. Going on to the 60s with space exploration, it’s still evident how womens’ opinions aren’t as valued despite how critical they are. Hamilton’s expertise was crucial for Apollo’s success and software engineering as a whole. It’s important to remember that these people were our predecessors and a backbone in the knowledge we have available today. Even though this field has been historically male-dominated, we have to remember that women were a very important part of this field’s emergence.

Week 8 — Reading Response

This week’s readings really brought home a lot of food for thought that I hadn’t thought about before, especially the reading on Margaret Hamilton. I had heard of her prior to reading the article but only that she had done pioneering work in the field of computer science. A part that stood out to me in particular was when they were talking about her daughter playing with the command simulator and accidentally started P01 and how Hamilton wanted to add additional code to act on this possible error scenario but how it was blocked by NASA as unnecessary overhead as all astrounats will be “perfect”. However, an accident actually happened during the Apollo 11 mission when an astronaut mistakenly triggered the same program sequence, causing them to be stranded. This indicated to me that even when a woman is exceptionally intelligent and has made significant contributions, her expertise can still be undervalued or dismissed. Hamilton’s insistence on prioritizing safety and anticipating human error by putting it in the documentation, after being overruled, demonstrated to me how women in STEM have often had to fight harder to have their opinions recognized, even when their ideas ultimately prove to be crucial. It personally resonated with me quite a bit, especially as someone who has also witnessed this type of discrimination within my major, asymmetrically affecting my female peers, including myself. This story, to me, serves as an inspiration to be more vocal about my opinions, be experimental and creative, and most importantly, to trust myself more.

The other reading, Attractive Things Work Better, also gave me a new perspective on design and usability. It discussed how aesthetics influence not just our perception of a product but also our ability to use it effectively. The idea that people are more tolerant of minor usability flaws in visually appealing designs was really intriguing with me. It made me think about how often we associate beauty with functionality, even in cases where the two aren’t directly related. This reading helped me see how emotional responses to design can impact user experience in ways I hadn’t considered before, specifically for physical objects. For example, for software, I can imagine that the design aspect of UI is heavily correlated to its usability aspect of it, since clear signals have to be designed (aesthetically AND functionally) in a way that doesn’t disturb the user experience.

Week 8 – Unusual Switch

Brainstorming:

I had a hard time coming up with a unique switch idea, but my process entailed coming up with different body parts that can be used to put pieces of metal together. I thought back to a design class I took in the past and how the professor talked about accessible design; she mentioned doors with handles that turn like this which don’t require you to use your hands. You can use your elbow for example to rotate the handle and from there, pull with your elbow as well. Sometimes, when I have dirty hands from eating food, I’ll use my elbow to open doors like this to access the bathroom. 

I decided to use my elbow to trigger a switch. I taped a wire to my elbow and had a strip of copper tape on the table. This copper strip had the other part of the circuit taped to it, so as soon as the wire on my elbow comes into contact with the copper strip, a bunch of LEDs should turn on.

My first attempt was a bust. I just took the two wires connected by the buttons and put them together, but I realized that it took a while for the LEDs to turn off. I looked at the serial monitor and saw that the button was technically “on” (1) even after the circuit was broken. I realized after a while that it was because I didn’t ground the circuit. With the button and breadboard, a resistor is connected to the wire and goes to GND.

Failed attempt:

After realizing this, I taped the resistor and second wire together so that the electrons can go to GND and no longer light up the LEDs. Now, the LED immediately turns off after my elbow lifts up.

F I N A L    V I D E O:

Picture of the setup:Code:

Similar to our in-class code, but this time, I have 4 LEDs. The Serial.println line is very helpful for debugging!

Serial.println(buttonState);
// if button is pressed, turn LED on
if (buttonState) {
  digitalWrite(10, HIGH);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(11, HIGH);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(12, HIGH);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(13, HIGH);  // turn the LED on (HIGH is the voltage level)
}
// if button is not pressed, turn it off
else {
  digitalWrite(10, LOW);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(11, LOW);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(12, LOW);  // turn the LED on (HIGH is the voltage level)
  digitalWrite(13, LOW);  // turn the LED on (HIGH is the voltage level)
}

Looking forwards:

I was thinking since I’m using a strip of copper, maybe I can somehow use the distance between the wires on the copper strip to determine which color LED to turn on. It’d be cool if I can measure how far away the wires are from each other on the copper strip using analog read instead of digital.

Week 8 – Reading Response 1 (Attractive Things Work Better)

I found the initial anecdote of the three teapots to be especially interesting. Norman spends nearly a third of the reading comparing and contrasting them, noting that he might choose one over the others depending on the occasion or his mood. In stark contrast, my first thought was to wonder why anybody would one teapot let alone three. Beauty is really in the eye of the beholder here, since on the rare occasion I make tea it involves a mug and a pre-packaged teabag. Even his mention of displaying them on the windowsill just made me question why he would waste space doing so.

As for the larger discussion on aesthetic/usability and affect/cognition, I have some mixed feelings. The explanation of how the chemicals in your brain can completely warp your perception was very well-done, what with the examples of tightrope walking or opening an emergency door. That being said, the claim that “attractive things work better” feels far too heavy-handed (although Norman himself notes that the claim is heretical). The preceding two sentences mention that a product that looks good will encourage the user to overlook its flaws, and to me that hardly means ‘working better’. You could definitely argue that the emotional aspect could improve the user’s enjoyment, but that is countered by claiming that performance would be better with an uglier, more efficient version. You could also argue that attractiveness helps the product sell, but then you are outright avoiding the point of debate. I would agree more if his claim was about how attractive things face less criticism, and are accepted more easily.