Wahoo Kickr Core in Homeassistant

I recently bought a home trainer (Wahoo KICKR Core) to keep in shape over the winter.

For the uninitiated: this device lets you mount your bike onto a trainer by removing the rear wheel. The trainer then controls resistance at the hub.

I’m mainly using ERG mode, where you set a specific power target and the trainer ensures you hit that target regardless of cadence—perfect for riding while watching some TV show.

Changing the resistance can be done primarily using:

  • the Wahoo app
  • a virtual game such as Zwift

Zwift also developed their own physical controls, but they only work with Zwift. There’s a project that makes them usable with other software, but since I mostly care about ERG mode (which is managed by the trainer itself), I don’t really need much software at all. Using the Wahoo app works fine, but I’d prefer a physical button.

The obvious solution was controlling the KICKR Core through Home Assistant:

Luckily, thanks to this repository (github DOT com/elfrances/wahoo-fitness-tnp) reverse-engineering the protocol (and a bit of AI), an integration was quickly written:

The integration supports:

  • autodiscovery
  • sensors: power, cadence, speed
  • controlling: ERG wattage, Gradient

It also allows controlling the grade if you don’t want to use ERG mode.

With this + Home Assistant, it opens up a wide variety of options:

1 Like

This is great! Just what I was looking for! I want to automate my fan, heatpump and other things when I start riding.

Is it possible to use this integration and at the same time use Zwift/MyWhoosh? Or can the trainer only have one connection at a time?

Hey @nedberg,

I just tried this, and unfortunately it doesn’t work with MyWoosh, only one client can connect at the same time. I will investigate it some time.

What I tested so far and can confirm to work.

  • controlling the Kickr through the Wahoo app
  • home assistant can still read out all the values

So I know that two devices can connect, not sure why it doesn’t work with MyWoosh. (I don’t have Zwift)

Best

1 Like

@nedberg what I just tried and works is connecting the kickr to homeassistant via Wifi and then MyWoosh through Bluetooth.

Note: the integration anyway only works with Wifi.

I will debug a bit to check why MyWoosh can no longer connect through wifi (it just says pairing) when the HA integration is already connected.

Yeah, I just did a ride and noticed that it worked just fine. I use Mywhoosh on an Android tablet, and Android only connects with bluetooth.

I’ll set up some automations later!

Thanks a lot!

By the way: I reported an issue on Github. I was not able to install via HACS. I had to upload the cusom_component manually. No problem, but just thought you should know.

1 Like

I reported a new issue on GitHub. The integration seems to spam the database and use up alle available disk space.

Thanks for the report :pray: I pushed some changes for smarter and better configurable sensor updates.

The issue was resolved. It was due to the integration constantly forwarding the sensor updates at full speed to HA.

To mitigate, the integration now has a:

  • button to connect/disconnect from the device
  • automatic sleep detection (e.g. after x seconds of inactivity, only a heartbeat signal is forwarded to HA every y seconds)
  • also added throtteling (deactivated by default) to control the number of updates per second

I recommend using the connect/disconnect button whenever starting a training session though.

1 Like