Sunday, November 15, 2015

DIY Fitness Tracker

So after I laid my dearly departed Fitbit to rest, I thought about what I was going to do to replace it. I managed to quell the knee jerk reaction to run out and buy a new one. I was sorely tempted. But in the end I decided I would try to make my own fitness tracking something. At first I thought I would make a one for one replacement. Something that would track steps taken. But then I started to look into what was available.

If you are into hardware hacks and you don't live in a cave you know about Arduino's - small little micro controllers that can run code and interact with hardware. I had already been playing with Arduino's. I got my feet wet with a temperature sensor and a set of 8 segment displays for a readout. Anyway, I digress. So I figured whatever I ended up making, an Arduino would be the micro. Since I didn't really have a finished end product in mind I thought the shield route would be the most flexible on my route to a working prototype. Shields are collections of prefabbed electronics ready to dropped on top of an Arduino board. They make battery shields, GPS shields, Wifi shields, Bluetooth shields. You get the idea.

My two main supply sources for hardware hacks are Sparkfun and Adafruit. Sparkfun has some interesting stuff but I get a rougher around the edges vibe from them. Adafruit is very polished. Also they have excellent supporting documentation for their products - clear manuals and lots of good example code. For my first cut at a fitness tracker I decided to go with a GPS logger. One of my main forms of exercising is jogging so this seemed like a logical fit for me. I went with the following parts list:
Again I went for the shield style for easy plug and playishness. I only had to solder the headers on and I was good to go. The battery (a 2000mAh) is way overkill. But I didn't have a good feel for what kind of load all the hardware was going to draw. Full disclosure, I'm a mechanical engineer by training (although I do mostly software work now, weird huh?!?). So my EE skills are a little seat of the pants. Anecdotally, my tracker can run many hours without needing a charge. I've not run out of juice yet and I've started taking this thing with me everywhere I drive. More on that later. I typically charge it once a week.

Another hardware decision note: the built in ceramic antenna on the GPS logger shield works great on its own especially if it is pointing up. Since I was a little uncertain how I was going to mount this thing on me when I went jogging, I thought the most reliable thing to do would be to just go ahead and buy the add on Antenna. The cable is quite long but I just shove the whole thing in a fanny pack and sling it over my shoulder bandolier style.
 I threaded the antenna head in the packs strap then used an asparagus elastic (those things come in very handy) to keep it in place. Note the second elastic that holds the battery on the battery shield. I also put a twist tie around the strap to keep the antenna wire neat and tidy.
As it turns out the Arduino fits quite nicely in a standard 1 gang electrical box. I saw mention of this in an Instructable (very neat site if you haven't checked it out. Although their incessant registration requests are super annoying). 

The shield version is much bigger then it needs to be. I was just looking at a new Adafruit product, the feather. It could make the whole thing not much bigger than a pack of gum. Something to consider for Version 2.0.

Next time I will talk software!


  1. Wow! It looked awesome! I'm no tech-geek, but I'm a fitness buff. And I know the best fitness trackers that can help us stay fit and healthy. It's not a miracle worker, but it can add a whole new dimension and excitement in any fitness regimen - and that's what we need. There's a treasure trove of reviews and information right in this site, if you want to learn more:

  2. It is rare to meet someone who has undergone a home renovation that hasn't complained that it took too long. Having worked on home renovation projects of varying scales for homeowners getting their house ready to sell or prior to move in or even when they're living in the home, I have found that there are certain things that help make a project move quickly and efficiently. Whenever I see projects drag on and on for months, even years, it's because they're lacking in one or more of these areas. Granted, there are things that come up that are out of your control, but I can promise that if you follow the tips below, you'll reduce your project timeline significantly