Make a proposal for a final project
PCB design, fabrication, assembly
Waterjet cutting, NC milling
Microcontroller programming
3D scanning and printing
Input devices
Molding and casting
Output devices
Composites, joining
Networking and communications
Final project


Make a proposal for a final project


Proposal #1

For my final project I would like to make a programmable construction kit consisting of addressable building modules (wall panels, bricks, tiles, composite components, whatever) that can recognize their assembly topology once connected. One possible scenario is that their connection interfaces could be programmed to allow snapping to certain modules while preventing snapping to other modules allowing modules to guide their assembly sequence (for example magnets that change their polarity).

Another scenario is that the modules could exchange messages or even take basic decisions through collective voting; this could be useful if modules are equipped with sensors to propagate stimuli signals thus forming a decentralized sensor network. For example the panels could sense human presence in one room and redistribute heat or fluid resources only to that room that the user currently occupies. Finally, a third scenario is that connected modules can represent themselves in a 3D digital environment once connected. Each wall may know its dimensions, shape, and physical characteristics and may be able to calculate the angles of adjacency with other walls, sharing this information with its peer walls. Once walls are connected they know their topology and can thus determine what geometry they have formulated.

 I would like to focus on the idea that each panel is a distributed computer in which electric connections can be painted by conductive paint rather than printed on a silicon chip. Can we create printed circuit tapestries or intelligent skins for future homes?


Proposal #2

For this proposal, I would like to make a low-cost network of intelligent addressable containers (e.g. boxes or buckets) that contain and share a fixed number of widgets (marks, beads, stones, or whatever else this can be). Containers can talk to each other and each container knows how many and which widgets it contains. Moreover, containers know when a widget is added or removed and they can perform basic calculations such as the rate of change of their inventories. Furthermore, containers are equipped with screens for displaying basic information. When a user picks up a widget from one container and drops it off to another container both containers become aware of the particular transaction and update their status states (e.g. the container that receives the widget knows its origin and it also knows the time that took for the widget to arrive). In addition containers may provide incentives or penalties to users that reallocate widgets to affect a particular desired transaction or avoid a non-desired transaction. The goal of this project is first to investigate resource allocation inefficiencies and second to investigate self organization by affecting user behavior.