# Tesseracts

I am interested in using 3D printing to model and visualize mathematics. To explore this, I will analyze and study a tesseract. A tesseract, or hypercube, is a 4 dimensional cube. It is analogous to a cube in our 3D world. Tesseracts are challenging for 3D beings to visualize and understand. They are theoretical structures that can be understood mathematically. Tesseracts can interact with a 3D world in a way that is similar to a cube interacting with a 2D world. A 2D being cannot understand, visualize, or fully experience a cube, but as a cube rotates around, they can gain a better understanding of what the structure is like. Similarly, a rotating tesseract can help us understand what they are like.

Using math and 3D printing, I can create multiple versions of a rotating tesseract. These 3D printed tesseracts can be assembled in a stop motion animation to show what the tesseract looks like as it rotates around 4D space.

This project was inspired in part by the book Visualizing Mathematics with 3D Printing.

# MIDI Meditation

Camilla and I built a MIDI Meditation machine for our midterm project. The device is equipped with a heartbeat sensor to detect when the user's heart beats. It plays a single MIDI note in sync with the heartbeat. The main idea is to help the user become more aware of their heartbeat while meditating and possibly get needed feedback for lowering their heart-rate through meditation.

The interaction is intriguing and stimulated the curiosity of our classmates. Several people gave it a try and enjoyed the experience. I'm not a meditation practitioner but I did give it a try. My heart-rate stayed constant throughout while I became more aware of my heart beating. Hearing the same note play in sync with my heart was surreal.

A photo of the device, taken by Camilla, is below:

# Heartbeat Detection Algorithm

### Purpose of detecting heartbeat data¶

Our Midi Meditation project is a physical computing device that will repeatedly play a single note in sync with the user's heartbeat. Fundamental to this is the ability to reliably detect when a user's heart is beating.

We want our device to work effectively for most or all people. This means it should play one note in sync with the user's pulse without extra notes between beats.

We had a pulse sensor suitable for an Arduino to use for this project. One approach for prototyping this is to code a heartbeat detection algorithm on an Arduino after viewing the sensor readings on the Serial monitor for a couple of people. This approach could work but would require a lot of parameter tweaking to get it "just right" with repeated user testing between parameter adjustments.

# Modeling a Tesseract

Consider a 3D printed cube. This cube will cast a different shadow onto a piece of paper when the light source moves around.

Beings living in a 2D world will experience the cube differently depending on how the shadow is cast onto their world.

Similarly, a 4D cube, or Tesseract, can also cast a shadow onto our 3D world. It is challenging to think about this because we do not directly experience the world in 4 dimensions. Nevertheless, I was able to model a tesseract using Python and Rhino. Specifically, I modeled a 4D tesseract and its perspective projection onto 3D space. This model will change as the tesseract rotates in 4D space. The projections were modeled in Rhino using the RhinoCommon SDK.

# Instructable Video: How to make a laser cut box

We completed our video teaching people how to make a laser cut box. I am quite pleased with the result.

I enjoyed our Video and Sound class a lot. I definitely got a lot more out of the experience than I thought I would. Most importantly, it has given me the confidence to actually use the video and sound equipment in the ER. Previously I was intimidated by the idea of using the cameras and afraid of breaking something. Now I see the amazing things that can be created with proper equipment and I will take the initiative to use it.

I also want to thank my fellow students, Caleb Ferguson and Yeonhee Lee. They are both talented and creative. We worked well together and I am happy to have been in a group with them. Their enthusiasm for this project means a lot.

# Midterm Ideas and Serial Communication

This week we began learning about Serial communication. I knew what Serial communication was but never did the programming for it on a micro-controller or at a low level like this. This relates to other things I've done with USB peripherals I am happy to learn more about how it works. In particular, the ability to send and receive Serial messages with Python opens up a whole new world of project ideas for me.

## Questions

I have some questions about Serial communication. First, what is the Serial channel doing when it is not sending a message? The voltage on the wire will be interpreted as either high or low. How does it differentiate between the absence of communication and a series of null bytes?

The second question has to do with communication errors. How important is it for the code to be robust to communication errors? How common are they? What are the programming best practices to minimize the impact of errors?

Our final Visual Language assignment is to design business or personal cards. It happens I already had personal cards but I wanted to update my design to incorporate what I have learned in this class.

The main goal of my cards is to provide some interaction and enjoyment to the people I give them to. Usually cards are boring and are tossed into a drawer somewhere shortly after they are received. Often they are given out to communicate status or corporate identity. I want my cards to be different. I want to communicate my ability to be creative and engage people in a unique way. And I do that by designing connect the dots puzzles for the backside of my cards.

# Improved Model and Final Project Ideas

## Improved 3D Speaker Case

Previously I designed and printed a 3D speaker case to use in my Physical Computing class. The speaker case worked well but I made a design error in Rhino. The front opening for the speaker was smaller than I intended it to be. All I had to do is make the opening larger and print out a new one. Sounds simple right? How could this possibly go wrong?

Next, I proceed to the 3D printer. This time I used the Ultimaker 2+ printer with a 0.6mm nozzle. Previously I used the Ultimaker 2+ Extended printer with a 0.4mm nozzle. Since my model isn't particularly detailed I thought I could save myself some time printing with a 0.6mm nozzle printer and lower resolution settings.

# Instructable Video Rough Cut

After much perseverance our group completed the video editing in Adobe Premiere.

This is a rough cut of our final video. There are some transition issues and we need to record some more narration, but the general idea is there. Enjoy!

# User Experience and Interactivity

More reading and Physical Computing experiments!

## Sketching the User Experience

Sketching the User Experience, by Saul Greenberg and Bill Buxton, is a book about design techniques that are useful for user experience design. The main idea is that sketching is an effective tool for designers to quickly develop, communicate, and record ideas. The book first explains the importance of design techniques, and then goes through a variety tools a designer can use. Some are obvious, like a simple quick sketch, but others are not approaches I would have thought of on my own.

The book is clear that reading about sketching user experience is not the same actually going through the process sketching user experience. To explore this, I went through the book and thought about how I could incorporate this into my behaviors.

I (almost) always have my phone with me, and I have Evernote on my phone. Evernote has some neat features for storing hand drawings that I don’t use very often. I thought it would be a good idea to explore this and see how easily I can use it to sketch a design.