Fitbit Data Transfer Reversed

126 views
Skip to first unread message

Kyle Machulis

unread,
Feb 9, 2011, 2:10:13 AM2/9/11
to fitbit-d...@googlegroups.com
Hi! I'm Kyle Machulis, aka qDot. I do a lot of hardware reversing, and decided to check out the fitbit. I've got a python proof of concept for data retrieval and synchronization mostly done, it's at


I've gotten a basic linux web synchronization client going, as well as a start of an ANT access library in python. This still skips a couple of steps in the final step because I can't get burst sends working correctly to the device, but that only seems to happen for time and website info sync, I think.

The reverse engineering and protocol doc is currently being written:


If anyone would like to check it out or help, that'd be great. Only requirements so far are libusb-1.0, python 2.6+, and pyusb-1.0 (you'll need to get this off sourceforge, the setuputils package is old). Please note that this is nowhere near ready for primetime, just figured I'd reach out to the rest of the community to get this done quicker.

Jonathan Bidwell

unread,
Feb 10, 2011, 9:06:45 AM2/10/11
to FitBit Developers
Hi qDot,

Interesting Fitbit project. How fast is the accelerometer data
sampled?

I'd like to use the device for gesture recognition. I seem to recall
that "sleep mode" is sampled at ~1 min intervals. Have you encountered
any data that is sampled at a higher rate?

Thank you,
-bidwej

On Feb 9, 2:10 am, Kyle Machulis <k...@nonpolynomial.com> wrote:
> Hi! I'm Kyle Machulis, aka qDot. I do a lot of hardware reversing, and
> decided to check out the fitbit. I've got a python proof of concept for data
> retrieval and synchronization mostly done, it's at
>
> http://www.github.com/openyou/libfitbit
>
> I've gotten a basic linux web synchronization client going, as well as a
> start of an ANT access library in python. This still skips a couple of steps
> in the final step because I can't get burst sends working correctly to the
> device, but that only seems to happen for time and website info sync, I
> think.
>
> The reverse engineering and protocol doc is currently being written:
>
> https://github.com/openyou/libfitbit/blob/master/doc/fitbit_protocol....

Kyle Machulis

unread,
Feb 10, 2011, 1:08:42 PM2/10/11
to fitbit-d...@googlegroups.com
So, the fitbit isn't really built as a real time sensor. It's doing all of the step count processing inside the device, and there's no way to get the sensor readings out in real time; if there was, it'd completely annihilate the battery, which would kill the original purpose of the device. Not only that, I'm not sure you could pipe that much data that quickly over the ANT connection.

Better bet for that would be the wiimote (though it's bulk), or there's probably cheap zigbee connected accelerometers somewhere. Or join the bandwagon and use the kinect. :)
Reply all
Reply to author
Forward
0 new messages