Enjoy the video! I cooperate with Echo Tang on this project.
Objective:
We are both fascinated by the snowflake pattern and snow. We love how pure and quiet the world can be with white snow covering upon. While standing in the middle of flying snowflakes, we feel the rhythm of the snow, the heartbeat of the snow. That is the calling from nature, something precious and priceless that we almost neglect in our lives. We hope to create an immersive environment to help people recall and feel the beauty of our nature.
We plan to build an interactive LED snowflake installation which can be manipulated with a distance sensor. We expect the color of LED varies as we getting close or away from the physical LED snowflakes. To enhance the immersive vibe, we plan to create some artistic effects of snowflakes in p5 and projects it on a big screen or canvas. If the conditions permitted, we think a real performance will be a plus.
Sketch:
Materials:
Sensors:
- distance sensor:
VL53L0X: https://www.adafruit.com/product/3317 - windsensor / microphone
BMP180: hard to find one online.
microphone MK519: We tried this one, but the output data is not stable, which jumps high and low frequently. We expected the snowflakes to fly in a relatively smooth rhythm. After applying different smoothing approach, we still could not fix the problem, so we had to abandon this sensor eventually.
Others:
- snowflakes:
foams + 256RGB LEDs (WS2812B)
we researched different methods to build a snowflake and finally went with the foam one, which we could hide a LED strip in between to do more dynamic color change.
https://www.youtube.com/watch?v=ho-eJA_EsLM
https://www.youtube.com/watch?v=cl-mHFCGzYk
https://robbykraft.com/snowflakes/ - Projector:
We borrowed one from IMA equipment room and it worked well.
Workflow:
Week | Meeting | Task | Note |
Week 1 (by 10/22) | Online, In-person at WeWork if necessary | Main: Materials Research P5 coding | ✅ |
Week 2 (by 10/29) | In-person at WeWork (on Monday) +… | Main: Physical Installation P5 coding | ✅ |
Week 3 (by 11/05) | In-person at WeWork (on Monday) +… | Main: User testing Main: Video Main: Documentation | ✅ |
Log:
10/17/2020
During our first meeting, we made a plan of workflow and we both agreed to stick with it to push our project in an efficient way. We also created a google doc for us to record the process and share resources and ideas.
10/19/2020
We have a quick discussion to further clarify the details of the project. We talked about the research outcomes of the project that we may refer to and evaluate our capabilities to implementing ours. We also shared our opinions on the final effects we expect to achieve: either an immersive and large installation with a projector or a compromising version of small portable installation, displaying artistic effect on laptop screen.
At last, we decided to use white foam and LEDs (WS2812B) to build physical snowflakes. We also selected the distance sensor VL53L0X and microphone MK519 to be the essential parts that we will use in our project. Besides that, we assigned shopping and equipment preparation work so that we could start play with our electronic parts by next class.
10/26/2020
We tested the sensors we selected for this projects as well as the projector.
We tried to use distance sensor to control the landing rate of snowflakes in p5 on canvas.
10/28/2020
We worked on the fabrication part – making the led snowflake.
We cut the led stripe into 6 segments and made sure each contains five leds. Then we soldered wires to each stripe segment. We put glue on the top of the soldering part to better stabilize them.
We connected 6 stripe segments in series and stick them on a snowflake-shaped foam.
We coded in Arduino IDE to create a dynamic illuminating effect. Here is a short demo of how it looks now. We will restrain the color range to white, blue, and purple later, which fits better with the snow pattern in p5.
11/02/2020
We started to set up the projector and improved the fabrication of our physical snowflake. We also tried different ways to make the canvas show full screen on our computer automatically when we ran the code. Eventually, I figured out that we just needed to set up the canvas size in p5 to the laptop display’s default size (2560×1600 for my laptop) and then applied p5 embedded fullscreen() function.
function setup() {
makeFullScreen();
createCanvas(2560, 1600);
}
function makeFullScreen() {
let fs = fullscreen();
fullscreen(!fs);
}
Reference:
- https://www.youtube.com/watch?v=ho-eJA_EsLM
- https://www.youtube.com/watch?v=cl-mHFCGzYk
- https://www.tweaking4all.com/hardware/arduino/arduino-ws2812-led/
- https://www.adafruit.com/product/3317
- https://cdn-shop.adafruit.com/datasheets/WS2812B.pdf
- video demo music: credits to Reimy from Love Letter Original Soundtrack
- Our Arduino code and p5 code
More in the future:
We expect to extend it to a meditation project. We want to display dynamic snow patterns not only on a single wall but on four walls in a room. With some sound effects such as stepping on the snow, we hope to better enhance the immersive vibe. We also think it is a cool idea if we could vary digital snow patterns on the wall as well as the LED snowflakes hanging on the roof with our different gestures. For example, the snowflakes could rise up and down with dynamic color varying when people getting close to or far away from it.
Thank you!
Last but not least, big thanks to my partner Echo ;). I really enjoyed working with her. We are really like a team. We scheduled a workflow at the very beginning, which helped both of us on track all the time. We tackled problems and set up all the things together, in which way, we back up each other efficiently. I enjoyed unleashing imaginations, brainstorming, and sharing interesting projects with her when we felt too tired to fixed bugs in our settings.