Creating a TR compatible Bluetooth accessory

Hi, I do my training on an old spinning bike that I fitted with some Assioma power pedals. I like the bike, but it is purely mechanical without any smart features whatsoever and I’m really curious about this whole ERG-mode thing. Since I am an electronics engineer by profession, I thought it would make a fun project to add ERG-mode to the bike myself. As a first step I’d like to make a little device that just indicates if I need to increase or decrease power, kind of like the little dot in the app.

I have some experience working with Bluetooth devices, but not bike or trainer specific stuff so I’m wondering if anyone knows what BLE service(s) and profile(s) I would need to implement for the TR app to pick up my device in the first place?

I did some research and here is a page with all the Bluetooth GATT specifications: https://www.bluetooth.com/specifications/gatt/. To my understanding, most trainers probably use the Indoor Bike parts of Fitness Machine Service (FTMS) and power meters probably use the Cycling Power Service (CPS). So I guess the app connects to smart trainers and sets the power target by the FTMS’s Set Target Power Procedure(?)

Since the app is getting my power number over BLE from my Assioma pedals in my current setup, perhaps this device of mine needs to jump in the middle there and read out the power number from the pedals first and then expose them again as part of the FTMS? Or is there an easier way?

I hope there are some fellow cycling/electronics nerds who have looked into this! :slight_smile: