Solar Energy Project

For our solar energy project (teamed up with Jesal) we chose to work on a solar powered watering plant system. The idea is to have two sensors plugged into the soil to keep track of how often the plant needs watering based on the parameters we are going to agree on. Once the plant needs watering, a water pump will then be triggered and the water could transfer to allow irrigation.

We firstly tried to allocate all the resources that we are going to need for the project as listed below:

Materials Needed

  • An enclosure (1)
  • PC Board (1)
  • 5VDC SPDT micro relay (1) **
  • Solar Panel (1)
  • Lithium-Ion Battery (1)
  • Toggle switch (1)
  • 10K resistor (1)
  • Size M coaxial DC power plug
  • Red and black 22AWG wire
  • 12AWG black wire
  • Electric water pump (1)
  • Water storage container w/ lid (1)
  • 8-32 x 2.5″ nuts and bolts (2)
  • 4-40 x 1″ nuts and bolts (8)
  • 4-40 x 3/8″ nut and bolt (1)
  • 1/4″ spacers (4)
  • Wire nut (1)
  • 3′ – 5′ plastic tubing (2)
  • #8 Terminal Ring (1)
  • House plant to water (1)


Making Our Own Water Pump

We then went on trying to make our own water pump. We had to improvise and so we found a canister for pills which could store the 3.7V motor inside as well as the 3D printed water turbine. Then we laser-cut an enclosing for the top part of the motor which will then be sealed with glue so that no water can intrude the wiring.

We tested the motor with a minimum voltage of 2.3 to see how well it can spin and the results where more than satisfying.

This did not work as the enclosure did not provide enough suction for the water to be drawn in from our reservoir. We then bought a small water pump from Tinkersphere.



We used a 3.7V 650mAh battery that was able to produce the power we needed to power the water pump long enough for the water to be drawn into the plant’s soil.




This is the code we used for the Arduino. It was inspired by Randolfo’s version of the code.


// Analog input pin that the soil moisture sensor is attached to
const int analogInPin = A1;

// value read from the soil moisture sensor
int sensorValue = 0;

// if the readings from the soil sensor drop below this number, then turn on the pump
int dryValue = 700

void setup() {

pinMode(12, OUTPUT);

// initialize serial communications at 9600 bps:

void loop() {
// read the analog in value:
sensorValue = analogRead(analogInPin);

//Turns on the water pump if the soil is too dry
//Increasing the delay will increase the amount of water pumped
if(sensorValue < dryValue){
digitalWrite(12, HIGH);
digitalWrite(12, LOW);

// print the sensor to the serial monitor:
Serial.print(“sensor = ” );

//slow your roll – I mean… slow down the code a little

Finally, being able to make the pump work with the sensor and code all together we were able to demonstrate how the system worked on an actual plant as seen below:


kinetic Energy Project

For our kinetic energy project (teamed up with Dorothy), we chose to make a faucet enabled water turbine, that when successfully operated from the force of the water, could generate enough power through a 3.7 V motor attached, to light a whole strip of LEDs.

Below is some of the documentation regarding experimentation, prototyping and finally execution (at least tried to):

We made some readings to determine the voltage that the motor could generate and if it was sustainable for the overall of the project:

Once the design was finished and we knew how we wanted to proceed with the actual fabrication, we 3D printed a water turbine and laser-cut some acrylic enclosures. We then fitted the gears and the motor (taken from an old VHS player).




Figuring out how to make gears and have them move objects can be fascinating. Below is a first rough sketch of what I’m trying to experiment with, in order to come to a point where gears will be able to move objects in a forward motion:

The first stage of the project will consist of the proper fabrication of gears. I’m envisioning having gears made out of wood. The diameter would vary from gear to gear but the ratio of teeth to diameter will stay the same throughout. Furthermore, some testing will begin for to see if the gears can produce efficient power and smoothness in relevance to each other. For each successful gear configuration, I will make the correspondent holes to the sides of the enclosure (Gears will be inside a acrylic box).

The second stage will consist of the actual pieces that are going to be mounted on to the gears and moved along in a forward motion. I will have to make sure that each gear would have a different effect on each of the pieces, meaning some should move slower and some faster.

After some testing to see how the rods will stick out of the box:

The end result looks like this:

Non-Rectangular Box

Our point of view in creating a non-rectangular box was to go with the idea of a round-like box.

We started with some very rough sketches of what our idea should look like:

We thought of having half-pie pieces with numerous slots on them in order to be able to slide in the disks that were going to be holding the main structure. These disks would have a hole in the center for the “vase” to serve as a holding compartment.

Moving on we did some experimentation with some cardboard to understand if the logic behind was going to serve our purpose:

Convinced that the design can be executed we went on to design the actual pieces onto illustrator. We again experimented with cardboard, but this time we had the laser cutter do the job for us:

And getting to the end of it, since the pieces proved to be really accurate and applicable for assembly we put our piece of wood into the laser cutter again for curving. We assembled all the pieces together using hot glue.


The end result looks like this:


Verb — Drinkbot

A machine that will be able to produce your desired cocktail or drink based on predetermined options to choose from.

The machine will be operating on a traditional X,Y,Z gantry. It will have two components mounted on the railings:

1. Circular Rotational Plate: It can hold up to 7 bottles. Bottles will be filled with your desire drink and mixer first. Refill when needed. Once the desired drink is chosen, the machine will start pouring the necessary portions. Also attached to the plate will be a mixing “spoon”. Once all the pouring has been done the machine will stir the drink.

2. Ice Bucket: It will be fixed on the right side of the machine’s top railings, making sure the glass gets the appropriate amount of ice based on the selection of either a short glass or tall glass. It will be designed with a slight downwards angle so for the ice to be always reaching the output hole.

3. Glass Holder: It can hold up to 4 glasses per use. Glasses once placed on the holder will trigger a sensor which will determine the position of each glass so the pouring can be done correctly.

4. Controller: It will give you the following options to chose from: Cocktail list, make your own drink (based on the drinks and mixers filled in), random cocktail.



I feel more confident in the following areas:  Concept generation, fabrication and not so confident on: Programming, Electronics


How the interface will look like:


keypad numbers will correspond to Computer Letter on Keyboard.  Each Number will trigger a different function and create a sketch.

Potentiometer will correspond to the slider used in the sketch.
The slider controls the rate of the pixels coming from the camera.

Mouse will be used in combination with the keypad functions to further   create more illusions.

Some output that was created using all of the above features:









Final Project ICM

For my final project in ICM I chose to make a “dream machine”. Since a very early age I can remember myself having dreams, dreams that sometimes translated literally and other times metaphorically. It feels like having a second life somewhere further away where magic can occur at any given time.

For that reason I want to try and build a program where the user can interact with different options either through: creating objects, shapes, changing colors,  input sound or create their own sound, use video and finally play with different variations of text.
At the end of the interaction the user should have created a “dream” based on his preferences at the time. My intention will be for the user to feel like they are experiencing a live dream in a way. The “dream” should be at all times “moving” and not being a static one.  Lastly, the user can choose to save the document and/or email it to whoever they feel like, or even use the created “dream” and have it sent for VR viewing.

Some thoughts on the interaction menu:

  • Buttons and sliders for object/shape/size/color
  • Predetermined sounds choosing
  • Record Sound / Play your own
  • Record Video
  • Reset option
  • Save / Email option


Final Project PComp

After several weeks of learning and experimenting with physical computing, the time has come to put all our knowledge towards our final project. There are many ideas and paths that I would love to follow but will limit myself to just a few.

Dream making machine:
– The purpose of this machine is to be able to make you experiment with art, music, and literature and combine all of the three in order to get some kind of result.

Robot interaction:
– A robot that will be able to follow instructions via a specially modified controller. Its main attributes aside from moving in all directions will be to interact and perform some simple tasks when asked to.



Following our last class, we had the opportunity to present our ideas in front of our classmates and get some feedback on how to proceed with our project and what problems might occur.

I will be continuing my final project with the ‘Dream Machine’ idea. Below are some sketches that depict a first look as to how my machine will look like and interact. Also there is sketch that will be used for play testing based on a cardboard.



Continuing into the more technical part of the project as well as the outline of what the machine will offer, a system diagram, a timeline and bills of materials diagram has been made.


img_4056 img_4057

In order to figure out which sensors to use for combining music and sketching, some early testing needed to be done as seen below:

Photoresistor Light Sensor

Short Flex Sensor

Furthermore, some more progress on the P5.Js sketch which will be incorporated into the whole interactive experience:


Getting close to the delivery of the final project, it is vital to make sure which functions are going to stand out and what role each function will serve as. It was decided after some testing that using a keypad is a more convenient approach and has more potential than just using buttons or other sensors. With the help of the mouse and possibly a potentiometer the dream machine will be complete at this stage.

Mastermind Game

For our Physical Computing midterm we chose (paired up with Swapna) to work on the “mastermind” game and instead of using your mouse to interact, use actual physical buttons. These buttons (5) will recreate four colors: white, red, green, blue and one enter button. The rules are exactly the same as of the original mastermind game but instead of using all eight colors we limited ourselves to four. We will create a small box and inside of it fit the buttons and the Arduino micro-controller.

Getting familiarized with our initial thoughts on the mastermind game made us feel very positive about the upcoming challenge. We thought that the Mastermind project wouldn’t prove too difficult after all. Wrong! From the slightest mistake in wiring till coding the game in p5.js proved to be a big challenge. Some initial sketches and wiring attempts are shown below:

img_3924img_4008 img_4006 img_4003

Once we figure out the way on making sure that the wiring was correct for the initial button, we started to add the succeeding two.

Again, it proved to be a bit harder than we thought. Some problems with the breadboard and wiring backtracked us a bit but after successful logical thinking we were able to overcome the problem. Once we were done with the first part of the physical side of the game we moved on to programming the game. The process was a very difficult one and a lot of hours were spent in order to figure out the correct logic for the game. Gladly with patience and some help from other ITPers we were able to successfully program the game.

screen-shot-2016-11-02-at-4-05-40-am screen-shot-2016-11-02-at-4-05-59-am

What was left now was to make the physical side of the game interact with our computer and the game logic. We started testing out the game with one button in order to make sure that the coding and logic is right and then move onwards. For that process we encountered some problems as shown below:

The problem for the multiple squares shown was that we haven’t used the call and response (handshaking) flow control. Once we were able to solve the problem we experimented with the three buttons. Again some problems arise, which later we realized originated from the wiring and the not so reliable buttons.

For the final part we wanted to give our game a better design and try to keep all our components hidden. We initially took a cardboard and tested some laser cutting to set the speed right. Once we were able to determine that we engraved the word mastermind on our new cardboard.


We made some holes for the buttons and LED to squeeze in and a side hole for the usb. Last step was to expand our wiring so it can reach the bottom and top of the cardboard and thus we did some soldering.

img_3986 img_3987img_3992

Finally we were able to deliver our midterm project and the final results look like this:


What we learned through the whole process was that even the easiest of wiring or coding can prove a hassle. And for that you need to make baby steps every time to make sure everything works and functions properly. Technology can never be 100% reliable and thus you will always need to adjust for that percentage missing.