Overview
Hacko is a modular electronics system with reconfigurable electronic components. Its inner flexibility enables unskilled end-users to build the gadgets of their needs and extend the lifespan of electrics.
Time
April 2019 - October 2019,
as M.A. thesis project
Advisor
Carola Zwick & Lucy Norris
Tools
Android Studio, Rhinoceros, Adobe Suite, Sketch, 3D Printing & Milling
In a nutshell
Problem
When we throw away an electronic device, most components inside are still in good condition. Yet, the devices are usually designed as a closed system that users can hardly hack, repair, or reuse them.
Goal
The objective of this project is to change this cycle by empowering non-skilled users to configure gadgets from a systematized collection of electronic modules that can be reused across an array of devices.
Target Group
People who would like to take the initiative of the product they are using.
Solution
A modular construction kit for electronics that makes technology changeable, updateable, and reusable. By configuring the module on tablet application, users can create functional products for their own purpose and reconfigure them once the original purpose is not needed.
Motivation & Ideas
Problem
Electronic wastes
In a time when technology develops rapidly, electronic devices are generally considered as semi-disposable consumer products which can be easily discarded as soon as the next shiny object catches our eye or when a single element inside is broken. However, when we throw away a gadget, the components inside are rarely past their prime —they are perfectly reusable and deserve a second chance.
Why can't we reuse the unneeded electronics?
The close system of electronics
Take a closer look at electronics, it’s not surprised to find that many of the them we are drawn from a small pool of functionally similar hardwares. Take door intercom, baby monitor and webcam for example, these three seemingly unrelated devices are actually all made of camera, speaker and microphone.
Despite of that, the vast majority of the electronics are designed as closed systems, that users can hardly fix or reuse them without professional knowledge.
Utilizing...
Users' creativity
I’ve been incidentally collecting the cases that users challenge the original intention of the designs, hack into them, and use them for an undesigned purpose. I was astonished at how creative the users are, as well as how “tolerant” the products could be.
As long as users are hacking our designs from time to time, why not we enable them to hack electronics? This way, they can continuously design and redesign the electronics and expand the life span of electronics.
How might we...
Open electronics
I would like to create a new ecosystem of electronics. This system will:
01
Embrace users’ critical sense, creativity, and practical sense, and enable non-professional users to create their own technical solution.
02
Expand the lifespan of electronics, and make the components changeable, updatable and reusable.
03
Include users to be part of the design process, and give them the voice to define the end-form of technology.
Ideation
Composable modular electronic kit
To achieve the goals, I would development model that allow users to create the applications with the product during use time.
Design Goal
Design for flexibility
This requires products to be flexible in their design so that it can be adapted or extended to fit different usage contexts and be responsive to any future change. There are two major design conditions for flexible products:
01
The product is built in a modular way, that it has the capability to be configured and reconfigured.
02
Utilizing modularity, the product’s functionality is distributed and exposed through an interface which supports expansion and adaptation.
Concept Development
Research
Defining the essential modules
I listed out the common electronic components and sorted the electronics into 4 categories: controller, sensor, actuator and infrastructures. After interviewing 2 novice users, I saw two critical points here:
- There are some overlapping functions. For instance, the camera could supplant the light sensor or the motion sensor when real-time analyzing is applied.
- Some technical terms, (e.g. PIR sensor) could be confusing for novice user.
So a predigestion would make sense here. Inspired by human’s five senses, we tried to organize them in a more intuitive way. Camera, motion sensor, light sensor and color sensor are integrated into the “vision object”, as their functions are all related to human sight and can be done with a camera. Likewise, the microphone and the sound sensor are combined as the “hearing object”. At the end, we finalized with 9 essential objects for the starting.
Conceptualizing
Interaction pattern
The goal is to enable anyone of any background to design functional electronics, so computing logic is not the prime here. Instead, the system has to stay as simple as possible to reduce user’s learning time. At the same time, however, it should remains a certain degree of complexity in order to create more diverse outcomes. I designed different interaction methods using different carriers:
#1
Assign functions to the objects through physical interactions. For instance, putting two objects together is “connecting”, while putting apart means “disconnecting”.
#2
An added layer of a smartphone screen to display necessary information. When composing the objects beside the smartphone, they would appear and could be programmed on the screen via Bluetooth.
The tablet screen identifies the objects when they are put on to it. Then, they can be programmed graphically by drawing arrow from one to another on the tablet.
Method #1 turned out unable to carry enough information, and method #2 is counterintuitive in having to deal with two interface at the same time.
After several trials, I came up with the idea of the combination of tablet and physical programming. The modules can be place on the tablet for configuration. Utilizing the idea of concept mapping, drawing a line between two modules would define the relationship between them and eventually create a functional project. This version fixed the inadequacies of the previous two —the digital and the physical are combined into one coordinated interface.
Technical Research
Object sensing on tablet
To realize physical programming on tablet, the objects has to be sensed and recognized by touch screen. There are several ways to do so:
Method 1
Add a protruded camera (or a mirror to reflect, e.g. Osmo) and analyze/recognize the image in real-time.
Method 2
Attach a hall sensor grid to the back of a tablet to sense the magnet-embedded objects.
Method 3
On the base surface, there are three conductive touch points forming an isosceles triangle. When placing it on the tablet, the conductive points would get charged, and thus be sensed by the capacitive touch screen.
Method 3 was chosen for the project because it meets the functional requirements without extra hardware add-ons. Based on openFramework resource, I created an Android app detecting all touch points and looking for isosceles triangle. When sensing a triangle, the app would display it on the screen by the position of the triangle and the degree of the vertex angle. In my experiment, I was able to detect 10 different objects.
Introducing Hacko
Design Solution
Composable Modularized Objects

Click Object
A non-latching button that takes finger press as an input signal.

Adjustment Object
A rotary knob used to provide input to a device when being pressed and turned.

Vision Object
Conducting actions related to the sighting, such as picture or video taking, motion sensing, light sensing, or color sensing.

Hearing Object
Conducting actions related to the hearing, eg, working as a microphone for audio input or loudness sensing.

Environment Object
Conducting actions related to the environment factors. E.g. temperature sensing, humidity sensing.

Speaker Object
A speaker that plays audio sounds or music as an output.

Indication Object
An LED pilot lights that indicate a system’s operation using RGB light output.

Power Object
A smart plug that could switch other electronic appliances on and off.

360 Object
A step motor that is able to turn 360°. It creates physical movement to other things when attached to them.
Click Objects
Adjustment Object
Vision Object
Hearing Objects
Envrionment Object
Speaker Object
Indication Objects
Power Object
360 Object
How the objects get detected?
Sensing Spots
Under each object, there are three raised points made of conductive foam, which could be charged from the hand when contacting. So when an object is placed on the tablet, the capacitive touchscreen could sense the different vertex angles mapped to different objects and thus define what and where that object is.
App Interface
With the tablet application, users can
- create a functional project, either DIY or using a template provided by others. (see following sections)
- view, edit, and manage the created project.
- share and discuss with the community.
- browse and purchase the objects and accessories.
Visual Programming
Configuring the objects on tablet
On the ‘create’ page of the tablet app, the objects can be program graphically. By putting the objects on touch screen to activate them, draw lines linking two (or more) objects to define the relationship between them, and further modify the details, users can customize a working electronic device based on their need.

Add an object to by placing it on the scree

Group objects by putting them close to each other

Interact with the object to call up the function

Rotate the Object for selecting the function

Draw line to link two objects

Touch the action and scroll for changing it

Modify the detail of a certain action

Add the elements from the + menu

Move the Object on the screen for a better layout

Drag the Object outside of the screen to save some place
Lower the threshold
Templates
If the user don’t like DIY, there are many ready-to-use template available on the app. Just simply place the object on the on the corresponding icon to activate it. And if desired, further modifying the details or adding extra Objects and actions are also possible.
Use Hacko In Real Life
Hardware Solution
Multifunctional Case
After the objects are programmed, the can be placed into the niche of the stand for daily use.
Adaptability
Design for different usage scenarios
The bracket on the back of the stand can be rotated to different angle to fit in different usage context: standing, hooking, or hanging.
Standing on a surface
Hanging on a holder
Hooking on a rail
Design Details
Charging the objects
Furthermore, the stand also work as a charging hub for the objects to keep them always alive.
Connected to external hardwares
Socket adaptor
The socket adapter is designed to bring about the connection to other appliances. For example, creating a remote controller to turn a lamp on and off.
CMF Strategy
Diverse and inclusive
The objects are designed in grayscale to stay neutral for future recomposing; the more distinctive color and material are applied to the accessories so that the user could choose the one that is suitable for their usage context.
User Flow
Application Examples
Application 1
Baby camera
The baby camera consists of Vision Object, Hearing Object, Sound Object, and smartphone. All together, they can help with remotely watching and listening to the infant.
Application 2
Intercom
When the baby get older, and the baby monitor is no longer needed, the original Objects can be recomposed into an intercom system by just adding an extra button.
Application 3
Speaker system
It’s also possible to use several same Objects in a Project. Connecting a smartphone to 3 Speaker Objects and place the them in different locations, so that they could automatically play the music once user enter that certain location.
Application 4
Weather clock
Embracing the maker culture, it’s possible to create a DIY project using Hacko. For example, map the tempreture sensed by the Weather Object to the 360 Object. The motor would rotate to display the current tempreture.
Lessons learned
Literature Research
In this project, Paola and I went through research from mind-map to user journey to interviews to testing. The study helped us set up the directions and informed us of the possible solutions.
Prototyping
Prototyping is an iterative process. We made paper models to present the idea and the form, 3D printed models to test the mechanism, and a final model made with real materials of oak and ceramics.
Programming & Computing
We made the interactive prototype in C++ (hardware) and javascript (software), and played with light patterns. Learning programming was a lot of fun for me and completed my design toolbox.
Reaching out the possible users
This project was exhibited during Milan Design Week, which provided us with the possibility of introducing it to a wider audience, directly speaking with them, and getting feedback for future improvement.