Nike+iPod Dissection


Don't people buy things just to destroy them for self-educational purposes? No? Oh... Well here is another breakdown of the internals of a commercial device. You can learn a lot from professionally engineered devices. Hunting for pictures online of the internals of the Nike+iPod pieces were surprisingly dissatisfying. The only set of pictures available were horribly out of focus, so here is a quick set of pictures to show you how the popular Nike+iPod product works.

There is a very interesting paper published by some students at U-Dub in the CS department. They basically tapped into the serial connection on the receiver and figured out how to listen for different foot tags. Not surprisingly the news has harped on this as a 'security and privacy risk'. A malicious person could design a system to listen for specific tags, as a means of tracking people and places (think crazy ex-boyfriend stalker), but it's just as plausible that we could use this commercially available product (CHEAP! $23.15 internet purchase at time of writing) to monitor where my Grandpa is sleeping, where my 4-year old nephew is playing, or I could automatically turn on/off my lights when I enter my office. Where RFID requires you to physically get near a reader, this active foot pod can transmit over 10-20ft. You don't need to think about getting an RFID card out of your wallet, you just let your shoes do the talking.

The Nike+iPod is not RFID or any form of RFID (Radio Frequency Identification) much to the chagrin of news reporters. While the foot pod does transmit a unique ID, it transmits this information actively in the 2.4GHz band. The foot pod transmits a 'hello world I am XYZ' in very short bursts (less than 0.0001 second per broadcast) on one of 80 available channels every time the user takes a step. This active signal can travel as far as 40-60ft (we don't really care to test the range). The publicly available RFID tags operate in the 125kHz or the 13MHz band and are often passive (requiring the tag to be within a few inches of a RFID 'reader'). The Nike+iPod technology is very different from true RFID systems.

There is no MEMs accelerometer! The foot pod was designed to activate a simple piezoelectric sensor to monitor how long your weight is on the foot (the faster you run, the shorter amount of time spent on one foot). This sensor fires an interrupt within a PIC 16F688 (yea! a PIC microcontroller!). I thought there was going to be an accelerometer built in, but this simpler method reduces the device cost considerably ($8-$10 retail dollars) and probably avoids some nasty patent infringements! Companies like Dynastream and PhatRat (hey, they're just down the street from SparkFun!) use an accelerometer associated with a human's gait and movement to determine overall distance, speed, etc.

Enough! Here are the pictures...


<

p> <img alt="The image

Comments 12 comments

  • Member #361484 / about 12 years ago / 1

    Here is another interesting article on the nike iPod with decoding software for the arduino. It decodes the ID but also the 20+ other bytes such as walked and running steps and also lifetime walking and running miles. The total on time is also calculated.

    Here is the link to the website: Nike iPod

  • Member #280673 / about 13 years ago / 1

    Grumble. You get the drill...

    12 Tx ipod sending line, Serial TxD 
    16 GND USB GND (-)
    18 3.3V 3.3V Power (+)
    30 GND 
    .
    1 GND 
    11 AUDIO_SW 
    13 Rx ipod receiving line, Serial RxD
    15 GND Ground (-)
    21 Accessory Indicator 
    29 GND 
    

  • Member #280673 / about 13 years ago / 1

    Oops - forgot to turn my ascii-diagrma into [CODE] - here it is again:

                **    ** **                **
     2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
    .
     1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
     *         ** ** **       **          **
    

  • Member #280673 / about 13 years ago / 1

    iPod pin 21 is the accessory indicator, so we can tell from observation of the photos the orientation of the plug (pin 21 is the 5th pin from the edge. There's only 1 solderd pin in that place).

    Therefore - this must be what is connected:

            **    ** **                **
    

    2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

    1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 * ** ** ** ** **

    12 Tx ipod sending line, Serial TxD 16 GND USB GND (-) 18 3.3V 3.3V Power (+) 30 GND

    1 GND 11 AUDIO_SW 13 Rx ipod receiving line, Serial RxD 15 GND Ground (-) 21 Accessory Indicator 29 GND

    I really wish someone could tell us what resistor was used on pin 21. The value of this baby is used within iOS to enable serial communications, and I'm itching to know what is used.

  • electropants / about 13 years ago / 1

    Hi, do you know if it's possible to use the Nike+ as a low-latency step sensor? I have the sparkfun board talking to my laptop but I only get about 1 update per second from the sensor.

  • cSu7xFSE / about 13 years ago / 1

    Does the iPod have a serial port?

  • Member #224730 / about 14 years ago / 1

    I assume that the PIC has the Code Protection fuse set?
    Has anyone tried dumping the program/data?

  • Tim / about 15 years ago / 1

    I was at ESC today and was talking to an engineer at a booth that had one of these units on display. they were displaying power solutions and stuff. They said that the nike unit does NOT use the piezoelectric device to charge or provide any energy to the unit, it is only being used as a sensor. Oh and NXP's booth was using your micro-sd card breakout.

  • CosmicPuppy / about 15 years ago / 1

    How long does the battery in the transmitter last? How many pulses?

  • EvanT / about 16 years ago / 1

    Did you ever find out what the configuration for the receiver was?

    • We did. The serial strings are located inside the VB app. You have to send two serial strings:
      0xFF 55 04 09 07 00 25 C7
      then a second later
      0xFF 55 02 09 05 F0

      • wyvez / about 16 years ago / 1

        Did you ever get around to uncovering the foot pod transceiver configuration? :)