skateboard

back to home

Project video

Introduction

glove-controlled electric skateboard

This project documents the evolution of a gesture-controlled electric skateboard—from its initial proof-of-concept built during my time at Harvard to the architecture that won 1st place globally in the Seeed Studio XIAO Showdown.

The board replaces traditional handheld thumb-wheel controllers with an intuitive wearable interface. By embedding resistive stretch sensors into a glove, hand gestures are translated directly into motor commands:

  • Acceleration: Making a fist stretches the sensors across the knuckles, scaling up the duty cycle.
  • Braking/Reverse: Open-hand or inverse flexion patterns map to dynamic braking.
  • Failsafe: Any loss of sensor contact or wireless connection immediately drops the system into a neutral coasting state.

version 1: the ESP32 proof-of-concept (Harvard)

The first iteration was developed to validate that hand-flexion could safely and reliably manage high-torque electric skateboard motors.

Hardware: Powered by dual ESP32 microcontrollers.

Topology: A direct peer-to-peer link using ESP-NOW. The glove-side ESP32 read the analog voltage dividers from the stretch sensors, packed the raw values into a structural payload, and blasted them over ESP-NOW to a receiver ESP32 hardwired to the Electronic Speed Controller (ESC).

Functionality: It was a monolithic approach. The glove chip handled both high-frequency ADC sampling and wireless transmission on a single core, while the receiver converted the incoming packets straight into standard 50Hz PWM signals (1–2 ms pulse width) to drive the motors. While functional, it had a larger power footprint and lacked optimization for a true wearable form factor.

version 2: the XIAO Showdown architecture

To optimize power efficiency, footprint, and modularity for the global competition, the system was entirely re-engineered around the Seeed Studio XIAO MG24 (Silicon Labs EFR32MG24).

Hardware: Three XIAO MG24 boards running a decoupled 3-tiered architecture.

Topology:

  • Sensor Node (Glove): Acts as an I²C slave dedicated solely to low-noise sensor acquisition.
  • Relay Node (Glove): Acts as the I²C master to poll the Sensor Node, processing the data and hosting a local BLE Server using the native Silicon Labs BLE stack (sl_bt_api.h).
  • ESC Node (Board): Acts as the BLE Client, subscribing to notifications from the Relay Node and translating them to ultra-low-latency PWM signals for the ESC.

Why the Switch? To be honest I wanted to modify this skateboard to see what I can send in to the Xiao showdown. I'd been facing issues with the ESP32 overheating on itself because of it directly being linked with the ESC, but that's a change I still need to fix onto the next iteration.

stay tuned for v3! thinking of adding good steering this time too