Physical Computing


Cardboard Turntable

This project was incredibly fun to make for this class. I used a lot of the knowledge from this class in order to make this turntable. This turntable is fully functional and interacts with p5.js to create music. The discs move and spin according to the speed and pitch of the music which is controlled by the slider besides each disc. The tonearm also controls whether or not the music is playing depending on where it is placed. The slider in the middle controls the crossfade and determines how much of each song is playing.

I went with the look of cardboard to add to the playfullness of the turntable. I wanted it so that children would not be intimidated and that the parts are easily replaceable and able to draw and manipulate. I also wanted to showcase the craftiness and handiwork of the hand-cut design. I constructed the whole turntable with just an X-acto knife and hot glue. The tonearms are made of potentiometers and the sliders are sliding potentiometers. the spinning discs are made of continuous servos.

Using the measurements I wanted, I created this Illustrator file to help with the contruction of the turntable. I then printed them out and cut out the pieces by hand accordingly.

The next step was to test out if it worked. An issue I had was having both motors work simutaneously. It seemed as if each motor was taking turns spinning. With some help from Koji, I figured out that I needed more power. The 5V from the Arduino was not enough to power the whole thing, so I attachd a 9V battery. Everything worked smoothly after that, but I wasted so much time figuring that out.

Through this project, I learned how to solder and organize wires. I also learned to put things together in a cohesive way. I had to build things in a way so that it is sturdy and attractive at the same time.

This is the final product of all the hard work from this project.

Link to sketch

This is the p5.js sketch that I originally tested for this project. I had the discs spin according to the slider positions. The music also went faster or slower according to the sliders as well. I learned a lot from using the p5 sound library which was something I didn't really utilize much in my previous projects.

This is the final project that I submitted. The songs and titles are matched up. I tried to make it so that the physical turntable controlled the p5 sketch, but it was really difficult because the sensors were not always consistent. It was very glitchy with the rotation animations, and all the animations became very choppy. In the end, I decided to present the final turntable with the physical turntablw without the anmations in sync and with only the music.

Final Ideas

Tonearm parts made with cardboard and potentiometer

My final project started off as an idea of a children's play mat. I wanted to combine ICM with this project and create something that was physical and also affected things on the screen. I also wanted to expand on my previous project for the midterm and push it further. Jeff mentioned in class about how my project should incorporate some kind of feature that intices children to play with it. I decided that using a play mat like a DDR mat would not be as effective with children because it probably wouldn't entice them enough to play with it.

I decided to use an idea that was much more playful and creative. I ultimately chose to do a fully working DJ turntable, but the playful twist was that it would be made completely out of cardboard, and the sensors would be also functioning as a game controller of some sort. I felt like this idea would grasp the attention better than just a plain mat. I would be mostly using potentiometers such as the ones we've been using as well as sliding potentiometers that I have ordered.


Pumpkin Patch

Link to sketch

My partner Ari and I originally wanted to create a parrot that tracked motion and move accordingly. However, when we tested the motion detector, it seemed to be broken. It was frustrating because we both looked up documentation on how to use it, but none of them seemed to work. We both thought we were doing something wrong, but turns out, in the end, it was the sensor's issue to begin with. After spending so much time trying to get the sensor to work, we decided to use what we have and create an interesting interection using p5.js and sensors.

We ended up doing an interesting sketch that used the input from a potentiometer and five buttons. The potentiomoter was responsible for changing the mood of the sketch from a happy pumpkin pattern to a Halloween-themed pumpkin patch. The first button created new pumpkins on the screen, and the last buton muted and unmuted the music. The middle three buttons would play sounds depending on if the mood of the sketch was happy or scary. A new thing we tried was the difference in the sounds with the buttons. It was interesting to see that the buttons can have more than one purpose. In class, we were using the buttons to just turn on and off LEDs. We gave the buttons multiple purposes in this sketch, which was very interesting because we haven't done it in class before. It was also very interesting to understand the interaction between p5.js and the Arduino. What we had issues with were the loops withing the draw() function in p5.js. It affected the way the sounds played and how the pumpkins were appearing. In the end, we had to code work-arounds in order to make them work.

I learned so much from this project, but I think the most important lesson was the whole process. We had to compromise in the end because our original idea didn't work out properly with the amount of time we had. However, we will be much more prepared for the final.

Week 6

Serial Communication

Link to sketch

This is a p5.js sketch that was a previous project for ICM. My original interaction with the sun/moon is that it was to be a slider. However, I thought it would be much more creative to have it be implemented with a potentiometer for this project. The position of the sun/moon also effected the color of the sky, as well as the shape of the sun. It is also to reveal the stars in the background when it turned into night. Honestly, I prefer the use of p5.js with the Arduino rather than just the Arduino itself. As a visual person, this really helped me visualize all the data we are working with.

Week 5


Link to sketch

The synthesis was such an interesting experience. At first, it was very overwhelming. It was extremely intimidating to see the examples and trying to figure out how to possibly make something remotely similar. Pilar and I came up with the idea to use two potentiometers and create an etch-a-sketch. The difficult part was to make the two sensors work with each other and get the mapped readings to appear correctly. In the end, we created exactly what we sought out to do, and it was extremely satisfying.

Week 4

Analog Output

The biggest challenge I'm having with this class is the Arduino itself. The code is understandable, but connecting the Arduino is difficult for me. When I do have everything connected and working, it is as if a lightbulb lit up above my head because then everything clicks and connects in an understandable way.

Week 3

Digital and Analog Labs

Water Boiler Observation

The interactive technology I chose is the water boiler in the ITP kitchen. This is a public technology that is used by many people throughout the day to boil water for their needs. This technology is used throughout the day and it is mostly used for tea.

The way it is used is simple. The user has to detach the power source from the water boiler and then the lid is pulled up to allow the water to be filled. The user then brings the water boiler over to the sink and fills it up with water up to the line. The lid is then put back into place, the power source has to be plugged back in, and then the power button is clicked to turn on the water boiler. When the water is boiled, the power button will click to indicate that the process is complete.

An interesting thing that I observed is how some people use it differently. Some people unplug the power source while others will just leave it on. Some people wait for the water to boil while others would continue working and come back later after its done

The whole process is very efficient and the thing that takes the longest is for the water to actually boil. Even then, it is faster than boiling water in a pot on top of a stove.

From the readings of Norman and Crawford, I had to consider the options of design vs functionality. I believe that the water boiler is very well designed in functionality because it does what it is meant to do and does it very efficiently. Of course, there are many ways that the water boiler can change it's design, but the whole idea is for it to boil water quickly. Many other designs of a water boiler consists of different shapes, materials, and machanics and it affects the whole experience of boiling water. The clicking sound of the power button also provided good feedback to the user.

Week 2

Electronics Labs


The electronics lab was a great introduction to circuits and electricity using the Arduino and the breadboard. We got to learn about the basic tools that we would be using throughout the semester.

Week 1

How would you define physical interaction?

Crawford defines interaction in simple terms: to listen, think, and respond. He describes it as a conversation. Those three components must work together to be considered a form of interaction. In a way, it can be described as a form of input and output on a computer. There must be a user that inputs information, the computer processes the information, and returns an output back to the user -- much like the conversation that Crawford describes between two actors. There must be some form of a back and forth, otherwise, there is no interaction.

Victor has a very interesting take on the term, "interaction". His rant brings a very different view on the future of interaction design. With all the new technologies, the human aspect of interaction is missing. We leave a lot of the legwork to the computers, losing the human touch. He says that as humans, we were eveloved to use our touch and trust our instincts to use our hands a certain way for certain tasks. He says, "With an entire body at your command, do you seriously think the Future Of Interaction should be a single finger?" The future of interaction design seems to reduces our hands' purpose to meerly manipulate a screen.

Personally, I believe that physical interaction is simply defined as a conversation between a user and something else. I belive that it must stimulate the human senses in some degree. It can be as simple as a child playing with a toy or as complex as a person engaging with an AI. There must be some form of push and pull for it to be considered an interaction.

What makes for good physical interaction?

I believe that good physical interaction does not have to be the most complex. It needs to communicate an idea while stimulating the human senses. As Victor argues, "Our hands feel things, and our hands manipulate things. Why aim for anything less than a dynamic medium that we can see, feel, and manipulate?"

Are there works from others that you would say are good examples of digital technology that are not interactive?

I would say that a successful example of digital technology that is not interactive are television shows such as sitcoms or educational programs. With sitcoms, it creates the illusion of interactivity by leaving room for laugh tracks so that there is an element of inclusiveness for the audience at home. Also with educational programs such as Sesame Street or Dora the Explorer gives children the opportunity to feel like they are interacting when they really aren't. The shows would continue with or without the audience input, however, the illusion of interactivity is successful in that aspect.