top of page

Adaptive jewelry

Instructor: Kathleen McDermott

Designer: Wanyue Wang

Tools: Arduino, Color sensor (APDS 9960), RGB LED, 3D printer

Design challenge

Design something wearable that may be useful in the near or distant future.


It was hard to picture the future world and to be honest, we struggled with the ideas.

Our idea is a wearable that responds to its surroundings. This wearable will look different in a different environment and it suits different situations. We then tried figuring out what form of wearable would be best to be adaptable to its surroundings. Jewelry seemed a good choice. Because as an important kind of accessory, jewelry is personal ornaments that show the taste of its owner and different scenarios always require different jewelry.

When researching the history of jewelry, we found that the main aspects of jewelry have been limited to the type of stone, material choice, and design. We wanted to take advantage of this medium lacking change. So we explored in what ways jewelry has had some technology inserted into it. Nowadays, jewelry had mainly been used to track fitness activity and this approach had never gone mainstream. We wanted to create a new kind of jewelry that could be effective in the future and more personal and emotional.


After finalizing what to create, we thought about how we could accomplish the goal of creating adaptable jewelry.

Output component

RGB LED can be the output for the reason that it is easy to control and be integrated with jewelry, such as earrings and rings.

Color of surroundings (input)

Now can we get the color information from the surroundings? The first idea we came up with was using a time-lapse camera. The camera would take pictures of the surroundings every 5 seconds, then we calculate the average RGB value of these pictures and use the value to control an RGB LED.

But we failed to achieve this goal because Arduino's 8-bit microprocessor is too slow to calculate the RGB value of an image. So we decided to utilize a color sensor. We tested two types of the color sensor, one was an older model named TCS 3200, the other one was a newer sensor called the APDS 9960. The newer one was more accurate.

Possible materials for the new Jewelry

Since we would use LED to reflect changes in surroundings, the materials we used should be transparent or transparent, also the materials should enhance the ambiance of the light.

Play foam and hemp rope spherical light ball could be possible choices.



Test and improve the accuracy of the color sensor

During the preparation stage, we tested the color sensor APDS 9960 but the RGB value looked different from general value. So now I had to manipulate the raw RGB data to get more reasonable RGB values. We tested serval different colors and compared the raw RGB value with general RGB value.

General RGB value V.S. Raw RGB value

The comparison result showed that raw data should be amplified. So I modified the Arduino code to :

  1. Find the biggest value among R, G, B

  2. Set the biggest value to 255

  3. Find the smallest value among R, G, B

  4. Set the smallest value to 0

  5. Multiply the middle value by 2

The new code worked pretty well.

After doing more testing we realized that the sensor APDS 9960 was not working in the dark, so we attached a light bulb to the sensor in order to get RGB readouts in the dark just like the older sensor did.

Make new jewelry

We then began to put everything together. We 3D printed out a ring to attach the sensor to create a ring and attached the RGB LEDs with rope light balls to make earrings.


bottom of page