-
-
Notifications
You must be signed in to change notification settings - Fork 741
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
Change timing scheduler to only run main timer once ADC is done #1535
Conversation
Heads up; would love some testing on this if any of you get a chance |
Just tested this now - still getting those spikes unfortunately, so doesn't look like this has fixed it. |
Yep still the same. I've made sure I rebuilt everything. did git fetch upstream. git checkout testing-fix-for-timer-slot-miss. Firmware version is 2.20.5FE019F 23-01-23. Used 50C base temp and QC charger at 9V. Still randomly spikes to 473 on display. |
Hmm damn. |
Same. Looks like it's more about NOT reproducing it reliably. Tried switching the PSU, it's the same this one is Baseus 65W GAN PD at 20V. Stock 2.18 is not affected. out.mp4 |
…lim/IronOS into testing-fix-for-timer-slot-miss
Attempt 3; |
@Ralim that one worked. No more spikes. V2.20.960382C 24-01-23. Used artefacts from here https://github.com/Ralim/IronOS/actions/runs/3994100685 |
does this still need testing? looks like it's all good now? |
Tested for a couple of minutes just now, latest commit seems to have eliminated the temp spikes 👍 PID might need a little re-tuning though if the heater timings have changed significantly - in my case, seems to be consistently overshooting the target temp by a few degrees with these changes. But looks like the primary issue is resolved 🎊 |
Excelllent; thanks for testing 🤗 Going to merge this in, then look at PID. While the Timings shouldn't have changed much They will have so will re-run testing. |
What kind of change does this PR introduce?
Fix for Random spikes in temperature to 473C on Pinecil V2 #1485 (I hope)
What is the new behavior (if this is a feature change)?
Changes from using a fixed timebase for the control of the main heater to instead waiting for ADC to finish.
This means if IRQ's are delayed (during I2C for example) it wont over-run into the next time slot and cause ADC to mis-read.