Search
Product Info
Nike+iPod Serial to USB Adapter
sku: DEV-08245
Description: This is a simple USB serial interface to mate with the Nike+iPod product. Use this breakout board to send and receive serial commands to the receiver and listen for individual foot pods. This will allow easy creation of proximity based projects and running/workout research. VCC (3.3V), ground, and iPod TX and RX are brought out to a standard header so that you can connect this board to a microcontroller.
Don't forget to checkout the original tutorial!
We provide a simple example VB program that demonstrates how to initialize the receiver to listen for all foot pods in range and display the raw data including foot pod IDs. Any receiver can hear any foot pod - they don't have to be mated in any way.
Documents:
- Schematic
- Eagle Files
- Example VB Program
- Extra VB files (needed if you don't have VB installed)
Pricing
Comments
12 comments
Feeds
Currency
Display prices in
Feedback
If you would like to tell us more, you can fill out our form if you need some psycho-suggestive questions. Go to the form.
















Now I want to try my own applications, what are the serial commands I need to send to the receiver to put it in listen mode?
i wrote up some c code since i dont have vb, but my transmitter thingee (ma365ll/c) seems to have a slightly different protocol which seems to work.
i send the commands as in the original vb but the responses are slightly different
79: read(8) : 8
ff 55 04 09 00 00 07 ec
91: read(8) : 8
ff 55 04 09 06 00 25 c8
the original said that the commands 1 and 2 should have the same response string (0xFF, 0x55, 0x04, 0x09, 0x00, 0x00, 0x07, 0xec).
anyway, after this i do get 34 byte strings but i think that these have 'timestamps' or something because they appear to vary each time i hit the 'button' on the sensor.
99: read(34) : 34
ff 55 1e 09 0d 0d 01 a8 69 29 30 a9 ef dc 70 fe 0d d9 0d 3d 5a 8e ff 62 b6 a4 87 3f f4 b6 8a 7d 7e aa
99: read(34) : 34
ff 55 1e 09 0d 0d 01 a8 69 29 30 aa fd 7a af 2a 94 5e d0 cc be 23 3b 18 1e 70 6c a6 61 5f 10 5f 35 94
The last byte is a addition CRC - always 0x54 remainder?
i'm not quite hw person enough but this generates the proper checks against the messages i've seen thus far. (skipping the leading 0xff/0x55)
for(i = 0, n = bs[2], sum = 0xff; i <= n; i++)
sum += bs[2 + i];
return ~sum;
on the receiver i see
ff 55 1e 09 0d 0d 01 a8 69 29 30 af b3 c5 16 c3 .U......i)0.....
3c 4f 28 56 1c 29 0b 8f fd 77 71 20 aa 1b a0 e2
this gets sent in groups of 9/11/10 octets as
c2 bd 0d 01 a8 69 29 30 af
b3 c5 16 c3 3c 4f 28 56 1c 29 0b
8f fd 77 71 20 aa 1b a0 e2 ec
the first three nibbles are different so i've been thinking this was used to 'encode' something since the remaining #s dont seem to be monotonic up/down like a timer would be.
the last byte in the first group appears to be a sequence #. the first nibble comes as 0 when the sensor hasn't triggered in a while (and as 'a' otherwise). the last nibble is a sequence 0-f.
i guess i'll have to attach to the pic to see what the timers are doing to actually reverse something.
this gets sent in groups of 9/11/10 octets as
c2 bd 0d 01 a8 69 29 30 af
b3 c5 16 c3 3c 4f 28 56 1c 29 0b
8f fd 77 71 20 aa 1b a0 e2 ec
the first three nibbles are different so i've been thinking this was used to 'encode' something since the remaining #s dont seem to be monotonic up/down like a timer would be.
When I looked into this a while back, I was under the assumption that 'c2 bd' was actually the address field value in order for the nRF2401A to send the receiver. If you look at the spec sheet, the address field is automatically removed when the device is in ShockBurst mode (which I also found out to be the case). This would explain why it doesn't appear on the receiver side.
anyway, the pic side doesn't seem to have any goo (or as much) so here are teh pin connections from pic to xmit.
4 - clk
5 - cs
6 - pwr_up
7 - ce
12 - din
http://rtadlock.blogspot.com/2009/06/some-perl-code-for-nikeipod-serial.html
My current project is building a carpc, I've got it all together and have a aftermarket stereo installed (DEH-P4000UB), which has a usb port w/ ipod support.
Now what I wanted to do, is use something like this to interface the carpc with the stereo, allowing the stereo to control the pc & display music information on the stereo display. I've already gotten the p-bus pinout(used by car stereo), so connecting the audio to the stereo isn't a problem. And since this device based on sending and receiving signals, I'd imaging it could be used for this as well. And advice?
Here is the P-Bus pinout, just in case...
http://stereophonik.com/gutterslide/IP-BUS_Hack/
Thanks in advance.
-Bill
I'm trying to figure out why my Nike+ running data only shows pace readings at a 10-sec resolution, and whether it's the footpod, the receiver, or Nike+ website that's smoothing over the second-to-second data.
And once that's figured out, how we can hack the device to increase the frequency for the readings.