Archive for March, 2013

GPS Glove with RGB LEDs

Tuesday, March 19th, 2013


Thrilled to have been mentioned on Adafruit’s Ask an Engineer live webcast last week, I decided to write up more about my glove project. Here is a quick 6 second video.

Using Adafruit’s open-source Arduino compatible board, the Flora, a GPS module, and four RGB LED “pixels”, I adapted a North Face Hyvent glove to passively respond to my location on earth and to relay data.


Mostly for fun but I can see where this could be useful to someone in situations. I’m discovering some limitations along the way as well.

The project is basically a fork of Adafruit’s own excellent Flora GPS Jacket tutorial. You can find their code on Github.

I’ve added coordinates for all the lifts on Whistler Blackcomb in an array that get checked against my current location. If within a specified range (10m) the LEDs blink a calming red pulse (or warning).

GPS Coordinates of Whistler Blackcomb Lifts

#define GEO_LAT1 50.093744
#define GEO_LON1 -122.988872

#define GEO_LAT2 50.085781
#define GEO_LON2 -122.963975

#define GEO_LAT3 50.066972
#define GEO_LON3 -122.951978

#define GEO_LAT4 50.067606
#define GEO_LON4 -122.931094

#define GEO_LAT5 50.058631
#define GEO_LON5 -122.918017

#define GEO_LAT6 50.084258
#define GEO_LON6 -122.941625

#define GEO_LAT7 50.112939
#define GEO_LON7 -122.953297

//W Gondola
#define GEO_LAT8 50.112906
#define GEO_LON8 -122.954214

//B Gondola
#define GEO_LAT9 50.113458
#define GEO_LON9 -122.953381

#define GEO_LAT10 50.115503
#define GEO_LON10 -122.947719

#define GEO_LAT11 50.106319
#define GEO_LON11 -122.920436

#define GEO_LAT12 50.099919
#define GEO_LON12 -122.915525

#define GEO_LAT13 50.078456
#define GEO_LON13 -122.895761

#define GEO_LAT14 50.106478
#define GEO_LON14 -122.900831

#define GEO_LAT15 50.106447
#define GEO_LON15 -122.899889

#define GEO_LAT16 50.109542
#define GEO_LON16 -122.90565

#define GEO_LAT17 50.111767
#define GEO_LON17 -122.922981

Altitude, time, location and speed are displayed by a unique animation indicating the data type; the numbers are then blinked  in base 10 sequence across the fingers. Digits on digits.

I’ve got it set up to also indicate when I’m above a mile high (1609m) and to do other functions at precise times or locations. Get moving over twenty knots (37kph) and the lights flash alternating blue and red for a police chase effect. I purposely let the glove do it’s thing and be passive rather than introduce controls to make it interactive.


Building the glove was made easy by the design of the glove, or so I thought. The mesh inside pocket on top of the glove easily houses everything and the mesh makes weaving conductive thread easier. Working with conductive thread was *by far* the hardest part. Thread with a mind of it’s own. Nail polish as a knot sealer is the key here. Snaps sewn inside allow the Flora and GPS boards to be removed and used in other projects.

It’s holding up after a few days wear-and-tear skiing and snowshoeing except around the LEDs where the fabric is lifting. I’m still experimenting and fixing little things. Next steps are to add logging. Once stable I’ll share it on Github.