kaegi/kdri

Value of KetlerValue.BrakeLevelMax

Opened this issue · 6 comments

Hi,

I read your code and I see the mistake. After decompiling SFIT application I see that enum KetlerValue.BrakeLevelMax must have a value of 29.

The KettlerDeviceData.time and KettlerDeviceData.time_mode is really Option

Thank you for your library. I expect that your library will be used in Golden Cheetah. I'm also waiting to see whether a similar library in Java for Android.

Sorry for my english :)

Milos

Sorry,

The KettlerDeviceData.time and KettlerDeviceData.time_mode is really Option u16...

kaegi commented

Thank you for your feedback!
KettlerValue::BrakeLevelMax being 19 was more or less just a typo.

What is the series/type of your device. Does this library work completely? I'd like to add another
Tested on XXX to the README file.

My device is Kettler RACER S. I can test the library with some demo applications. I have no experience with the rust language

kaegi commented

Call cargo run --example=cli with latest version of this repository.

This will start a shell-like program where you can query values with

> rpm
> distance

or set values with

> online=1
> brake_level=10

(no spaces between words/equal sign!)

See "example/cli.rs" for all vales you can query/set. The returned values are either None (value not supported) or Some(XXX) (good sign!). Keep in mind that not everything that sounds logical works: for example the RUN 7 does not support time and time_mode.

If rpm, device_* and brake_level* work, there is probably no need to worry.

I am very sorry. I dont known how to run on Windows. I use only Android Studio for github projects (on Java). I am amateur programmer :)

kaegi commented

As the README states, the library currently needs Linux and BlueZ (the Linux bluetooth stack) to operate. The problem currently lies in bluetooth-serial-port and mio, both are central dependencies for kdri. They are just not as advanced on Windows as they are on Linux (missing functionality).