Video Review

Hi team,

Here are the transcribed notes for the videos we viewed in class today!

Effective

  • Shows product being used
  • diagram overlay
  • combining close-up shots (detail) with medium shots (context)
  • Shot composition
  • Shows software workflow
  • Leads viewer to where to find more information
  • Tripod to stabilize
  • Shoot during daytime -> diffused lighting
  • Establishing shot
  • Giving/restricting “personality” of characters/objects
  • Surprise and humor
  • Music changes to fit theme

Distracting

  • Over-the-top acting
  • Too slow/fast
  • Hands shaking
  • Background noise / poor audio
  • Irrelevant music
  • Extraneous b-roll
  • Too long
  • Too much motion

More Internet of Things

This week, we continued our exploration in Internet of Things.

First, we connected an LED to Adafruit IO.  In the video below you’ll see that the app on the screen receives inputs when I press the button

In the next section of the assignment, the app sends me an email each time I press the button that also turns on the LED

We also added a neopixel into the mix by incorporating the Adafruit Neopixel library!

I also played around with a widget on my phone.  It was a little hard to take a video, but here is a snapshot of my phone screen

This next part was fun as well as we saw two circuits react identically to an input

Since I am still a little behind on the project, I will need just a little extra time to submit the BOM and circuit.  Will update shortly!

Huzzah! Internet of Things!

This week we got our feet wet with the Huzzah!
LED Test:

I also got the Huzzah to connect to the internet:

Button and LED:

Apologies for the late edit! Here are the 3 ideas for my project.  IMG_5382

The top idea involves a sensor that will let me know with a “happy” or “sad” face on a screen when my plants require watering.  I’ve been a very bad plant dad to poor Chloe, my money plant, so I think this intervention may be necessary for her survival.

The second idea checks the weather each day and gives me recommendations for things to wear or carry, such as an umbrella for rainy weather.

The last idea will search news feeds for mentions of Trump and let me know on days when I should actively avoid the news.  This could also be modified to open up a piggy bank so that I can treat myself on days that may be particularly depressing.

Flasher Costume

 

Last week for Halloween, I dressed up as a flasher.

This is sadly the only video I have of it in action since Victoria and I got separated from the group early on in the parade, but here are some additional pictures of the interior and exterior

IMG_5219.jpg

The exterior shell is a coat that I had designed, patterned, and made some time ago.

IMG_5215.jpg

I cut 6 segments of LED strips compatible with the neopixel library into 4 LED sections for a total of 24 LEDs, all connected in parallel.  The LED portion of the circuit was attached to the innermost layer of lining so that no stitching would be visible from the inside of the coat.  The second layer of lining was added to create light diffusion and to also hide the circuit.

IMG_5216.jpg

Through a small opening in the seam joining the right lining and facing, I pulled the rest of the circuit with the Gemma, lithium battery, and button through.  The Gemma and battery were inserted in a pouch I sewed into the lining, and the button was attached to the right front button hole for quick access.

Building the circuit was straightforward because I was able to preview it on TinkerCAD first.  The coding, however, was the trickiest part.  I had originally planned to use code from a library of LED strip effects that I had found on the web, but it was incompatible with the ButtonCycler example that I wanted to build on.  For this reason, I opted to use the sequences in the ButtonCycler, tweaking some of the delays and cycle times.

 

 

Costume WIP

For this week, I’m testing out components and also tweaking code in TinkerCad.  Since my partner works in lighting, I’m trying to take advantage of his treasure trove of leftover LED strips and parts.

As I was searching through his pile, I came across a bunch of LED strips but he let me know that they probably weren’t ideal since they were meant for FastLED.  I wanted to be able to practice working with the NeoPixel library, so I decide to rule these out.  Then, we found something really special…

He had a leftover NeoPixel library-compatible LED strip that glows in different kinds of white based on the different RGB inputs as well as a gorgeous amber color that you see in the video.  I went with this because these lights felt very emotional. My hope is that once I cut them up and spread them out throughout my lining fabric, the different kinds of white and amber will show.

To quickly show me the kind of light patterns that are possible, my partner hooked it up to industry-standard mapping software, called MadMapper.   Here’s a nifty video of it below:

To test out my circuit, I turned to TinkerCad

Brilliant Curcan-Robo.png

I referenced code from a nifty website that has code for a lot of different patterns.

Here’s my code for rainbow twinkles below:

 #include 
#define PIN 6
#define NUM_LEDS 48
// Parameter 1 = number of pixels in strip
// Parameter 2 = pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
  strip.begin();
  strip.show(); // Initialize all pixels to 'off'
  
}

void loop() {
  TwinkleRandom(20, 100, false);
}

void TwinkleRandom(int Count, int SpeedDelay, boolean OnlyOne) {
  setAll(0,0,0);
  
  for (int i=0; i<Count; i++) {
     setPixel(random(NUM_LEDS),random(0,255),random(0,255),random(0,255));
     showStrip();
     delay(SpeedDelay);
     if(OnlyOne) { 
       setAll(0,0,0); 
     }
   }
  
  delay(SpeedDelay);
}

void showStrip() {
 #ifdef ADAFRUIT_NEOPIXEL_H 
   // NeoPixel
   strip.show();
 #endif
}

void setPixel(int Pixel, byte red, byte green, byte blue) {
 #ifdef ADAFRUIT_NEOPIXEL_H 
   // NeoPixel
   strip.setPixelColor(Pixel, strip.Color(red, green, blue));
 #endif
 #ifndef ADAFRUIT_NEOPIXEL_H 
   // FastLED
   leds[Pixel].r = red;
   leds[Pixel].g = green;
   leds[Pixel].b = blue;
 #endif
}

void setAll(byte red, byte green, byte blue) {
  for(int i = 0; i < NUM_LEDS; i++ ) {
    setPixel(i, red, green, blue); 
  }
  showStrip();
}

I had originally thought about having two separate strips coming out of different outputs so that the left and right side of the body could be doing different things, but I’ll be keeping it simple!

Here’s my To-Do for the next week:
Cut 2nd lining for coat
Cut LED Strips
Write switch into the code
Determine layout for all LEDs.  I think I will come down a bit in number of LEDs since 48 separate LEDs might be a bit much!  I may cluster some of the LEDs to reduce the number of solder joints I’ll have to make.  Still working on this part…
Sew circuit into my lining
Sew lining back into coat

I have quite a bit of work ahead but I’m really excited about this project, especially since my partner gave me really beautiful LEDs to work with.

Halloween Costume Sketches

I sketched up three halloween costume ideas this week.  I’ll be completing this project by myself.

My first idea is to create a black cropped crewneck sleeveless top with an array of red, orange, yellow, and white LEDs in the shape of a flame.  I would be wearing this with khaki pants to complete the costume for a matchstick.

IMG_4870.jpg

My hope is that I could make the LEDs glow in a pattern that evokes the burning of a flame.

Another idea I had was to dress up as a magic 8-ball.  There are various tutorials and code available online for a magic 8 ball, as shown in the video below

The LCD display shows a different “fortune” whenever there is a tilt sensor input, which I will embed in my costume so that it responds to my jumping.

IMG_4869.jpg

For the garment itself, I’ll make it a crewneck, black shift dress with a zip closure on the center back.  This way, I can keep it relatively simple and even have a pattern for a dress I could remake without the circuit.

My favorite idea is to be a flasher!  The idea is to wear a nude full bodysuit underneath a trench coat that has flashing LEDs on the lining of the fabric.  People would ask me what I’m dressed as, and I would open my trench coat revealing a flashing interior and what will, for a split second, will look like my nude body.  I have a trench coat in the works already and I would like to attached a second lining layer with an embedded circuit for this project.

IMG_4868.jpg
I currently have a trench coat that I have the pattern for.  I’ll cut out a second lining layer for the right and left front pieces and embed a circuit with an Adafruit GEMMA,  flora neopixels, and a photocell (to detect when the coat is open).  The idea is that I’ll program the neopixels to flash when the photo cell detects light.

Week 5 Homework

This week I had a chance to play with a potentiometer and motor for the rest of Lesson 3.  Here is my final product below!

It took a moment to get this one going but finally figured out that the transistor was oriented upside down. Once I switched that around I was able to get the motor running.  I also realized that before I put the purple tape on the motor, I actually could barely tell that the motor was running when it was running (haha).

Next, I was excited to get a neopixel strip to work using the Arduino for Lesson 4.

I’d love to get to know how to code for the neopixels better because I will want to embed them in my upcoming halloween project.  I’m still a little confused but today’s class clarified my understanding quite a bit.