Your best pain cave upgrade

That works well if you have a basic ON/OFF fan and I’m using these (and similar) for other devices. But what I’m talking about is Wahoo HEADWIND. It is fairly powerful and so to control the air it has 4 different fan speed settings. While the option to control the fan speed by your Heart Rate or Speed BLE sensors is already available and works great, in practice it’s more like a gimmick as both are not precisely tied to the actual cooling needs. There are rest/cold days when speed setting nr 2 makes me too cold and intense/hot days when speed setting nr 4 is just about right. Also, the demand changes - in the warmup I want it lower, during the race/workout I want it at max.

So basically my problem is not ON/OFF before/after ride, but more like ON-1-2-3-4-OFF that changes during the ride :wink:

You can do all that in Wahoo app, which is OK. In practice I would rather have an option to either build my own sensors/automations to control the fan speed (think advanced power/temperature/humidity logic, or even something predictive based on workout profile), or make a remote/panel with big +/- or 1-4 buttons so I can control the fan remotely and easily, rather than picking up the phone, opening app, waiting for device to find sensors and then change setting. That’s a bit of a pain during efforts. Yes, I could probably make a “fake” HR sensor sending arbitrary HR values based on my actual needs, pair it with HEADWIND and control it that way, but it seems unnecessary when all I need technically is to set a value of one BLE characteristic.

1 Like

The Zwift integration for Home Assistant is great, I’m using it together with the whole dedicated HomeAssistant server (and HomeKit) to control everything in and around the house. You have access to a lot of data during the ride that way and the way how to use them is practically unlimited. I’m for example logging all the ride data into InfluxDB database for visualisations via Grafana, both real time during the ride and for analysis later. I can create my own dashboards and switch OFF the in-app ones to declutter the screen. I can switch on the automation to control the colour of the lights in the room based on Power output, every time I receive a RideOn the lights flash, etc. The only disadvantage is the API and it’s limitations - mainly 5sec update rate.

For more realtime applications I think it’s easier to just build a simple server (Raspberry, Particle, etc), that reads ANT+ or BLE sensors directly and sends the data to Home Assistant for example via MQTT. You’re of course limited to Power, Cadence, HR and Speed that way, but as Sufferfest goes, unlike Zwift, there’s not much more needed really. There’s no “world”, terrain, other riders, profile, etc.

1 Like

It’s the reading directly that is the problem. There are Linux drivers for the ANT+ USB stick already. It’s just the link between that and home assistant that needs to be created and I’ve searched for a home assistant integration. I think it would need an integration to be written myself. I’d avoid bluetooth as dealing with the encryption would be a pain and many bluetooth devices are one-simultaneous pair only. Sniffing an ant+ signal would be easy. There’s also open source software with ant+ (Golden cheetah) that could be used for hints.

Instead of writing a bespoke integration for a pure data stream like power/HR/cadence the easiest way (I think) is to use what’s already available and designed for it - MQTT. There’s a broker available in the Home Assistant addons and all you need to start sending and using data you get from the source (ANT+ or BLE) is to publish it via your topics.

Now that’s fairly easy part. Reading BLE sensors is nothing too difficult either - there are plenty of IoT ready made devices that have BLE and MQTT Arduino/MicroPython libraries and that can sit somewhere on the USB power and do the job for you. But as you say, a disadvantage is usually just one client. ANT+ is much better in that regard, but you need something more advanced (and power hungry) than a microcontroller with an USB for a dongle - Raspberry is the obvious choice.

@Eerke @Phantomski Loving your tech talk, I’ve done many a thing with ANT+ myself, but you should probably take this off to a new topic. If you click on the arrow next to “Your best pain cave upgrade” when you write a reply then it’ll give you a “reply as linked topic” option. That’ll create a new linked topic where you can continue this techy pain cave upgrade discussion.

That is something I hadn’t thought of. Have you any experience with using the MQTT broker in Home Assitant for local devices? I’ve only ever used it remotely. Im fairly sure Bluetooth is built into the Rasperry Pi. One of my Heart rate monitors allows multiple Bluetooth connections (Wahoo Tickr X) but loads of the newer ones do. I also have two power sources (bike and trainer) and I suspect lots of people do so bluetooth isn’t impossible to get working.

Is there aw way to do this on a phone? I’ve looked twice and can’t see how to do it.

Happened to look for local bluetooth Home Assistant integration for buttons and it seems like a PITA (at least at time of the posts). An alternative I’ve thought of would be to get a cheap Arduino with BT and use it to send heart rate data from over it’s USB to Home Assistant using the Firmata integration that already exists. That module, I think, has motion sensing built in so that might open up more possibilities although the first one I’ve thought of involves putting it on a treadmill. That might be the cheapest way to do this. Arduino Nano with BT is €17.50, so not much more than an ANT+ stick.

Automation chat continued here : Automating the pain

1 Like

I love this idea, I have the same dropper on my MTB. This may even be something I do if I success in converting my wife from runner to cyclist!

@Phantomski Great idea to add a temperature and humidity sensor. I switch modes on my Headwind based on the workout - HR sensor for climbs and speed sensor for everything else.

Well, I’ve just bought a kickr climb based on this thread, well I wanted one for ages so perhaps this thread has ‘justified’ the spend :slightly_smiling_face:

I’ll let you know if I agree once it arrives next week.


Much want. We will be moving soon, but the stages bike is on the list for the new pain cave! Probably 2022 given the current rate of our house hunt, but a guy can dream!

1 Like

I found a $90 LCD flat screen and a $99 HDMI stick PC. Now I don’t have to do all my workouts trying to look at my tiny phone screen propped up on a set if mini plastic shelves on top of a spare old rolling cart. That and a $40 Walmart brand industrial fan that blows more air on low than my old fan did on high. The hard part is having to take 10 minutes every morning to get it all set up in the tiny spot of my garage. And then another 5-10 minutes taking it all back down again afterward.


Google Home Mini.
The laptop can barely be heard over the fan and the bike/turbo, even on full volume. This isn’t really a problem listening to Sufferfest soundtracks for a beat though means you can’t hear voice at all when trying to watch something - I get through a number of episodes of whatever box set I’m currently on whilst riding various base/endurance sessions.
With a Home Mini you can cast laptop sound to it as a bluetooth speaker and voila volume issue sorted!

Have you tried starting and stopping fans etc. with it yet? I had that bright idea it was fine to start the fans but I couldn’t turn them off above all the fan noise. The Tacx Windows software I had a promo code for utilised the ‘Cortana’ in windows which sounds like a brilliant idea until it can’t hear you after the fans are on.

I personally like Bluetooth Bone Conduction headphones for music. Same idea. More music at the ear and you can still hear the doorbell.

I’m also a big fan of bone conduction headphones! Though sadly my Aftershokz broke last year and I’ve not yet replaced them. The Home Mini has no issue in picking up my voice over the various noises without having to shout. I imagine that may be effected by speaker positioning, mine is actually within arms’ reach, tho it is also right next to my fan so it’s still competing with the din!

Get some cheap ones on AliExpress. The sound quality is worse than Aftershokz for sure but they’re so cheap they are practically disposable. I just wouldn’t go for the very cheapest. Go up a tiny bit. I don’t care about sound quality training amidst the fan noise etc.

My Mini was about 3 metres behind me on a wall. I also tried Microsoft Cortana via a webcam and that was near. It sucked but I don’t think its noise cancellation skills were great. It’s a shame the Google Assistant isn’t easy to install in Windows. Alexa is. It’s even in the Windows Store. Never tried it though.

Not so much an upgrade as it was going spare when we moved house, but an old Sony 5.1 surround sound system. Thankfully my cave is a detached garage, so I can have a permanent setup with wall mounted TV, turbo / bike / fan always setup etc and I’ve got the rear speakers mounted above/behind me on the beams, with the subwoofer in front of me

Some of the SUF soundtracks are really good. The two that come to mind are when Calypso by Paris Burns kicks in during Power Station and Zombie Front Line by Mantell (the Bat). I’ll stop chewing the stem for a second, grab the volume remote and turn it right up. When the bass starts kicking it helps me dig that bit deeper.


Paris Burns is awesome. At the end of Thin Air their song iOS gives me a whole 'nother gear.

I’ve created my own playlist of just SUF soundtrack songs that I’ve discovered. There’s a lot of really good ones.

I’ve also found a fun music game. Use Shazam or Sound Hound or other music discovery software. Use it on your favorite SUF songs. They won’t always match exactly, and that’s the key. Because when they don’t match I’ve discovered even MORE great songs to use in my own personal playlist.

1 Like