izivkov / CasioGShockSmartSync

Apache License 2.0
107 stars 10 forks source link

Add Support for the Casio GBD-200 Watch #37

Open izivkov opened 1 year ago

izivkov commented 1 year ago

We would like to add support for the GBD-200. If any developer has this watch, and would like to contribute the project. please add a comment here, and I can assist with that.

Without any modification, the app can connect to this watch. Some functions work, and others do not:

What works:

What does not work:

In addition, the GDB-200 has some fitness functions, which are not present in the current app. It would be interesting to explore integrating the watch with Google Fit.

Realistically, what can be done with minimum effort is:

  1. Get Actions working. This is a matter of detecting what button was pressed and invoking existing app functionality. As of now, the Lower-right button is either not recognised or has different functions for this watch.
  2. Get reminders working. The format of data/commands for Reminders sent to to watch is apparently different, but should not be very difficult to implement. The App already has functionality to read the Google Calendar format.
izivkov commented 1 year ago

Will close this for now.

AntoniJakubiak commented 4 months ago

I really like Casio GBD-200. However, the official Move application is really bad and there was no improvement since I bought the phone.

Can I join your project? What is the risk to destroy watch during development?

Best Antoni Jakubiak

izivkov commented 4 months ago

@AntoniJakubiak Hey Antoni, To answer your questions, I have been trying to add fitness functions to the app, but I do not own any watch with these capabilities. Here is a thread of trying to do this for a GG-B100 watch. It is a different watch, but it works with the Move app, so the data should be the same or similar. I don't have that watch either, so it is hard to work blind, but the person who is helping is very good at extracting the right data. In that thread, you can see my idea of integrating the fitness functions into the app.

There is almost no chance of damaging your watch when developing. The firmware is read-only. If some of the values are screwed up, you can always do a factory reset on your watch. In the past 2-3 years, nobody has reported such issues using my app. (Of course, I cannot be 100% sure).

What do you feel comfortable doing technically? Using Wireshark to collect BLE data, programming in Kotlin, Python? We are always looking for contributors at various skill levels, so I would be happy for you to join.

izivkov commented 4 months ago

@AntoniJakubiak BTW, your watch should be able to connect and work with this app, but of course, no fitness functions. The app will not set any new values to the watch unless explicitly requested (i.e., you press any of the [send] buttons). But people have used the app with your watch, so it should not be a problem even if you update values.

ShivankChopra commented 3 weeks ago

Hi @izivkov

I own a GBD-200 watch, know wireshark, don't know about BLE but open to learn, same for kotlin and python (can try and program, not proficient but can pick up).

I can't give commitments, but I am interested in adding support!

How can I get started, and where to start first?

izivkov commented 3 weeks ago

OK, great!

The code is distrbuted between this project and this one. I norrmally combime the two projects into one what I do development. I will do that and will create a branch for you to work on.

To port the current functionality to the GBD-200 you probobly don't need to go into WireShark. I will show you how to selected features for your watch. If you like to add the fitness fuctions, then you will need to use Wireshark.

In the mean time, get familiar with Android Studio and Kotlin, if you are not already.

I will let you know whan your branch is ready. Regards, Ivo

izivkov commented 3 weeks ago

@ShivankChopra

Hi, I created a branch GBD-200 for you. Please fork the repository and checkout this branch. The first thing I would do it to try to build the app in Android Studio from this branch. Try it with your watch, and please comment here on what works and what does not. We will take it from there.

Thanks

ShivankChopra commented 3 weeks ago

Hi @izivkov

Sure, I'll setup and try to run the app.

Will update here.

Thanks and regards