Role: Product Designer & Physical Computing Developer
Tools: Arduino Uno, Arduino IDE, Rhino, Laser Cutter
Skills: Embedded Systems, Arduino Programming, Electronics Integration, CAD Modeling, Laser Cutting, Rapid Prototyping, Physical Computing, Sensor Integration, Product Design, User-Centered Design​​​​​​​
For one of my physical computing classes, I was challenged to solve a personal pet peeve using an Arduino. As much as I love my cat, Tai has an incredible talent for deciding my keyboard is the best place to sit the moment I have something important to do. I wanted to build an interactive toy that would keep him entertained long enough for me to actually get some studying done.
I started by researching how cats react to different kinds of movement and looking at existing interactive toys. My original idea was to imitate the unpredictable movement of prey, so I programmed a servo motor with an Arduino and spent a lot of time tweaking the code until the movement felt random instead of repetitive. At the same time, I designed a custom enclosure in Rhino, measuring each component so everything would fit together neatly while adding engraved cat-themed details to make the toy feel a little more playful.
When I tested the first prototype, Tai couldn't have been less interested. Instead of calling the project finished, I treated his complete lack of enthusiasm as part of the design process. I added a motion sensor so the toy would react when he approached and incorporated a speaker that played a chittering sound in hopes of making it more engaging. That meant redesigning parts of the enclosure, troubleshooting compatibility issues between the servo motor and speaker, and making plenty of adjustments to both the wiring and the Arduino code before everything finally worked together.
In the end, I learned something I probably should have known from the beginning: Tai just doesn't like toys with motors. The project ended up working better as a cat repellent than a distraction toy. Even though it didn't solve my original problem, it taught me one of the most valuable lessons I've had as a designer. Building something that works technically is only half the challenge. You also have to design for the actual user, not the one you imagine. Watching Tai ignore my carefully engineered solution reminded me that testing, iteration, and being willing to change direction are just as important as the final prototype.

You may also like

Back to Top