A. Merit Pagoda – Michelle & Luna – Prof. Andy
B. CONCEPTION AND DESIGN
– Conception:
“If you ask me where is my inspiration from, 我会告诉你这是家的方向.” — Luna, one midnight in May, 2023
(If you ask me where is my inspiration from, I will tell you that’s the place I call it home.)
The idea is inspired by a pagoda near my home (Tianning Pagoda) that often has music-lights show at night and a very common culture among youngsters to knock on electronic temple clock (木鱼 Muyu) to meditate.
This pagoda is the place that carries my memory and good luck.
Based on how users knock muyus (how he/ she knocks on the specific muyu; which muyu he/she knocks). Users will trigger different functions of pagoda – change its light, its sound to have an unique and personal meditation experience.
[Sketch we created at the beginning for the effect we want to achieve].
– Mechanism:
(Friendly and Important Note here: Michelle and I worked together on this part because we have too many versions of mechanism during the process. We have to think together to write the history. And history is always long. Make sure you are in a good mood before starting to read it. Also, have a bottle of water by your hand~ If you feel headache in the process, please stop reading it immediately.)
V1:
Muyu 1: turns all the lights on a floor on (activates it). Determines floor based on knock strength. The most recently activated floor determines the floor the other muyus control. Muyus 2, 3, 4 can only be activated after muyu 1 is struck
Neopixels 1: the number of lights that are on is the floor level of the active floor. Ex: the fourth floor is active, so four lights are on.
Muyu 2: controls the volume of the most recently activated floor. Each knock brings the volume higher, until the count exceeds 5, at which point it turns to zero/volume off (what Michelle thought the function would do) or one/volume low (what Luna thought the function would do).
Neopixels 2: the higher the volume, the more neopixels are one. Each strike, the volume increases, an extra neopixel turns on.
Muyu 3: activates flash function & turns off spin function if on. A flash drawing appears around the pagoda with the flashing of the windows
Neopixels 3: if function is active, 5 neopixels on. Else, all 5 off
Muyu 4: activates spin function & turns off flash function if on. A spinning frame appears around the pagoda that spins in time with the lights on the windows
Neopixels 4: if function is active, 5 neopixels on. Else, all 5 off
Note: In Luna’s interpretation, when the user switched between muyus 3 and 4, whenever one is first activated, the speed would return to default. In Michelle’s interpretation, the muyu would be at whatever speed it was last on when the function switched.
Muyu 5: changes the speed of the flash or spin function, with the same mechanism as muyu 2 — knock until it exceeds 5, then return to 1 (this we had the same interpretation over).
Neopixel 2: the faster the speed, the more neopixels are one. Each strike, the volume increases, an extra neopixel turns on.
Golden Function:
Plan A: If all the lights of a column are on, the column’s lights turns gold
Plan B: ???? We reserved this spot for a plan better than Plan C but this plan was never made
Plan C: If floors 1, 3, and 5 are “flash”, and 2 and 4 are “spin”, the entire pagoda turns to gold
Plan D: If all lights are on, the entire pagoda turns to gold
Plans E to infinity: We definitely made more plans, but unfortunately they have been lost to the passage of time
General neopixels: under each muyu, there would be neopixels strips glowing under them if the muyu could be activated. muyu 1 always has a glow underneath to show it is always possible to be activated, muyus 2, 3, and 4 would glow after muyu 1 is struck, muyu 5 would glow after 3 or 4 is struck
Michelle’s note: after rewriting this plan: we were crazy, right? How did we not notice that we were clearly crazy? This was crazy. Why did we plan this.
V2: After discussion with Professor Garcia:
Muyu 1: plan remained the same
Neopixels 1: the active floor’s correlating neopixel turns on only. Ex: the fourth floor is active, so the fourth neopixel in the strip turns on, others off.
Muyu 2: activates flash function & turns off spin function if on. A flash drawing appears around the pagoda with the flashing of the windows. Each strike increases the speed, until the count exceeds 5, at which point the speed returns to 1.
Neopixels 2: the faster the speed, the more neopixels are on. Each strike, the volume increases, an extra neopixel turns on.
Muyu 3: activates spin function & turns off flash function if on. A spinning frame appears around the pagoda that spins in time with the lights on the windows. Each strike increases the speed, until the count exceeds 5, at which point the speed returns to one.
Neopixels 3: the faster the speed, the more neopixels are on. Each strike, the volume increases, an extra neopixel turns on
Gold Function:
Plan C, Plan A if we had time
General Neopixels: Would be integrated if we had time
V3: After User Test
Muyu 1: instead of strength, floor is determined by the number of strikes. 1 strike = first floor, 2 strikes in rapid succession = second floor, so on & so forth
Rest: Plan same
V4: After we stared into the face of despair and realized it a reflection (time was running short and we were tired)
Muyu 1: remained the same
Muyu 2: Same except for removed speed function & flash pattern
Muyu 3: Same except for removed speed function & spin frame
Gold Function: Plan A + flash pattern & spin frame would turn on at gold function
General Neopixels: removed
V5: The night before the presentation:
All the same except each time a muyu was struck, it’s floor/function would be turned off if on. Ex: if muyu 1 was struck 3 times when the third floor was on, the third floor would turn off, muyu 3 & 4 deactivate. If muyu 3 was struck when the flash function was on, the flash function would turn off.
V6: 30 minutes before presentation:
Reverted back to V4
C. FABRICATION AND PRODUCTION:
- A failed attempt on coding✨
At the beginning of this project, I was trying to do some coding work. I did learn a lot during the process of coding it (especially the use of boolean and the fact that we can’t use delay function in Processing). I coded for the version 1 for 600 lines of code. I coded the functions for neopixels and 5 knocksensors, the basic logic of “flash”/ “spin” function and did math for the “speed” function here.
Here’s the link to the doc which stores my abandoned code: https://docs.google.com/document/d/1gAnzY5WZVGZx5Aeoi4sYS61_h0cNC6BHaoDU-fEBOGc/edit
However, after we talked with our Professor Andy and changed the mechanism for our project (reduced the muyus and changed the rule for them to function), the old logic and the new logic started to have a fight in my mind. I couldn’t understand what I coded before and didn’t know what to do. So, I turned to the art part of our project ( will be shown in the following part) instead of coding. Here, I really have to show my sincere thanks to my partner Michelle, who shouldered too much.
- Muyu✨
- Pagoda✨
- Fish and Lotus Cover✨“Fish” is a very typical image in Buddism to represent to drive away the devils and pursue success. “Lotus” is a very typical image in Buddism as well to avoid being polluted and stands for purity and peace. It took me some time to decide the position and the sides of the holes on board for “knocksensors” and “neopixels” to go through. And we figured it out successfully.
- 4 sides✨I have to thank myself for taking communications lab last semester and know how to use Adobe Illustrator here.
- Stick✨We use this stick to knock on muyu.
- Patterns on pagoda windows✨The 5 sets of patterns are 5 Prayer Accessories out of 8 Prayer Accessories in Buddhism. Their meanings are presented in the picture above. The left 3 Prayer Accessories are “fish”, “lotus” and “cap”. “Fish” and “lotus” are presented through the design of the base box. And our muyus also have their small “cap” since when we 3-Printed them, they were divided into 2 parts with a “cap”. It took me some time to design and draw their patterns as well as the background but I learnt some skills in Procreate at the same time.
- Outframes of golden light function✨I still adopted my original plan since I felt like the pattern I designed based on the “save space” plan was messy.
- Later, the patterns of the windows and the outframe of the golden light are projected to the pagoda and the whiteboard behind it. It did take us some effort to stabilize it and find the right angle and position. (Thanks for the stabilizer lent by Prof. Andy here <3)
- Assemble and modify✨
D. CONCLUSIONS:
- Photos of our final work here:
- Videos of our final work here:
– Meditation Mode:
– Crazy “Smells like Teen Spirit” Mode:
- “Expectation” VS “Outcome”:
We expected too much at the beginning, but only achieved part of the effect we want. The codes are too long and too much for the processing to run so some unexpected errors (like when we knock on “spin” muyu, it started to “flash”, or turn into “no reaction” mode” would pop up from time to time. And when we disassembled it, we found that the knock sensor for spin function was broken. It might be the reason as for why so many unexpected errors popped up. (They are too fragile, from beginning to the end, from midterm to the final).
But, overall, I would say it achieved the visual and audio effect we want. It fits my expectation and I love it. We carefully chose the sound note for each floor (from piano note at the beginning to the tibetan singing bowl at the end). We carefully designed the patterns which carries meanings for each floor and our muyu, box base and side panels. It looks beautiful, but just a little bit silly and lazy at times.
- Users reaction to our project:
Users were all kind of confused at our project when they first played it (except for a few super lucky users). Even with the written-instructions and the instructions of the neopixels. The mechanism is really complicated to figure out. But after giving them some hint, they can play with it. They all “wowed” when they figured out how it functioned and successfully triggered the golden light function. I guess the most important part of our project that stood out to the users is that it’s beautiful, please to the ear and the eye. I saw a lot of people taking pictures of our project and posted them to their social media (like “Moments” on wechat). Glad to see that~
[Instruction we made for IMA show]
[What I see in “Moments”]
- Things we will do if given more time:
- (Most important) Check and take great care of the knock sensors.
- Try to code my abandoned code child.
- (Secondary important) Figure out what is wrong with our code and get everything smooth. [It sometimes functions well, sometimes bad. We don’t know why.”
- Re-laser-cut the cover of the box and give some instructions through curved lines on them. [To get users know which sensor to knock on first at least.]
- Add the speed function to “spin” and “flash” muyus to make it more interactive. (prereq: Processing can shoulder that much code.)
- Add outframe to “spin” and “flash” function as our original plan. (prereq: Processing can shoulder that much code.)
- Final thoughts:
E. APPENDIX
- Code for our project:
https://docs.google.com/document/d/1hRNYGb1NsHL02NnyctmL0QwZv6cD48-0DCrBACM0wUc/edit
- Diagram for circuit:
- Easter egg:
“Life is just like “Merit Pagoda”,
sometimes you are like the stick, to knock on things;
sometimes you are like the muyu, to be knocked.
However, what we must realize is that
the “golden light function” can never be triggered without this dynamic.”
— The Great Luna and Michelle, circa 2023
Leave a Reply