Skip to content

12. Skin Electronics

Research

Skin electronics explore the integration of soft, flexible, and body-safe electronic components directly onto the skin or close to the body. These systems commonly use temporary tattoo circuits, conductive inks, silicone substrates, flexible PCBs, and wearable sensors. The goal is to create electronics that feel natural, stretch with the skin, and provide interaction without traditional rigid hardware.

They are used in applications such as:

Health monitoring (heart rate, hydration, movement sensors)

Interactive performance (light-reactive tattoos, gesture control)

Fashion and body art

Soft robotics and prosthetics

Researchers in this field focus on material softness, biocompatibility, sensor accuracy, and user comfort. Different fabrication techniques include screen-printing conductive inks, laser cutting circuits, vinyl cutting, flexible microcontrollers, and temporary tattoo substrates.

Skin electronics push the boundaries of how technology blends into daily life, enhancing personal expression, healthcare, and interactivity.

References & Inspiration

Tools AND workflow

1️⃣ Tools & Materials Needed Electronics

1.Arduino Uno or Arduino Nano

2.MPU-6050 sensor module

3.3 × LEDs (any color)

4.3 × 220Ω resistors

5.Breadboard

6.Jumper wires

7.USB cable

8.Software

9.Arduino IDE

“MPU6050” library (installed from Library Manager)

2️⃣Hardware Setup (Wiring Diagram)

A. MPU-6050 → Arduino

MPU-6050 Arduino

VCC → 5V GND → GND SCL → A5 SDA → A4

B. LED Connections

LED1 (+) → D2 through 220Ω resistor LED2 (+) → D3 through 220Ω resistor LED3 (+) → D4 through 220Ω resistor All LED (-) → GND Software Setup

3️⃣Open Arduino IDE

I Install MPU-6050 library: Sketch → Include Library → Manage Libraries → Search “MPU6050” → Install

I Connect TO Arduino using USB

Select:

Board: Arduino Nano

Port: I USE COM3 AS MY POT

4️⃣ Code

MPU6050 mpu;

int ledX = 2; int ledY = 3; int ledZ = 4;

void setup() { Serial.begin(9600); Wire.begin(); mpu.initialize();

pinMode(ledX, OUTPUT); pinMode(ledY, OUTPUT); pinMode(ledZ, OUTPUT); }

void loop() { int16_t ax, ay, az, gx, gy, gz;

mpu.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);

// LED1 - X axis tilt if (ax > 2000) digitalWrite(ledX, HIGH); else digitalWrite(ledX, LOW);

// LED2 - Y axis tilt if (ay > 2000) digitalWrite(ledY, HIGH); else digitalWrite(ledY, LOW);

// LED3 - detect shake if (abs(gx) > 15000 || abs(gy) > 15000 || abs(gz) > 15000) { digitalWrite(ledZ, HIGH); delay(200); } else digitalWrite(ledZ, LOW);

delay(50); }

5️⃣Uploading & Debugging

Steps:

Click ✔ Verify

Click ➡ Upload

Open Serial Monitor at 9600 baud

Move the MPU-6050 and watch the values change

Adjust threshold values if LEDs trigger too fast or slow

6️⃣Testing & Calibration

Test 1 – X-Axis Tilt (Left/Right)

Tilt sensor LEFT or RIGHT → LED1 (D2) turns ON

Test 2 – Y-Axis Tilt (Forward/Back)

Tilt sensor FORWARD or BACK → LED2 (D3) turns ON

Test 3 – Shake Detection

Shake sensor quickly → LED3 (D4) BLINKS

Results

Video