Carnegie Mellon University | Computational Design Lab (CodeLab)


Course: Bio-Logic Responsive Building Technology

Area of Concentration: Materials, Biomimetics, Responsive architectural technology

Special Thanks to Professor Dale Clifford

Fall 2013



Work in Progress


Fereshteh Shahmiri, Suzi Li, Aderinsola Akintilo


Left:  X-Ray of Puffer Fish Normal Status

Right:  X- Ray of Puffer Fish Puffing once they realize danger



Explored how the inherent complexity of biological mechanisms is an emergent property based on simple rule sets and biologic condition of homeostasis. Designed a component as a shading system by inspiration of Puffer Fish and inflation-deflation mechanism in its defense system. Considered the matter of material and choosing silicone for mimicking the organism characteristic. By accumulation of Vacuum pump, Servo motors, valves, Arduino and light sensors, 1/1physical prototyping let us to observe and test the architectural application of the component.


FINDING PATTERN |  specific pattern on inflatable component has been designed. By using light sensor and controlling the amount of air blowing inside the component, variation of pattern in response to different levels of illumination can be achieved.




The function we are looking for is how we can control elements direction oand rotation upon the surface, such as spike, by amount of inflation.



Testing different surface patterns and thicknesses, so that various amount of inflation can be achieved. Then, the place of spikes can be defined based on the variable inflation.



Silicone, Freedom in finding the variety of forms.







Air pump, Valves system are controlled by Arduino, so that the amount of air inside the model can be adjusted.


The prototype is made of a black chamber attached with the inflation element. At the back, the face of the black box is a screen, made of silicon, to show the shading effect created by the lights going through.

Vacuum pump, which can both blow up air and exhaust air.

Tubes and Valves are connecting the black chamber and the vacuum pump.

For component (and possiblythe entire system) to be a stand-alone unit, we decided to get some help from an Arduino microcontroller. One of our first designs for how the arduino would interact with our component is on the right. The arduino controls the solenoid which allows air to pass freely into our shadowfish. The light sensor senses how much light is shining near or on the shadow fish and relays that information back to the arduino. Depending on the amount of light, the component self inflates. The only issue that arose from the prototype is that we realized that there was no way for the component to deflate itself.

In the arduino redesign, We connected tubing to both sides of the pump. In addition, we used a Y valveand attached two servo motors to each valve. The servo motors are supposed to be connected to the arduino. Depending on the amount of light, the light sensor sends a signal to the arduino, and the arduino tells which servo motor to open its valve: the deflating side, or the inflating side.

The property of the shading material is a key contributer to this prototype. This material has invisible patterns, like what you can see in the diagram. Therefore, if one pattern is attached to one side of the inflation part, and the opposite pattern is attached to the other side of the inflation part, there will be shades created by the overlapping.

Shading Material Invisible Pattern

Inflating Status of the prototype

Carnegie Mellon University | Computational Design Lab (CodeLab)


Course: Tangible Interaction Design Studio

Special Thanks to Professor Nick Duarrant

Spring  2013




Work In Progress



Designed a sensor-based architectural element as a building façade component, responsive to sunlight variation. Receiving data coming from sensors and sending data from grasshopper to actuator via Arduino has done by Firefly.





As an architect, always, there was a question about how we can design the architectural elements to be responsive to their context/environment. For instance how a surface can receive more or less sun light, and how such amount of variation in different parameters can be influential in Design Process, Pattern and Form Finding.

So, what I am trying to do is designing a dynamic and interactive component that is responsive to the amount of light.



What is clear for each achievement we should use proper methods and tools. And in this project, Grasshopper, Arduino and Firefly are corners of a triangle that helps us to have an integrated design. Firefly is a specialized set of tools that can make a connection between the arduino interface and grasshopper. In this plug-in, there are two components , one for receiving data coming from sensors, the other to send parametric data from grasshopper to actuator via arduino.