25 December 2008

Nike+ with Linux

When we left town for Christmas, I wanted to bring my Xbee and Arduino stuff with me. I made decent progress during the Turkey break but then work took over my life again and I did nothing with 'em for the next 3 weeks. With almost two weeks of pending freedom, this seemed like a perfect chance to get working again. But as I was packing two shoeboxes full of junk, my wife said "ah ... no". Damn. I hope Santa brings me something fun or I'll go nuts.

He didn't disappoint. For Christmas I got a Nike+ which is a piezoelectric accelerometer that slips into your shoe and then transmits data to a receiver on an iPod. Yes, this is just a fancy pedometer but it's something to mess with on Christmas break and keep me sane. I used to run a lot. Now I run when I can. My problem with running (besides not having much free time) is that I'm obsessed with my stats. Sometimes I have to run without a watch else I stress myself out over my splits, my pace, what I did last time, what I should of done this time. I'm a mess. I'm better now with this obsession than I was 15 years ago. But I'm also fatter and slower so I've had to lower my expectations of myself. I guess age not only makes you wiser, it makes you feel mortal.

Anyway, Santa brought me a Nike+ thing that will only feed my stat obsession because it tracks my runs by distance, time, pace, and calories burned. Sounds cool. Since the Nike+ sensor requires an iPod, Santa also brought an iPod Nano.

Not so good. See, I'm not an Apple fanboy. Not at all. I pretty much hate Apple, iPods, iPhones, iTouch, i-whatever. Not that I think the products are crap, it's just the whole Apple religion that the fanboy freaks sign up for. And I hate that punk in the Windows vs Mac commercials.

So I have an iPod. Which means I need iTunes to run the thing. Oh joy. Last time I ran iTunes for my daughter's iPod, it completely trashed my mp3 library and "optimized" it so that I couldn't find a damn thing. Task 1 - Look for an iTunes replacement that runs on Linux. I googled around a bit and tried a few alternatives. My favorite so far is the freeware Floola which can run without installation on Windows, Mac, or Linux. This app is pretty nice and hasn't disappointed yet. I loaded up 7.3GB of music, slipped the Nike+ sensor in the shoe and went for a run. Besides struggling with the headphone cable that wanted to choke me and trying to find a comfortable spot for the iPod armband, the first run went well. The interface couldn't be easier. Select a work-out, choose music and go. When done, click a button.

Nike has a website that good little fanboys/girls are supposed to use for syncing the workouts and tracking progress. What a piece of crap. The website is all in flash. It requires iTunes to upload the run. I wanted to be fair and see what it was about so I booted into Windows, installed iTunes and fought with it for about an hour. Did I mention that it was crap? The latest iTunes is better than the crap I had used a few years ago but still crap. The iTunes - Nike Plus link is very fragile. On the first run, you have to have a nike+ account already established else iTunes fails to upload your run and then won't ever ask for your website login info. Very crappy. I'm not the only one with this problem. Many people rant about it in the Apple forums. For me, the fix was simple. Using Explorer, I accessed the drive directly and copied the workout XML file from the sync folder to the latest folder. I made sure I was logged into the Nike+ website, then re-opened iTunes and clicked sync on the Nike+ tab. The result wasn't worth the effort. Crappy interface showing my run. woo hoo.

There's gotta be a better place that manipulates the Nike+ data, it's just XML. One of the first alternatives that I checked out was Runner+. This is pretty decent but only two options for syncing the data. Pull the data from Nike Plus crap website or use a Yahoo Widget that only runs on Windows or Mac. Next, I looked into Runometer. To sync data on this website, no widget or ActiveX control is need, all you need is the XML file. You can upload runs from your Nike/iPod kits, Garmin devices, or use KMZ files generated from MyMotion-enabled Windows Mobile devices. Very linux friendly since it only cares about the data. I also like the ability to publish my most recent run/runs like the image above.

I'm wondering how long the sensor will go before the battery dies. When it does, I'm going to give this instructable a try: Replace battery in Nike+ sensor for under $5


Tyler said...

nice rundown of the options for linux. was looking for the runometer site, had found it a while back and liked it. it shouldn't be too hard to write a nice little app for collecting/displaying nike+ data should it?

lizard43 said...

My thoughts also on the little app for creating nike+ data.

http://nikeplusedit.com has a web form for creating a data file but doesn't quite meet my needs. I've written a Groovy app that spits out a data file readable by runometer. I'll blog about it soon.

Warren Butler said...

Following with interest. Also love the Nike+ addon, but hate iTunes. Trying to find a reasonable Linux solution.

I took a look at one of the xml files and it doesn't look too mysterious.


RunningTracker said...

Check out Running Tracker: http://runningtracker.tuxfamily.org, it permits to analyze Nike+ data on Linux.