Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spin-bike Merach S01 #3148

Open
fizfaq opened this issue Feb 5, 2025 · 5 comments
Open

Spin-bike Merach S01 #3148

fizfaq opened this issue Feb 5, 2025 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@fizfaq
Copy link

fizfaq commented Feb 5, 2025

Setup
iOS 16.0.2 iPhone
Ipad iOS 17.6
Apple Watch
Spin-bike Merach S01 (also known as S28 in US or GTS in China)
QZ app 2.18 (1016)
Zwift

========================================
1st part - good story.

I just wanted to share my current setup that successfully covers about 90% of the integration needs between Merach and Zwift. This setup works well for both simulation and workout modes

(1) Simulation Mode
The direct integration between Merach and Zwift functions flawlessly. Changes in road slope accurately affect both the target resistance and the bike’s incline. Additionally, I connect my Apple Watch via the Zwift Companion app.

(2) Workout / ERG Mode
For ERG mode, the bike adjusts resistance based on target power and cadence, but this only works through the QZ app. Here’s how I have it set up:

  • Connection Path: Merach → QZ app (on iPhone) → Zwift (on iPad)
  • Power/Cadence/Resistance: In Zwift, I select “Wahoo…” from the options.
  • Hear rate: Apple Watch + qdomyoszwift app → QZ → Zwift

QZ App Configuration. Here are the settings I use

  • Heart Rate Options: Disable HRM from Machinery - ON
  • Bike Options:
    • ERG mode - ON (Important: During Zwift workouts, I turn ERG mode OFF in Zwift and ERG ON in QZ. This allows Zwift to send target power to QZ, which then adjusts the resistance correctly)
    • Min Resistance - 0
    • Max Resistance - 0
    • Zwift ERG Watt Up Filter = 1
    • Zwift ERG Watt Down Filter = 1
  • Advanced Settings: Use Resistance instead of Inclination - ON (This is crucial; without it, the bike only reacts to gear changes through inclination and resistance.)

This setup works fine in most of the cases that I have tested, with the exception of those that I will discuss in the second part.

=========================================
2nd part - bugs or features?

Cases

  1. When the target power remains unchanged while the target cadence fluctuates (e.g., 85 → 65 → 85, with Zwift prompting to stand and sit), QZ does not react at all; QZ keeps the target resistance stable. You can see this in the last part of the workout in Screenshot 1, where the target resistance is set by QZ and adjusted manually.

It seems that QZ only updates the target resistance when there are changes in target power, but does not respond to changes in target cadence.

Image

  1. QZ tends to set a resistance level that is somewhat lower than expected, typically 1-2 steps less. This discrepancy can be observed in Screenshot 2, which compares the target and actual power.

Image

  1. Even with the Zwift ERG Watt Up/Down Filter set to 1, QZ fails to adjust resistance adequately when there’s a significant difference between target and actual watts. Check Screenshot 3 for clarity.

Image

  1. There have been instances where the actual resistance was lower than the target resistance, yet QZ did not align the two. This issue is illustrated in Screenshot 4.

Image

@fizfaq fizfaq added the bug Something isn't working label Feb 5, 2025
@cagnulein cagnulein changed the title [BUG] Spin-bike Merach S01 Feb 5, 2025
@cagnulein
Copy link
Owner

hi @fizfaq i need a debug log to check the power table collected from qz. I suggest to upload a debug log from a erg mode session so i can check everything
thanks

@fizfaq
Copy link
Author

fizfaq commented Feb 5, 2025

@cagnulein
Copy link
Owner

@fizfaq the main issue is that the calibration table inside of qz is only partial. in order to fill it completely you need to spin at least for 20 second for each resistance or at least in the resistance levels that you want to do erg mode. more spins you do and more qz will be precise

let me know!

@fizfaq
Copy link
Author

fizfaq commented Feb 5, 2025

Do I understand correctly that I should just keep using QZ for a few more days and this will solve most of my problems?

What about issue 1 when QZ does not react at changes in Target Cadence or changes of Actual Cadence?

@cagnulein
Copy link
Owner

Do I understand correctly that I should just keep using QZ for a few more days and this will solve most of my problems?

yes more than this, i suggest to do some spins for at least for 20 second for each resistance or at least. QZ will learn on any sessions anyway

What about issue 1 when QZ does not react at changes in Target Cadence or changes of Actual Cadence?

i guess it's linked to the first one. Since qz don't know how the power table changes on different cadences, it doesn't change the resistance level.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants