Final Assignment – due Wednesday December 21st

  • Concept: What was your project about? How did you use technology to accomplish this? What design principles did you apply?

I recreated a digital campfire that grew larger in size as the number of people sitting around it increased. The theme of the showcase was “space”, and my project provided a form in which people could collaboratively delineate a physical space and create ephemeral interactions – not only with the project but also amongst themselves. For example, many strangers sitting around the fire got acquainted, I spoke to many people I only knew in passing, close friends took the time to have conversation, etc. – interactions that were not necessarily a given in a showcase like that. Although it did occupy a physical location, the fire and stools weren’t necessarily creating the space intended – rather, it was only when an aggregate of people sat around it that the space for talking, interacting etc. emerged. And similarly, as soon as the people left, the space was dismantled. Technology was a crucial element because, other than just creating an interesting aesthetic for the fire, it also enabled the project to respond directly to the presence/absence of people – people felt like they were really affecting the outcome of the experience. Their presence provided positive feedback (reward of getting a “better” experience by making the fire larger) and their absence provided negative feedback (punishment of worsening the experience when someone leaves. It simultaneously encourages participation and discourages disengagement, which is one way it kept people at the project. Some other design principles used were the signifiers and affordances. I thought the signifiers of stools were intuitive, reflected the affordances (being able to be sat on), and allowed people to easily understand the mode of interaction – to sit down. However, the affordance of turning on the fire was unclear – an intentional ambiguity that I thought would make the project a bit surprising. Unfortunately, because the room was fairly dark, and the fire was completely off when nobody was sitting around it, it was difficult for people to see the project at all, let alone assume that it was interactive. To solve this, I stayed seated on one of the chair so that a small portion of the fire was turned on and attracted people to do the same. But to make that discovery come more quickly would be something I would work on in the future. 

  • Hand drawn sketch, computer drawing, or a photograph of the overall project

This is a hand drawn sketch of the layout of the project:

This is an image of the fire itself – lit in the dark:

This is an image of the project in use during the showcase:

  • Discuss the materials and construction techniques. Why did you chose these? Knowing what you know now, would you have chosen different materials or techniques?

The materials I used were mainly neopixels and acrylic to make the fire. I believe these materials were exactly what I wanted for that particular aesthetic of the fire. Some things I would have changed, though, were the types of stools I used and maybe the board that the fire was built on. I can’t know before trying it out, but maybe making the stools wooden stumps instead of Ikea stools would make the fire seem more “authentic”. This is the same for the board the fire was built on. If it wasn’t such a clean surface or if the area had been “dressed up” a little more to look like a real campfire, it could have given a more genuine feel to the experience. But overall, I was very satisfied with the presentation of the project. I think the aesthetics were on of the stronger aspects.

For contraction, I used small pieces of wood to mount the fire on and plywood for the stools – these were very easy to handle and cut according my needs. I used hot glue for all the acrylic flames, which is transparent and didn’t interfere with the colors and also sturdy enough to hold the pieces in place. I used hot glue to glue the buttons to the stools as well, however, one of them fell off during the showcase. I didn’t take into account the varying weights of different people and the force with which they sit on stools – I should have tested it out with other people before putting it in the showcase. The button was attached to a wooden block which was glued to the chair – if I could go back and fix it, I would definitely use another method of attaching the button or maybe a stronger glue to hold the wooden blocks.  

  • What did you have to learn in order to complete your project? How did you learn this? (Include links to any useful resources)

I had to learn to use the laser cutter. I learned this with the help of all the lab monitors (who I thank very much for their help and great amount of patience). I also had to learn how to make neopixel patterns. I actually did not hardcode these. Instead, I used an online software that allows you to draw the pattern you want and it will give you the color codes for it. Since my pattern was relatively complicated, I used this to facilitate the process of choosing the color gradient for the flames. I also designed the flames myself on Adobe Illustrator. Before this class, I had never used Illustrator before, so I had to look tutorials for all the basics. I used the official Adobe page, other websites, and YouTube videos to learn some of the basics.

  • Describe the electronic and electrical part of your project

My project consisted of four momentary switches, one for each stool, which each had a 10K ohm resistor, and the switched were connected to the digital inputs of the Redboard. The wiring of the switched confused me at first, but I wired the “common” pin on the switch to the Arduino input pin and the “always off” on the switch to 5V on the Arduino. the 10K ohm resistors were connected to the Arduino pin, to the wire from the “common” on the switch, and to ground on the Arduino. The neopixels were connected to power and ground from an external power source and to a PWM pin on the Arduino, with a 330 ohm resistor. I connected the two grounds (from the external power and Arduino) and used a capacitor to stabilize the incoming voltage.

Below is the schematic:

  • Describe the software part of your project

I only used Arudino to program the fire. I had used a software to generate the hardcode for the color pattern of the flames (mentioned above) – which I imported to Arduino. I then made five functions to denote each pattern – one for when one button was on, one for when two were on, one for three, one for four, and one for none. The difference in these patterns was the number of neopixels that would be activated at once. The lesser number of buttons pressed would turn on less neopixels and vice versa. The biggest challenge was to determine how to make Arduino recognize if any one of the buttons turned on or off. This meant that each chair did not control a specific pattern but rather the umber of chairs controlled the pattern. How I solved this was by created a variable called “count” – which was a number that would increase when more buttons turned on and decrease when they turned off. In the loop, Arduino would check the state of each button, and add/subtract to the count variable appropriately. At the end, it would check that count variable and call the appropriate function/pattern for the number of buttons switched on.

Below is my Arduino code:

  • Describe the mechanical part of your project

The mechanical part of my project consisted mainly of switches that were located on each of the stools to detect when/if someone was sitting on them. I used microswitches for each stool, which are momentary switches and I programmed them to be read a ”always off” unless pressed. The way I built the stools allowed for the button to not be pressed unless a heavy enough force sat on the stool. I glued small pieced of soft foam onto each stool and then glued a piece of plywood onto those pieces of foam. This allowed for the plywood to be significantly raised off the stool until sat on. I put the button inside one of the holes in the stools . When the stool was sat on, the foam would provide little resistance against he weight of a human being, and as the plywood hit the surface of the stool, the button would be activated and would turn on the respective light pattern. The fire was made of a piece of wood with a number of neopixel strips wired together (the wire ran from underneath the wood). The piece of wood was mounted and raised about an inch and a half off the floor and the Arduino and its shield (to which all electrical components were soldered) was taped to the underside. The wires from the button were ziptied to the legs of the stools and all joined at the center to the Arduino. This centered the piece to the fire instead of having the Arduino and wires connect to a space external to the project (e: the wall). And because I was using such a large amount of neopixels (174), I had to use an external power source that would be plugged into a power strip behind the entire project.

  • What were the 3 most difficult parts of your project?

The three most difficult things were ideation, design, and code. Ideation and brainstorming was the hardest part of the project and took the most time for me. I wanted my project to be meaningful, somewhat whimsical, fun, entertaining, aesthetically pleasing, and to facilitate person-to-person interaction. Although I faced many challenged during the execution of the project, I still think that coming up with the idea was what occupied my mind for the longest amount of time and required the most thinking on my end. The project I ended up completing was entirely different from what I had first planned or intended to plan out. One thing I spent more time that I expected on was drawing the flames on Illustrator. I think this stemmed mostly out of the fact that I had never used Illustrator before, and I experimented with many different designs before settling on the ones I had chosen. I thought that one of the most difficult things would be writing the code. However, it turned out that it wasn’t as hard as I thought it would be after I worked out the logic. It would creating the “count” feature that I had taken most time on. It was difficult to come up with how I would structure the code, but after I had done that, it was simpler than expected.

  • Knowing what you know now, what would you have done differently?

Realizing that I had worked mostly on the hardware got me thinking that – if I had the time – I would have liked to work more on code and develop those skills. This stems from the desire to improve my coding skills but also – just conceptually for the project – to allow for more people to sit around the fire at one time. During the showcase, there were instances where some people were standing around it as their friends sat on the stools. I think if I had used a different system – maybe one with a webcam to detect the number of bodies somehow or something with a similar principle – it would allow me to do both those things. I would have had to work on coding with video, which would have been an interesting challenge for me. I could have allowed for more people to join and not put a cap on/predetermine the number of people allowed to participate/interact (as it is more limiting and that is not how a real campfire works).

  • Extra photographs (can be a link to your own album)

Photos and videos of the project (during the showcase and during development) can be found here.


Leave a Reply

Your email address will not be published. Required fields are marked *