sctajc / coxswain_sctajc

copy of real Coxswain redeveloped in Flutter
0 stars 0 forks source link

S4 Bluetooth connection as possible solution for USB problem connection S4 #1

Open inonoob opened 3 years ago

inonoob commented 3 years ago

hey @sctajc,

I saw that you are working on an App which is the same as Coxswain. But with Flutter you will be able to have it running on iOS, Android and Desktop ? Correct?

I saw that you have problems with the USB connection with the Waterrower. Maybe my project helps you. I would say if you do this app concentrate yourself on standards. In that case use the Bluetooth Low Energy framework. The connection to Fitness equipment in that case is regulated by Bluetooth group so no app developer has to develop for proprietary USB protocols. You could even open you app to more Rowing machine as every manufacture uses the standards.

I'm currently creating a Datahub for the Waterrower ==> PiRowFlo link. It connect via USB to the S4 or even uses the SmartRow. It already works with Coxswain :)

Maybe that removes your roadblocker. And yes I also prefer to have cable. But in that case you could be more universal and have a bigger rower spectrum to cover :)

And maybe you could integrate some feature to interact with PiRowFlo.

sctajc commented 3 years ago

Hi inonoob. Your connection approach looks great! And could just solve my connection problem. Are you going to produce these PiRowFlo devices for sale for the non-technical user? If so when do you think they would be available? I like the Pi models with the HDMI outputs. The app could play youtube on any screen. Your approach would certainly make it easy and flexible for a user. Do I take it when you say it already works with Coxswain I could just look at how Coxswain reads the data flow and do the same? I may need help with that but keen to try.

inonoob commented 3 years ago

Hey @sctajc,

Are we going to produce a version for non-techi users. Yes we wanna try. I'm very active in Waterrower Facebook groupe and the possible people are not that techi. We are currently prototyping the case and also the software needs to be more robust for non techi user. The screen feature just came out 3 day ago and still not ready.

The question does it work with coxswain. Yes it does. The thing is PiRowFlo works with all third party apps which supports the Bluetooth Low energy profile "Fitness equipment". Check my Docs session there you will find all the documents needed to understand what to do. If you wanna interact with rowers in general, I would say get a lib where the so called GATT client or Bluetooth low energy is implemented and you only need to use it. Often this libraries have already the profile integrated and you just need to initialize what you need. In this case the Rowing profile.

PiRowFlo is like I said a DATA hub for Waterrower data it takes the SmartRow data or S4 Monitor data as input and boradcast them with Bluetooth or Ant+ or both at the same time. When I say Pi, I always mean the Pi zero W which by the way has an HDMI port :). The Pi is kind of board during the running of PiRowFlo. I have a developper which currently has 2 feature which we want to have. Ant+ HRM as input and also Auto upload to garmin connect. For the Garmin feature once you finished your training the training is uploaded to Garmin connect.

I would suggest if you wanna create a product beside the Coxswain app for Android. Focus your APP on Bluetooth. It will make your life easier, you will find fare more details about the bluetooth implementation as for the Waterrower USB protocol. It is serial but you have to right your own lib if you wanna use it. For Waterrower you could focus and the use of the Comm Module and PiRowFlo. And that also opens your app to be used for example even with concept2. The beauty of PiRowFlo is that you could even support SmartRow :)

The thing with the help for your support, unfortunately, I can't support you on that Topics. First, I don't know anything about FLUTTER. Second, I'm so full with working on PiRowFlo that I can't spend time on another project.

A tip I can give you, if you wanna have people joining a project, I learnt documentation and easy to setup is key. I may not tell you a new story here but a lot of open source project fails due to the lack of documentation from there creators. You may wanna update the README with more infos and how to set it up. I know to create documentation sucks and I'm missing some too but my project really kicked off the moment I detailed documented everything.

Best Regards

Inonoob