Custom Component: King Smith Walking Pad

Threw together an initial pass at a custom component for controlling/automating King Smith Treadmills (e.g. their “WalkingPad”).

Right now it’s super basic, and I can only confirm it works with the specific model that I own (C2), but I plan on expanding the functionality (and adding it to HACS).

Check it out and let me know what you think: https://github.com/indiefan/king_smith

4 Likes

Hi @indiefan,

Great work on the integration!

I recently got a C2 and wanted to see more stats on my dashboard, so I added sensors for distance, steps, elapsed time and speed. You can have a look here: GitHub - mia-recki/king_smith at add-sensors

If you want, I’d be happy to clean up the code (it’s my first ever integration + I don’t normally write python, so clean up is much needed) and create a PR.
I also changed the input unit from mph to kph, but I think it should be possible to make that part configurable.

Awesome work! I’d be very happy to accept PRs. And I agree that making mph vs. kph configurable would be ideal.

@recki I’ve checked your commit and its supper nice.

It’d be super to get all these features (I was specifically looking to build a sensor dashboard to not have to look at the phone while I walk to check steps, etc) in the official repo from @indiefan.

Could you please do a PR with your code? (even though there’s no clean up yet).

I’ll confirm support for A1 Pro model once its merged.

Thanks!

Thank you so much for getting this started, @indiefan and @recki! Now I just have to figure out how to sync workouts to Garmin Connect!

Just installed your custom component. Works great with my WalkingPad C1. Is it possible to define a custom startup speed like 2.5 km/h?

Thanks for your work! :slight_smile: :grinning:

i use this ‘app’/datafield
https://apps.garmin.com/en-US/apps/97a22cc7-b1d4-463d-9246-017e1f965751

Unfortunately it does not seem to pickup the Z1 :frowning:

Adding support for the R2 was very easy, this will likely work with other devices too:

Get your phone and find the bluetoothname of the ble device the pad exposes (i use nrfconnect app for that)

  1. Update the manifest.json in the repository.
    e.g. The R2 shows up as KS-HCR1AA
,
        {
            "local_name": "KS-HCR*"
        }        

  1. Restart homeassistant
  2. The notificationbar informs you about a new device.
  3. Done.