Product Designer
IMG_1217.JPG

Smart Home Automation

 

Prototyping with Arduino

 

Overview

When designing new IoT experiences, the unknowns are endless. Physical prototypes help designers test these assumptions before investing in costly hardware development. For this project, I prototyped the hardware and software components of a home automation system using Arduino, an open-source electronics prototyping platform. The system consists of integrated lighting, heating, and security components, housed in a 3D printed enclosure.

 

The Challenge

The challenge was to prototype an IoT system by designing both its hardware and software architecture. This required implementing the physical system using a combination of sensors and actuators that respond to user input, environmental inputs, and wireless communication.

My Role

This was an independent project

 

Hardware Implementation

 I started the project exploring individual hardware builds to familiarize myself with the Arduino IDE, and the various types of digital and analog inputs.

I started the project exploring individual hardware builds to familiarize myself with the Arduino IDE, and the various types of digital and analog inputs.

 

The individual components are combined into one integrated build (left). A fritzing diagram (right) illustrates how the hardware components are wired together

 
 Soldering a make-shift circuit board that would be hidden under the flooring of the house

Soldering a make-shift circuit board that would be hidden under the flooring of the house

 
 

Software Implementation

 
 
 The software for the system was coded in Arduino (left). A diagram (right) shows a high-level overview of the sensor inputs and outputs of the IoT system. I was able to code most of the desired functionality, however the organization of the looping functions needs to be improved and blocking delays minimized for future iterations. 

The software for the system was coded in Arduino (left). A diagram (right) shows a high-level overview of the sensor inputs and outputs of the IoT system. I was able to code most of the desired functionality, however the organization of the looping functions needs to be improved and blocking delays minimized for future iterations. 

 Planning the software architecture on paper.

Planning the software architecture on paper.

 
 

3D Printing

 
 
 The 3D prints were downloaded from Thingiverse, prepared in Flashprint, and produce on FlashForge 3D printers.

The 3D prints were downloaded from Thingiverse, prepared in Flashprint, and produce on FlashForge 3D printers.

 
 The assembled frame for the housing enclosure. The house is modeled after the iconic Glass House by architect Philip Johnson.

The assembled frame for the housing enclosure. The house is modeled after the iconic Glass House by architect Philip Johnson.

 
 My 1st attempt at printing tiny furniture resulted in three-legged tables and chairs. I tweaked the settings and rotated the furniture so that the largest surface area was in direct contact with the printing bed.

My 1st attempt at printing tiny furniture resulted in three-legged tables and chairs. I tweaked the settings and rotated the furniture so that the largest surface area was in direct contact with the printing bed.

 
 

Final Concept Video

 
 
 

Reflection

3D Printing

The process of 3D printing was extremely satisfying, albeit time-consuming. There was a certain amount of problem-solving involved, particularly when determining the best way to print the furniture with the least amount of supports and details intact.

Hardware Assembly

Over the course of this project, I’ve developed a confidence in working with hardware. At one point, I had more components than pins available on my Arduino. This forced me to think creatively about how I might wire components together, leading to the design of a makeshift circuit board.

Coding Interactions

Coding with Arduino was novel yet intuitive. The open-source software and support system made it quite easy to learn. While individual builds were simple to implement, the challenge was determining the logic that brings these builds together into an integrated system.