Add MRK-S36C device quirk for resistance-level ERG control - #4827
Merged
Conversation
The MRK-S36C bike is a generic FTMS device with no matching quirk, so it defaulted to ergModeSupported=true. When an app targets ERG mode (SetTargetPower) over Dircon, ftmsbike's power routing only forwards the request when the bike is non-FTMS or a power sensor is configured, so the target power request was silently dropped and resistance froze at its last value instead of following the workout. Detect the bike by name and force resistance-level mode with ergModeSupported=false, matching other MRK bikes, so target power is converted to a resistance level via the erg table instead.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ergModeSupported = true.SetTargetPower,ftmsbike's power-request routing (ftmsbike.cpp:578) only forwards the request when the connected client is non-FTMS or a power sensor is configured. For this bike neither was true, so the target power request was silently dropped, and resistance froze at its last simulation-derived value instead of tracking the workout.SetTargetPowercommand.Fix: detect
MRK-S36C-*by name and setresistance_lvl_mode = true+ergModeSupported = false, consistent with other MRK bikes (MRK-S28), so target power gets converted to a resistance level via the erg table instead of being forwarded/dropped as a native ERG command.Test plan