For our next animation assignment, Joy and I decided to work together. We both had an interest in using archive or other public collection-based images, and decided to gather a few that piqued our interests.
Here were a few of my favorite images:
It seemed that we both had an interest in stories in which the moon featured prominently. Joy also had an interest in looking at stories that were from non-Western traditions. We began to explore a few online story collections that pulled from folk tales around the world. (A few collections were GREAT, and I mean to keep revisiting them: https://www.pitt.edu/~dash/folktexts.html & https://www.librarything.com/).
We found a few stories about the moon that appealed to us:
We also had to locate (or create) an 2D character and prep the asset for class (essentially breaking down the moving components into different Photoshop layers). Joy and I decided to each draw a raccoon!
A pair of wearable NIME devices that trigger sound upon touch. The devices are in form of a jacket with various capacitive sensors sewn onto it. When the two participants wearing the device touch each others’ bodies, different sound is triggered (and possibly visuals, time permitting).
The piece plays on the difference in areas and intensity of touch depending on the comfort level of the relationship between the two people wearing the jackets. The hypothesis is that people who are more “deeply connected” will be willing to touch larger and more intimate areas of the body for longer periods of time. It will be also interesting to find out whether this wearable device, under the context of art, participants will be more willing to lower their boundaries and become more intimate with each other compared to themselves when not wearing the devices.
Experimenting with Capacitive Touch Sensors:
We hoped to use capacitive touch as a way of making the wearable have the sensitivity we desire. Today, we ran through a basic capacitive touch example using Paul Stoffregen’s Capacitive Touch library for Arduino. We wanted to test whether various capacitive touch sensors could act independently of each other (or if they suffered from a certain amount of interference).
Note that the value of resistance for the capacitive touch sensors varied across various tutorials we found online, but after some testing, we found that the 100K resistors worked fairly well for us.
You can see our tests using three simple copper tape sensors below (along with the sensor readings we received from each of them).
We were pleased to see that there was little interference between sensors, but realized that whatever conductive material we used on the wearable would need to be well insulated from each other. We were pleased to see that the copper tape was fairly reactive to how much (or how hard) we touch the sensor.
Once we had a feel for how capacitive touch generally worked, we decided to tests some materials from the Soft Lab. We found a few things we thought might be conductive material: what looked to be dark conductive thread, a thicker silvery thread, and a light ribbon of woven material.
You can see our tests below:
It turned out that the silvery thread was not at all conductive, but we’re excited about the possibilities of the other two materials.
Next, we tested with the conductive thread with the MPR 121 capacitive touch breakout board. We bought some sheet clear plastic from Canal Plastic and sewed on a line of conductive thread.
Below is the video of our test:
One thing to note was the fact that when touching the pins of the breakout board with our fingers, it was recognized as a “touch”. We realized that we needed to insulate (possibly with hot glue) between the pins of the breakout board, so that the threads coming out from the board do not cross each other.
Another thing to note is that Adafruit’s MPR 121 capacitive touch library’s test sketch only differentiated between a “touch” and “release”. We would like to figure out if there are other functions that the library provides that will give us the raw numbers of the readings so that we can make more final distinctions of different intensities of the touch.
Plans for next week:
Write code for triggering sound
Decide what kind of sound / music that we want to create
If we decide to use sound samples, collect assets
Decide what environment we want to use for coding
Possibilities are: p5.js / tone.js for sound, p5.js / three.js / processing / openFrameworks for visuals (time permitting)
Start thinking about the design of the jacket
Research online for simple jacket blueprints
Ask classmates with fashion design experience for their advice
For this week's flashlight assignment, I decided to make an astronomy flashlight. As anyone who has dabbled in astrophotography would know, ANY light is a real nuisance. It is hard enough to find a Dark Sky site without having your own glaring lights mucking this up. Red light, however, is acceptable in these circumstances, both for getting around and for avoiding interfering too much with your lighting conditions.
I decided to limit myself to freely available materials, which in this case meant lots of cardboard. I began to play around with a few ways of cutting cardboard so that I would be able to bend it into semi-cylindrical shapes.
This was somewhat fruitful. I decided I would actually lasercut the main body of the flashlight, in part inspired by the following lamp: https://www.thingiverse.com/thing:14440. It's an aesthetic.
I laser-cut and hot-glued lots and cutout ovals. I created a little inset in three of my cutouts to make room for the toggle switch I planned to use.
I created a little inset in three of my cutouts to make room for the toggle switch I planned to use. Not necessarily super proud of this method, but it's basically kept in place by hot glue.
Aside from the cutout ovals, I kept two ovals whole (one for the bottom of the flashlight, and another to insert the LEDs into).
I cut 6 small incisions on the latter oval, and inserted 6 red LEDs. Basically, I tried to organize them so that their anodes were on the outer edge of the oval, and the cathodes were towards the center. It helped me stay organized as I began to solder.
I first connected all the cathodes to what would be my wire going to ground.
Once the solder had cooled, I cut away excess wire to minimize spark points, and then covered the exposes wires with gaffer tape.
Next, I connected all the anodes with the wire that would be going to my voltage source, repeating the process of soldering and insulating.
Once I had connected the LEDs, I decided to take a pause and test on a breakboard before I went any further. I wanted to make sure I knew exactly how I planned to connect the toggle switch and my 9V batter before I continued. Luckily, it all worked as I thought it would.
Next, I soldered and insulated the final pieces into place (basically mimicking my breadboard, but this time with the “real” components).
I decided to attach my “test” cardboard (from the very first two pictures) around my LEDs, to rim the edge.
We spent quite a bit of time ideating for this project. A point of inspiration was Sol Lewitt’s drawing instructions. We wanted to play with paper as our medium and use a variety of methods to transform it: cutting, tearing, taping, painting, etc.
Once we had an idea of what our possible transformations would be, we setup up our camera to hang overhead from the ceiling over our experiment area.
We borrowed table lamps from other parts of the floor to setup our lighting for the piece. This was the hardest to keep stable as we began to transform the paper. In general, continuity was a challenge for this piece.
To say the least, my midterm project did not go exactly according to plan. I had a really grand vision of what the finished product would be: a game about the absurdity and dangers of first-strike nuclear policy. Its setup would be divided into three pieces: a P5 sketch of a submarine instrument panel, a set of arcade style buttons to control onscreen actions, and a nuclear mushroom cloud that would be triggered at the inevitable conclusion of the game.
The part I was most excited to work on was probably the least important part: the mushroom cloud. It involved working with materials I didn’t usually get to work with: chicken wire and polyester fiber fill. I bought the smallest amount of chicken wire I could, and still, it was a huge amount to cut and shape into a cloud.
Once I had the basic shape, I used spray adhesive to attach the fiber fill onto the chicken wire. The appearance was quite satisfactory and I began to test how it looked with different LEDs inside of it.
In the video below, you actually see a single 3-Watt LED running through a series of colors.
The effect of both light and color was ideal, but meant that my power management would be a bit more complicated (I would need to use my variable power supply to juice it up rather than just going through my Arduino). I also tested my LED strips inside the cloud. The results were similarly satisfactory, though the individual LEDs were more visible than was ideal. However, the LED strips also allowed a sort of “rising action” where the lights could move throughout the cloud and change color. I already had some NeoPixel-based code working in Arduino for this action, so I decided to move forward with two LED strips, each 15 LEDs long, for the final piece.
At this point I made my first big mistake. While only the top half the cloud was completed, I tested to see if I could pull it using fishing wire attached to a continuous servo motor. I made the mistake of not testing up/down motion against gravity, but rather, just saw if the motor was able to drag the cloud along the length of the table.
I have a photo of how I attached the fishing line to the motor, and you’ll note that it is probably not the best way to handle the problem. I was using the base of the spinner attachment as a sort of bobbin, circling a few rounds of the fishing wire there, and then attached (by way of a tenuous knot) the wire to the spinner itself.
Danny later recommended attached a proper bobbin to the servo, so that I could avoid the tangles that inevitable resulted from my haphazard setup.
At this time, I had essentially setup a breadboard version of my final product. I had switches programmed to serially communicate with a p5 sketch, and trigger the LEDs and motor at the appropriate moment. It sort of worked, when gravity wasn’t working against me!
At this point, I went back to building my mushroom cloud. Up until this point, I had only the top of the cloud completed. Without its bottom, more-mushroomy half, it was a bit too friendly. I completed the rest by using the same chicken wire and fiber fill combo as before. Later, I’ll learn just how I underestimated the weight of the cloud after these additions.
The next piece I worked on was a contraption for hanging the mushroom cloud. I initially wanted to avoid hanging the cloud from the ceiling, and instead, created an L-structure from found plastic “tubing.” Because the found piece was one long piece, I had the opportunity to use the bandsaw for the first time! Like so many things, it was intimidating until I tried it. Cut the long piece into two piece (which were rough 1/3 and 2/3s of the original piece), with a 45 degree cuts where the pieces would join. I applied an acrylic glue at the juncture to connect the two pieces, and reinforced with some tape.
In order to thread the fishing line through the tubing, I tied a hexangonal nut to one end of my line and used a few magnets to drag that nut through the length of the tubing.
I was going to attach the L-structure to a wall for my final setup, but I soon found that the structure was not quite sturdy enough for what I needed to do. It tended to lean forward when my mushroom cloud was attached. Thanks to the last minute advice of a fellow student, I ultimately abandoned the structure altogether and instead, decided to rely the bars we have on our ceiling. I hung my mushroom cloud on one the bars and connected it back to my servo motor, which was attached beneath the table.
The rest of the setup consisted of a set of arcade buttons to control the on-screen p5 sketch. There were a lot of firsts in this project – to house the arcade buttons, I decided to lasercut a box based on a design I created using the online tool at makercase.com. The box came out really well! I glued together all but the top panel, and enjoyed relatively easy access to the wiring I placed inside.
Unfortunately, I don’t have a photo of the final setup. To briefly describe the scene: it was a monitor displaying the p5 sketch with the arcade box placed in front. The mushroom cloud loomed behind the monitor, and unfortunately, even in its final iteration, was a bit to heavy for my tiny servo to lift at the appropriate moment.
This was only one of many disappointments. The one piece that always worked reliably in testing was the lights, but this too failed during the presentation, thanks to a loose wire. The p5 sketch and the game portion of all this was very, very simple and I really didn’t have a chance to build in the complexity of action/reaction into the player choice. Instead, it was a rather straight march towards doomsday (with a bit of serial communication thrown in).
This is definitely a project where I learned a lot and failed a lot. I chatted with Danny once it was over, and he suggested some ways to make better use of the servo and its native torque (and some of the advice is noted above). I also felt as though I had broken down my project into too many components that had to come together perfectly in order for a relatively uninteresting interaction to work at all – and much of the physical computing really kicked in at the very end with the mushroom cloud. It was a bit much for one person to do in one week, but I did learn quite a bit in a very short period of time.