2nd Soil test – Echo

For my second soil sample test, I took the sample from the tree plantation spot in front of Longhua temple. There were not many pants growing there besides the tree. The soil on the surface looked very sandy and I had to dig very deep to find the suitable soil for. The soil under the surface level became more clayey and I found a couple of worms in the soil (I wonder what it suggested about the fertility of the soil?). This sample was less clayey than my first sample but it still took 2 days to fully settle.

IMG_1639 IMG_1643 IMG_1664 IMG_1676

Results: pH: 7.0 Nitrogen: depleted phosphorus: adequate Potassium: depleted  The results doesn’t seem to show that the soil is fertile or it might be some testing errors.

IMG_1679 IMG_1681 IMG_1682 IMG_1683

The Styrofonic Hydroponic

For this group project, we were assigned the following task:

Use the Arduino to build a gravity drip, ebb and flow, or NFT hydroponic system for 4 plants that pumps water to a storage container, stops when full, drains completely than restarts the pump at a certain time later.

 With that in mind, one thing struck me immediately and that was the idea of making a hydroponic system that resembles the rice terraces seen in places like Guilin and such.


So basically, the terrace system creates a system that allows the water to overflow into the following container and so on. In an attempt to replicate this, we searched for and tried to design the best possible way to do this, while also keeping in mind that this system would also have to drain which is one thing I don’t believe the terrace system does.

Somehow we got extremely lucky, or maybe just good at searching through trash and bumped into a styrofoam container that fit perfectly into what we were trying to do.

Another reason why this styrofoam container fit into exactly what we wanted to do was becuase I wanted a horizontal system versus vertical as I felt nearly everyone was doing horizontal systems and I wanted ours to stand out. Secondly, its a mobile system that can be taken anywhere. Thirdly, it’s used purely out of recyclable materials and lastly, I could later make the center part into an aquaponic system with fish in the middle area.

Below you will find a picture of the box, while yes it seems fairly simple which is what we aimed for, it took an extremely long time to perfect and ultimately caused multiple “I HATE STYROFOAM MOMENTS”… More to come later



So how does it work… The water is pumped from the right side all the way to the top left container where it fills up until it reaches one inch from the top where it will flow to the next container, then once that container reaches 1.5 Inches from the top, it flows over to the next compartment where the water flows across to the other side once it reaches 1.5 Inches. This water then reaches the other side at 2 inches and proceeds to repeat the process twice more before draining into the main compartment. So that is how it fills up….

How does it drain through….


Sooo it drains due to the laws of equilibrium. If the water level is higher in one compartment, it will lower it to equal the other. This law is essentially the basis of this whole project, so with that in mind we prodded tiny little holes which would gradually allow the water levels to decrease in the compartments and balance that of the main compartment. In the end, the water level of the main tank was around 2 inches when balanced with everything else. Ideally, this isn’t perfect as not all the water drains out; however, it should still get cycled out as the water level in the main compartment goes down as the pump fills up the compartments. Also to avoid killing the plant with the little bit of water left in every compartment, we will put rocks on the bottom to raise the plants level.

It takes around 5 minutes to drain and 10 minutes to fill up completely.

So now you know how the system works, I can get into the problems we faced. First, don’t ever use styrofoam with water unless you 100% know it won’t leak. Believe it or not, Styrofoam does leak even when there aren’t any holes. Unfortunately, ours was one of those that had microscopic leak holes…. SO after filling it up, we both got soaked along with our stuff as we didn’t realize styrofoam was capable of leaking.

So, how do we fix a hydroponic system that leaks everywhere? Tape, lots and lots of tape. Originally, we tried to use plastic and hot glue to make a bag like a compartment; however, the issue with this is it would making draining all the more complicated and I had already poked tons of holes everywhere ):


After 20 minutes of attempting to glue the plastic to the bottom of the container, I gave up in a fit of madness. The plastic was melting along with the styrofoam so it literally was useless…. After discussion with the fellows they suggested I use spray stuff that would make it waterproof; however, I imagine that will kill the plants real fast. What we ended up doing was using tons of tape. I’m not joking, we literally spent an hour taping everything 10 times over so nothing could leak. WeChat_1489677729

Another problem we faced was the pump was pumping water too fast which lead to the first to third container overflowing. To fix this, I simply made small waterfalls on each container which made overflowing impossible

WeChat_1489677699 WeChat_1489677700

I’m super happy with how this project turned out, not only was it simple and different, but it also functions extremely well. Yes, we faced a few issues but we overcame those and I think produced an excellent and innovative hydroponic system that will be able to grow plants. Furthermore, we aim to place a hood on top of the system in hopes of maintaining a high humidity and more ideal climate than the current conditions provide.  .

Final Project By Kefan Xu


What I decided to make for this final project is a fan with a container. The propose of designing a fan like this is to make it able to be put anywhere on a desk, and the direction of the fan is always upwards, so when some one is too tired to work, he can simply put this fan below his face and enjoys the fresh air. I tried to make this fan user friendly. To achieve this, I designed the  internal structure of the container to be a hole with a stage in it, so the fan can be attached on it. With this container, one won’t worry about be hurt with the fan, because most of its parts are in that hole. The container was designed to be able to add perfume on its bottom, so the fragrance of the perfume can be brought out of the container by the fan.rhino-design2

This is the first version of the container in the rhino. I created this complex shape by first draw a top-like shape and then attached it onto a bigger top shape using ptPanel3DCustom function, and then integrate them together. Then I drew three ring-shape circle to attach them on the top, middle and the bottom of the original shape to make the stage that I have mentioned. However, I met several problems when I tried to 3D print this shape. First is that the shell-like parts on the top, as you can see, are too thin to be printed. And the support parts made by the machine itself during the printing process will be added into the hole, which makes it impossible to put the fan it it. In order to solve all this problems, I made my second version.


As you can see, in this version, I simplified the shape of the container and gave up using ptPanel3DCustom to build the shape, which might make it too complex to be printed out. I added few smaller holes around the big one, so user can add perfume in it based on their preference. They can even add different types of perfumes in different holes to mix the fragrance. And here is what I printed out.

img_3343 img_3342

On the next step, things become much easier, I designed the shape of the fan in the Ai and printed it out by using the laser cutting machine, then I simply attached it on the motor. The motor part is manipulated by the Arduino. Once plug it on, it will work.


It works pretty will, but the wind it produce is a little weak, I might change it to be stronger by reducing some resistances on the circuit. Another problem is that when I tested it, the connection between the fan and the motor seemed not that strong as I excepted, may it’s because the hole I designed on the fan is a little bit bigger to fit the motor, I might redesign a fan with a smaller hole to solve this problem. Over all, I am quite satisfied with this project, I have really learn a lot during the process of making it and it gave me a vivid overview of how to build a product from a design to a real one and how to make real product from a prototype.

digital fabrication final

For my final project, I had a lot of difficulty figuring out what I wanted to do because of the two tool requirement and I was vague on what counted and I wasn’t sure what was better: a finished product or a failed prototype. My original idea was to create a 3D printed stock for the HTC Vive controllers so when you were holding a wheel in V.R., you were holding an actual wheel in real life as well. Though I worked a lot on this, in the end I feared because 3D printing is so time consuming and because of the risk my model proportions were wrong, it would not be ideal to finish on time.

screen-shot-2016-12-18-at-4-34-05-pm screen-shot-2016-12-18-at-4-34-53-pm

So for my final I ended up using 3D modeling and paper models to create a lantern nightlight. Though it was functional for what I wanted it to be, I still wish I had challenged myself and continued on working on the VR controller wheel / rifle because even if I hadn’t had a completed product, it still seemed to me more worthwhile.

img_6621 img_6622

[DF] Final project

In our final project, we are required to use at least two techniques we learned in class to make things. First of all, I wanted to make a fabric book cover by using laser cutting and 3D printing. However, I gave up this idea after I went to the fabric market in Shanghai. I couldn’t find a way to make a fabric book cover without using sewing machine. Since I didn’t know how to use the sewing machine, and there was not enough time in learning the machine, I changed my idea a little bit. I decided to make living hinge box that could store books or other stuff.

What I mainly used is MDF board and 3D printing material. I laser cut the box and assembled them using white glue. I really appreciate Luis’s help for my final project. I planed to add a band to the box so it would be more safe to carry it in the bag. However, after assembling it, I found it could the box could lock itself well without the band. Therefore, I didn’t add band. Then, I 3D printed corner decorations to decorate the box. At first, I used dreamer maker to print. The result was not good enough, because the piece was small and the machine was not good enough. Then I printed again next morning using a bigger and better machine. It was much better. However, the surface of the 3D printing pieces were not very clean. Marcela explained to me that this was because the model I found online was not a solid. If the model was solid, then it would be better.

I used double sided tape to glue my decoration onto the box. I would like the box to have a vintage-style look. Marcela and Aven gave me very good advice that I could use thicker MDF to make a 2.5D print effect so that the box and decoration could be one instead of two separate parts. And it would be more safe and solid when you put it in your bag.

Below was the original template I found online, and I modified it to fit my book.


Here is my work

908002533 984377405 1404436220


Week 12: [DF] PCB

We learned how to make PCB last week. I learned how to use circuit io on interaction lab, so it is not too hard for me to get familiar with this website. Yet, I still feel little confused when some parts didn’t work. The feeling of making an electronic graph is very different from making physical circuit. It is a very powerful website. And below is what I worked in class and my after class assignment.

01 0823 011 022 033

Final Documentation

I designed a physical “magic box” in Rhino. At first, I downloaded a 3D model and it can’t be printed. The orientation if the box was strange so when I imported it in to Cure, it can’t be laid flat if the material can’t stick to the bed, then it can’t be printed. So I drew one by myself. The first box was printed for 8 hours, because I used the “scale1D” to scale the box body before I drew the cap, the box and the cup couldn’t fit each other so I have to reprint it. After discover that I used scale to make them the same size. Also, I drew two “belts”, a frame and a sword to decorate. I had difficulties stick them together; it might because the pattern was too complex. So I have to print them separately. However, the frame met the same problem, it can’t be laid flat so I have to gave it up. After that I managed to print the sword and use the zip tie to bond the swords together and stick the zip tie to the box. Also when I first designed the box, I didn’t consider about the connection part (live hinge). As I reprinted the cap, so I add this part to the box and printed the other two parts and stick them to the box. Also, I printed a beam as the Transmission shaft.

screen-shot-2016-12-12-at-10-45-53-pm screen-shot-2016-12-12-at-10-45-43-pm


Sound control is pretty popular these days. I used a sound control lamp and found that pretty interesting and useful. So I decided to combine this concept with the box that I designed. So after I printed the box I started to work on the sensors that I am using. I used a loudness sensor and a servo. I mainly want the servo to pull and push the cap according to the read of loudness sensor. This process was long and tiring because I am not good at Arduino coding. Thanks to Aven and Prof.Antonis for helping me with the code. Prof.Antonis even brought me several other servos when the one that I am using is not working. I also used a chopstick as a leaver so that the servo can really connect to the cap and control it. What the servo can accomplish is that when the loudness sensor sensed a loudness greater than 200, the servo will turn 90 degrees. When building the circuit, I made a lot of mistakes- forget to use the A0 pin, let tow wires touch and across each other and so on. Also, I’ve got a chance to design the circuit myself. Since the circuit is a little bit complicated, so I only use the CPB milled board to replace the breadboard (ground and power) part. I milled for two times because the machine was cutting a lot more cooper than expected so I have to change the footprint to use a larger connection part. After I soldered the circuit, it’s not functioning again. Thanks to Matt for helping me to check where’s the problem and help the to get rid of those “stressed, detached” wires and solder again. So that it’s functioning.

screen-shot-2016-12-13-at-9-24-49-am screen-shot-2016-12-13-at-9-24-41-amimg_1907img_1934



After that I felt that it’s a little bit awkward to hold the loudness sensor like that so I designed a container. I wanted to design a microphone so people will feel more comfortable when speaking to it but ended up with a vas. After I used the “folding panel” 123D make and lazier cut it. I figured that because it’s too small, it’s pretty hard to put all the pieces together. So I have to give up and use 3D slides to do it instead. However, I can’t get the PDF file of that construction technique and I have to use interlock slides. So I have to alter the PDF file and make the inner circles smaller so that they can touch each other and I can glue them together and also get rid of some inner circles so that it has a better structure. I assembled them together and the final piece looks like a Cup.

untitled1 (design)

1 (design)



img_1912 (video demo)


Special thanks to Matt Aven and Marcela for helping and inspiring me so much. I really learned a lot from you guys. Lots of love~i feel like taking this class was the best decision ever that i made for this semester.

#include <Servo.h>

Servo myservo; 

int pos = 0;    
int val;

bool valUp = false;
bool directionOpen = false;
int maxVal = 0;
bool check = true; 
void setup() {

void loop() {

  val = analogRead(0);
  if (val > maxVal) maxVal = val;

  if (val >= 200) { // if loud...
    if (check) {
      valUp = !valUp; 
      check = false;
  } else {
    check = true;

  int angle = myservo.read();
  if (valUp) {
    if (angle < 45) {
      Serial.println("open the box");

  else {

    if (angle >= 45) {
      Serial.println("close the box");



Digital Fab (3D Print)

Partner: None
Program: Illustrator and Rhino

Goals: The idea for this 3D print was created for my final project. It was inspired by the body of a dragonfly and I wanted to make something simple, useful, and organic. I wanted to make this necklace base in conjunction with my laser cut pieces to make one final piece.

Steps were taken: The first step in creating this piece was to design it on illustrator. I free form drew the shapes myself and then imported it to Rhino to create a 3dimensional shape. The next thing I had to do was move all my final files to the machine and print it using the right settings. My printing took a total of 6 hours, but with my multiple attempts, the printing took about one full day.

Lesson Learned: I ended up having to reprint the design at least 3 times. The first few times I tried to print the design on soft/malleable plastic, however finding the right settings for it to print properly was much harder to achieve than I expected. However, after printing my design on nylon, I was able to achieve a similar result to what I was going for in the first place.

Photos and Videos: img_1961 img_1962 img_1963

Digital Fab (PCB Electronics)

Partner: Katniss Kang
Programs: PCP Machine & Circuits.io

Goal: The goal of this project was work in groups to create a functioning circuit on circuits.io. This circuit would then be physically made using the PCB Machine. It was the goal of the student to design and fabricate their own circuit boards and explore the possibilities of a self-made perf board.

Step by Step Process: For this project, Katniss and I created something very simple. The important thing for us was to create a working circuit that will function if it was created. We first created a circuit on Circuits.io after several attempts. Afterward, we worked on several settings on the site to plan out the schematic for the perf board. Later on in the week, Matt showed us how to use the PCB Machine but never had the opportunity to create our perf board to test it out, It did, however, work perfectly on Circuits.io, so even without a physical model it could still work.

Lessons Learned: It was really interesting to see the possibility of creating your own boards. I have had trouble in the past with boards that were too big and having the ability to make our own and determine the size opens the doors for so many different projects. One of the things that we had to learn when using the PCB machine is to switch the drill bits for each different board if it requires it.

Schematics & Photos: img_1987 img_1988 img_1989

Digital Fab (Paper Model)

Partner: None
Programs: Illustrator, Rhino, and 123D Make

Goal: The goal of the project was to take a 3Dimensional object that is created or downloaded from Rhino and put into a 2dimensional form. The 2 Dimensional form is then uploaded onto 123D Make where it is formatted to be laser cut. Once a flat printable layout is created, it is then converted onto illustrator for final touches to be made. It is then laser cut on the machine and folded to create the desired shape.

Steps Taken: The first step I did was to create a 3D design on Rhino. I wanted to create a figurine instead of a mask, so I decided on a pug design that can be placed on a desk or a table. I then imported the file on 123D Make where I chose how many faces my folded paper project had and the way that it was connected (puzzled). The last step was to take the files and put it into Illustrator to finalize the things that need to be cut or rasterized. I then folded all the images afterwards to create the final shape.

Lessons Learned: Next time, I would create smaller shapes or less faces so that it would be easier to put together. It would also be better to refer to the file in 123D Make as it gives easier instructions on how to put it all together.

Photos & Videos: img_1905 img_1906 img_1907