[Samsung Gear Fit] jareddlc:
Hello XDA, I am updating this post to now reflect that this thread is a development thread versus a general thread.

What is OpenFit?

OpenFit is aimed to be an open source alternative to the Gear Fit Manager (which cannot be run natively on non-samsung devices), with hopes that it will provide most/all of the features provided by the Gear Fit Manager app and possibly even more. That being said, this application is in early development and lacks a lot of features.

What can it do?

Connect to the Gear Fit

Auto Connect

Sync time with the Gear Fit

Toggle 12-Hour/24-Hour clock

Media Controller

Alarm notifications (stock android clock app, cannot dismiss alarm from Gear Fit)

SMS notifications

MMS notifications (does not show mms content)

Weather notifications (currently only english support)

Weather clock style

Phone calls notifications

Reject phone calls (quick reply doesnt work yet)

Find device

Email notifications (does not grab the contents of email, that data is protected)

3rd party apps notifications

Pedometer data

Google Fit Sync

This app was developed using firmware: R350XXU0BOA2

Download from Google Play: Open Fit

How to install:

Download from google play

Run OpenFit application

How to upgrade/downgrade firmware:

Tutorial provided by user: [MENTION=5438003]LilLowEK[/MENTION]

Tutorial here

How to debug:

Install and Open CatLog app (Free on google play)

Press Menu key on you phone to bring up the record button

Press record and when prompted for file name, add filter with text 'OpenFit'

Press okay, it will begin to record logs for OpenFit.

Perform the action you are trying to debug (try doing it a few times, this helps me figure out the cause of bug)

When completed, stop the recording by tapping on the CatLog notification.

Email or pm me the logs so I can try fixing the bug

Github: https://github.com/jareddlc/OpenFit

How did I make OpenFit

The first thing i decided to do, was to try to research on how the phone and watch communicated. For this I enabled Bluetooth HCI snoop log in the developer options in the CM rom. This would log all traffic from bluetooth. I factory reset my watch and then connected it with the Gear Fit Manager app. I sent/received a test messages, using custom apps and text messages. I then stopped logging bluetooth traffic, and began inspecting the logs using wireshark. For each new connection after a factory reset of the watch, the Gear Fit Manager checks to see if a Firmware update is available and then sends most of the data to the watch; updated texts, images, predefined text etc. Then shortly after I began seeing the logs for the text messages and custom messages. For text messages, nothing was needed, but for custom messages, the app will send to the watch the image of the app along with some metadata, such that the watch can now receive the custom type message (think facebook messenger). So now that I had a nice data set to work with I tried connecting to the watch using androids BLE connections, but I could not connect successfully with it, and so I tried using the BT RFcomm and that worked (I can try to revisit BLE, now that I have more knowledge). Now that I can connect, I tried sending messages (messages from the BT snoop log), however I didnt have any success with this. I realized on each connection, the watch will require a message as a handshake and to my surprise the message was "ODIN" (Samsung's software to flash firmware). After I sent the "ODIN" message, that watch now acknowledge OpenFit and would accept incoming messages. Shortly after I was able to figure out the protocol for sending messages to the watch specifically, setting time and sending a general message. For each type of message, the packet that is sent is different, which is why it time consuming to figure out how to send a particular message. This is where I currently am in the development, I was only able to get this far by using the BT snoop log in conjunction with a decompiled Gear Fit Manager app which I used as a reference. If you have any specific questions feel free to ask.