Today Bluetooth Smart FTMS is the absolute industry standard for indoor trainers and Simcline-V2 is primarily targeted at FTMS! However Simcline-V2 has builtin support for Legacy Wahoo KICKR trainers to meet the needs of early adapters of SIMCLINE!
Pre-2020 Wahoo trainers use Cycling Power Service as a trainer control. Wahoo has added a custom characteristic: A026E005-0A7D-4AB3-97FA-F1500F9FEB8B to CPS to handle the Control Point characteristic. This functionality is builtin with Simcline-V2, you only have to activate it when using a legacy KICKR trainer! Notice that FTMS and Wahoo CPS mutually exclude each other within Simcline-V2!
Make configNimBLE.h settings to comply with your Legacy Wahoo KICKR trainer.
-
Open file, edit and save(!):
/documents/arduino/libraries/Simcline-V2/src/config/configNimBLE.h -
Set Simcline-V2 NimBLE configuration for use of Legacy Wahoo KICKR:
// ----------------------------------------------------------------------------------------
// Uncomment to allow/enable the MITM transfer of FiTness Machine Service data from trainer
// to training App directly. Bluetooth Smart FTMS: This is the industry standard for apps
// controlling the trainer via Bluetooth Smart, and includes power and cadence baked in.
// NOTICE --> NOT all (legacy) trainers support FTMS!!!
//#define ENABLE_FTMS
// ----------------------------------------------------------------------------------------
// Uncomment to allow/enable the MITM transfer of Zwift Virtual Shifting (ZVS) data between
// trainer and training App. ZVS is a proprietary Zwift BLE service used for virtual gear
// shifting and trainer control instead of physically moving your chain across cogs.
// NOTICE --> Requires a trainer with firmware that explicitly supports ZVS!
//#define ENABLE_ZVS
#if (defined(ENABLE_ZVS))
// Uncomment to allow/enable the Legacy ZVS Service for your trainer
//#define TRAINER_WITH_LEGACY_ZVS_SERVICE
#endif
// ----------------------------------------------------------------------------------------
// Uncomment to allow/enable the MITM transfer of Cycling Speed and Cadence data from trainer
// to training App directly. Useful when trainer allows direct pairing of builtin CSC sensor,
// NOTICE --> NOT all (legacy) trainers support CSC!!!
#define ENABLE_CSC
// ----------------------------------------------------------------------------------------
// Uncomment to allow/enable the MITM transfer of Heart Rate Measurement data from trainer
// to training App directly. Useful when trainer allows direct pairing of your HRM band,
// NOTICE --> ONLY Zwift Hub and Jetblack trainers support HRM baked in!!!
//#define ENABLE_HRM
// ----------------------------------------------------------------------------------------
// Uncomment to allow/enable the MITM transfer of Wahoo Trainer Control data from trainer
// to training App directly.
// Bluetooth Smart Wahoo Trainer Control: This is Wahoo’s (legacy) proprietary method of
// controlling trainers, and includes speed/cadence data – still supported by Zwift.
// NOTICE --> Most pre-2020 Wahoo trainers support this instead of FTMS!!!
#define ENABLE_WAHOOCPSWarning: When a new version of Simcline-V2 is installed in Arduino IDE 2 it will override ALL files of a previous version! If you have made modifications in a file that is part of Simcline-V2 --> Make a copy of the file(s) in question BEFORE you install a new library version!