Thoughts for a linux daemon

49 views
Skip to first unread message

Carsten

unread,
Aug 9, 2010, 2:15:19 AM8/9/10
to FitBit Developers
Hi guys!

I recently switched back to Linux after almost 2 years with a mac.
Unfortunatly I cut myself out of the fitbit clientsphere now, so I'm
looking for a way to sync with the website. I know that there is not
much support for a linux client from officials (or am I wrong on
this), so I like to share my thoughts about a way to create a linux
client.

First of all, I am aware that this will involve a lot of reverse
engineering and packet sniffing. But on my mac I was able to run the
sync daemon in debug mode and it printed a lot of information to the
console and logs. I think this is the same information that is
gathered by the official log creation tool (I used this information
while analyzing my broken base station...).

I feel like it's possible to get lots of information from this logs,
not from reverse engineering. And given that there is the Mac daemon
already, it has to be possible to create a linux daemon too. I'll read
up on the ANT chipset, I think the communication is encrypted in some
way. Anyone has more information about the hardware and access to it?

Is there any linux love out here anyway?

Carsten

unread,
Aug 10, 2010, 11:52:09 PM8/10/10
to FitBit Developers
Little update on this:

I will start with monitoring the communication on the USB port on a
Windows machine and store everything I can gather over some hours.
Guess I'll need to monitor my network connections to the official site
too, to correlate the USB traffic to data.

Anyone here with experience in reverse engineering?

John Kramlich

unread,
Aug 11, 2010, 12:51:30 AM8/11/10
to FitBit Developers
If I recall correctly it looked as if the data that was being sent to
the fitbit website from the basestation software was simply HTTP
POSTs. At one point I posted a link the the FitBit API that is
currently in beta. However, it looks like someone removed that
message as I don't see it in the group anymore. Unfortunately I don't
recall the URL (though if I did post it, it would probably
mysteriously vanish again).

You may be able gather more information by looking at the mac software
from fitbit. It's a daemon called fitbitd. Since it runs on MacOS X,
there's a chance the code may be similar to a linux machine.

If you are looking for tools to monitor the traffic I hear WireShark
has a good set of features.

Carsten

unread,
Aug 11, 2010, 4:19:18 AM8/11/10
to FitBit Developers
On 11 Aug., 06:51, John Kramlich <j...@manifestinteractive.com> wrote:
> You may be able gather more information by looking at the mac software
> from fitbit.  It's a daemon called fitbitd.  Since it runs on MacOS X,
> there's a chance the code may be similar to a linux machine.
Yes, I have some experience with the daemon. I'll look at it on my
Linux box soon.

Right now I am recording the USB traffic on my windows machine, maybe
it's worth to look at the communication.

> If you are looking for tools to monitor the traffic I hear WireShark
> has a good set of features.
I will try to record the TCP traffic to the official site too. Thanks
for pointing me to Wireshark. I think it's easier to make sense of the
USB communication if there is a correlation with the TCP traffic... i
guess. %-) I'm going blind right now, just collecting information.

I read that Fitbit uses the chip nRF24AP1 v1.0 and I collected
documentation about the chip and the ANT protocol in use. I think if
anyone is interested in my findings, I can share a public repository
with all my stuff soon.
Reply all
Reply to author
Forward
0 new messages