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
[BUG] Schwinn/Bowflex + SS2k + QZ - inconsistent auto-resistance in Zwift #500
Comments
hi @eMadman i checked the log. The main issue is this one: ok now let's talk about the schwinn setup: In the log i saw that all the resistance values that comes from the ss2k during the ride are all negative value and i think this is releated to the startup issue (also the gear one). So i guess, we can try to do a thing just to have a simplier setup: start the QZ session with your bike resistance set to 1. In this way the SS2K and QZ should be more or less aligned and let's see if it will go better. @marklogan17 @kadaan what do you think? |
also a question @eMadman : zwift is paired with QZ or with the SS2k? in this scenario it has to be linked with QZ |
@cagnulein This did work with SS2k for a while, but I'm noticing that the resistance gains are very small. Partway through the ride, it sent resistance up past 90 which was very unexpected. QZ is paired with SS2k and the IC4 |
@eMadman ok I need always the debug log every time you did a try to understand the behavior |
Apologies - I thought I included the log yesterday! Here you go |
Ok probably it's all releated to "Shift Step" setting in QZ. You have to found a step number that matches with your bike know. You can find it empirically putting the knob to 0, and then manually rotating it to the max. If your step setting is ok you should see on QZ the value that you have to the bike. If the resistance value on QZ is too big (as is now) means that you have to decrease this setting (for example you can start from a 400 instead of 900). Every change of this setting requires a QZ restart. Let me know @eMadman P.S. the 900 actual value is refereed to the echelon bike |
@eMadman did you solve this? |
@cagnulein I haven't been able to give this the time to generate the log files. My last attempt, the shift step setting didn't change anything. Best I can describe it as is that it appeared to me that QZ wasn't sending updates to SS2k - either at all or in a timely way (I'd need the logs to help figure that out). When I lower shift steps to around 400 on the SS2k (eliminating QZ from the equation), I find the erg responses to be too slow. Shifting up or down, for example only changes the watts by ~5-10. Bigger steps should make more drastic changes but perhaps I'm misunderstanding how that works. I do wonder if, QZ not reporting a '0' value for resistance to SS2k has anything to do with it. Lowest I can get with my knob fully zeroed out is 5 on the QZ dashboard. To date, I haven't tried the peloton integration due to the time needed to test it properly. I'll try for a few hours on Sunday to capture logs for Zwift and for peloton for you. |
@eMadman eliminating QZ from the equation, you should find a shift step value that allow you to change only 1 resistance point to your bike when you use the plus/minus button on the SS2K. If you find this, then you have to fill this value in QZ and it should work properly. |
@eMadman maybe on the SS2K forums people are using it with schwinn (without QZ)? If so, you could ask them what their shift step value is. As Roberto pointed out, its really meant to give SS2K the information it needs so that it can add one level of resistance. |
@marklogan17 , @cagnulein - this is eye-opening! I'll get back to you guys this weekend. Will try to get an SS2k into my buddy's hands for next week as well - he's got an IC4 as well and can help with testing. |
@cagnulein @marklogan17 Setup: IC4, SS2k, Peloton Conversion Offset = -10, Schwinn calculation On. LMK if you need other settings I had the shift step set to 300, although I did try changing that to 400 late in the ride to no effect. I also unplugged and replugged the SS2K at some point and it seemed to connect again (the blue LED stopped blinking anyways). The shifter b QZ log attached. I didn't get an SS2K log unfortunately |
This looks suspicious: |
@rjbutler there is a major issue on this log: at the time 15:41:25 the SS2K disconnects from the QZ app and it doesn't connect anymore. Maybe a bluetooth glitch?
also about the -257 thing: i fixed this because SS2k was sending -1. Anyway the issue is that SS2K was probably in the middle of 2 resistance levels. Infact QZ wrote to reset but the SS2K answered back with -1. Anyway i fixed the wrong -257 thing but it was completely unrelated from the disconnection issue. |
@cagnulein I tried power cycling the SS2K at some point during that log and initiated a bluetooth scan but it didn’t reconnect. Should it have? |
Yes qz after is connected to ss2k will try forever to connect to it if it lost the connection. If it happens again let's annotate the time of the events. So we can understand more. |
@cagnulein Another couple of logs, both QZ and SS2K this time. It disconnected again at I think 15:29, from the SS2K side it looks like it immediately reconnected again but QZ never adjusted the resistance again. I tried powercycling the SS2K a couple of times a little later but no luck It's also pretty consistently overshooting the target resistance. I'm set for the midpoint of the Peloton range and when it's working it's setting the the resistance level so the Schwinn calculated resistance is 3-5 points higher than the Peloton target tile. |
@rjbutler didn't use the newest version that i send you yesterday? About the overshooting: the calculated schwinn resistance is a metric calculated from your wattage so i guess you should try to look at the actual resistance level in the display of your bike. Anyway in the log the target resistance and the resistance on the SS2K always matches, so for sure it's not an issue of the chain peloton->qz->ss2k and that's a good start :) |
I haven't had any bluetooth disconnections at all but my SS2K version is fairly out of date now. If I get some time later this week I'll build the new QZ version and give it a try. I'm nervous about updating SS2K since its been stable. |
@marklogan17 i don't think it's reletated to QZ. SS2K just disconnects itself. Maybe it's better if @rjbutler could try with your old firmware just to understand if it's hardware or not ;) |
I'm in LA until Wednesday. When I'm home I can send the firmware I'm using. |
@cagnulein the new version didn’t show up in Test Flight, not sure why. On the overshooting, I’m comparing the Peloton Resistance tile to the Target Peloton Resistance tile. The Peloton Resistance tile is 3-5 points higher. I’ll note the time and values next workout and compare to the logs. |
@rjbutler write me to roberto.viola83 at gmail.com your email. maybe i sent it to another one :D |
@cagnulein - apologies for my absence on this ticket. I finally managed to get some testing time in last night as well. I managed to get resistance to auto follow in a peloton power zone ride for perhaps the first 5-10 minutes in this ride, but I found that it stayed out of sync with the callouts in the ride (possibly an issue with the ride's metadata?) and needed to be corrected upwards throughout the ride with the shift up buttons in QZ. Towards the last ~5 minutes or so of this log, I realized it wasn't adjusting resistance down at all debug-Sun_Dec_5_17_53_04_2021.log I hope it's useful. |
I will check the log tomorrow. For the delay you have to use the peloton
offset tile, it's a problem in the peloton api (they aren't precise also
for the peloton bike owners )
Il giorno lun 6 dic 2021 alle 18:55 eMadman ***@***.***> ha
scritto:
@cagnulein <https://github.com/cagnulein> - apologies for my absence on
this ticket. I finally managed to get some testing time in last night as
well. I managed to get resistance to auto follow in a peloton power zone
ride for perhaps the first 5-10 minutes in this ride, but I found that it
stayed out of sync with the callouts in the ride (possibly an issue with
the ride's metadata?) and needed to be corrected upwards throughout the
ride with the shift up buttons in QZ. Towards the last ~5 minutes or so of
this log, I realized it wasn't adjusting resistance down at all
debug-Sun_Dec_5_17_53_04_2021.log
<https://github.com/cagnulein/qdomyos-zwift/files/7662563/debug-Sun_Dec_5_17_53_04_2021.log>
I hope it's useful.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#500 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAALYWF3N3YQAZHBUAUTE7DUPT2HJANCNFSM5IFX5PDQ>
.
--
Roberto Viola
Software engineer and open source enthusiast
http://robertoviola.cloud
|
@doudar i totally agree but i don't know if it will be another battle with a closed source app :) anyway this is the log from my morning ride Do you have any tag to quickly find something coming from bluetooth (ifit) ? EDIT: in the meanwhile i'm also contacting iFit app to understand if it's possibile to turn that off somehow |
Link to a log file where the SS2K stopped tracking a PZ ride. I did try to reboot the SS2K without success. I'm not sure if it's supposed to reconnect and start working again in ERG mode ? |
@rjbutler in that log i saw: here is the last good frame from SS2K Tue Apr 19 17:54:37 2022 1650416077621 Debug: /Users/cagnulein/qdomyos-zwift/src/schwinnic4bike.cpp virtual void schwinnic4bike::resistanceFromFTMSAccessory(int8_t) "resistanceFromFTMSAccessory" 1 then there is no events until Tue Apr 19 17:55:11 2022 1650416111279 Debug: /Users/cagnulein/qdomyos-zwift/src/bluetooth.cpp void bluetooth::debug(const QString &) "smartspin2k::errorServiceCharacteristicWriteError" from this moment on, QZ should tried to reconnect to it but I can't see it. I added a force disconnection when this happens. Let me know if it happens again. |
I just looked at the log as well. Unfortunately not much else info. For some reason the BLE stack keeps locking up and we need to figure out the root cause. It's probably tweakable in the SS2k code somewhere........ The only other thing to do would be to detect this in SS2k and re-init the BLE stack. @h2zero, is there an easy method to determine if BLE is halted/unresponsive? |
i just had a perfect 75 minutes ride with qz and vzfit. what did i changed? the only thing that i done is tightening up the ss2k to my bike because i saw that it was a little "soft". |
Most of my rides work fine. I think I had 8 successful rides before the most recent failure. Typically 45 minutes, some 30. |
@doudar The stack resets itself when this occurs, there is a callback that is handled by the library but I have not exposed it (TODO). If you want to experiment you could modify the code in NimBLEDevice.cpp for testing: https://github.com/h2zero/NimBLE-Arduino/blob/fc746b173ae4759d55f862fff2ee28537ad98c3b/src/NimBLEDevice.cpp#L759 |
another 85 minutes without issues! So I'm quite sure that my issue was mechanical instead of software! I will keep you posted! |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
FWIW, I've been doing 45 minute training programs from TrainerDay 4-5 times a week for several weeks with no major issues. Just a couple of things I've noticed that could be improved
But overall, it's been fantastic. Thanks for all the effort @cagnulein, @doudar and everyone else who has worked on this. |
is this happen on ERG mode? If so i don't know if @doudar would like to do it directly on the firmware or it's better to do this on QZ side. Probably both
mmm I don't know: usually when I finish a workout, i have the habit to keep pushing at that rate until I decided to stop and manually decreasing it...I think this behaviour will break the legacy compatibility with the userbase....maybe a setting?
Great! In the last period I'm bike commuting every day, 4 times a day so I'm running the most of the time in my spare time, that's why I didn't post any news about this :) |
I added 2 new settings for min and max resistance allowed to the SS2K. It happened, during a GPX ride, that QZ tried to set a too high restance to SS2K leading to a crash. |
Awesome! |
New release of SS2K implementing LittleFS and more app support. Manual install is probably required. https://github.com/doudar/SmartSpin2k/releases/download/2.6.26/firmware.bin |
Great! I will give it a try the next weekend!
Il 26 giu 2022, 18:14 +0200, Anthony Doud ***@***.***>, ha scritto:
… New release of SS2K implementing LittleFS and more app support.
Manual install is probably required.
https://github.com/doudar/SmartSpin2k/releases/download/2.6.26/firmware.bin
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
updated now, i'm giving a try. Sorry for the delay! |
It sounds like it’s time for me to give it another try. (I gave up after
only a few tries because of too many times losing connection). Are there
instructions available for updating to the new firmware?
Thanks,
Jana
On Sun, Jul 17, 2022 at 2:36 AM Roberto Viola ***@***.***> wrote:
@doudar <https://github.com/doudar> @rjbutler
<https://github.com/rjbutler> I just did a 1:15h session with the new
firmware and the last qz 2.10 and everything works perfectly! Good job!
—
Reply to this email directly, view it on GitHub
<#500 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AONHDMIEWFEKVCWVUTVOVK3VUPH2VANCNFSM5IFX5PDQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
--
Jana Bouc
Website and Blog <http://janabouc.com>
Instagram <https://www.instagram.com/janabouc/>
Facebook <https://www.facebook.com/jana.bouc>
|
@janabouc connect to the ip of the SS2K via browser and follow the last lines of this #500 (comment) |
This link on the wiki should help you. https://github.com/doudar/SmartSpin2k/wiki/Loading-Software#updating-your-existing-firmware I'd recommend looking at the releases section on SmartSpin2k and uploading the newest firmware.bin |
@doudar I see in releases newer than 2.6.26 that there is a LittleFS.bin included. Is the installation method any different with those? |
Everything should be the same. The newer binaries will automatically reformat to littlefs. I would recommend the binary from this morning though as we fixed a problem with ERG mode that could affect stepper position limiting. |
So just flash firmware.bin and ignore the littlefs.bin? |
Yes. It should download the files from the internet after flashing. |
Newest binary (22.9.5) is now live on the OTA (automatic update) server as well. |
I tried out the latest build from this morning with QZ on my Echelon. Was 'ok'. Lost sync a bunch of times. I had to stop auto resistance and start it again a few times to get QZ and SS2K to re-sync what the current resistance was. Made it through the 30 minutes but had to play around four or five times. It felt like maybe the motor wasn't turning as much as SS2K was telling it to. I'm not going to create an issue at this point as I want to go through and make sure all my settings are correct, find the best config, etc and make sure I've got time stamps in the logs to track it down if its still happening. I did a quick test with shift steps at 950 instead of 900 and in the minute or so of changing resistance up and down it seemed to be more consistent. I'm out of town until Saturday now so will likely be Monday before I try it again. |
Describe the bug
Power, speed and cadence continue to appear in zwift
To Reproduce
Setup:
Steps to reproduce the behavior:
Expected behavior
Log FIle
https://drive.google.com/file/d/1EAYfuIV3rmlQK09TAkf3xEW-s5HDHWtv/view?usp=sharing
The text was updated successfully, but these errors were encountered: