Repository navigation
Conversation
Picking another motor protocol hides the calibration box and its Abort button, but only reset the tab: the firmware went on with the sequence, holding full throttle on the ESC wire while it waited for the battery. It is now told to stop, as the Abort button and leaving the tab do.
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
PR Summary by QodoStop Smart ESC calibration when the motor protocol changes
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo
1.
|
…f too The tab marked a calibration as running only once the status after the start came back, so a protocol change in between sent no stop, and the status reply then started the polling with the controls hidden. A start on its way now counts as running for the stop, and a reply that arrives after the stop is dropped.
|
|
Configurator test build ready — commit Download build artifacts for PR #2828 Available platforms (scroll to the Artifacts section at the bottom of the run page):
|



Picking another motor protocol in the Outputs tab while a Smart ESC calibration is running hides the calibration
controls, Abort included, and resets them, but the firmware was not told. It went on with the sequence, holding full
throttle on the ESC wire while it waited for the battery, for up to 60 s, and would have run the calibration if the
battery was connected in that time, with nothing on screen to stop it. Leaving the tab didn't stop it either: the
controls had already been reset, so the tab no longer knew a calibration was running.
The tab now sends the same stop as the Abort button (
MSP2_INAV_ESC_SRXL2_CALIBRATEwith phase 0) and shows thecalibration as aborted, so going back to SRXL2 doesn't show a status that is no longer true. A status reply still on
its way when the sequence is called off is ignored, for the same reason. A start still waiting for the status that
confirms it counts as running too (c74e46d), so a protocol change in that moment, or leaving the tab, also stops it.
Tested
TBS Lucid H7 Wing with an Avian Smart ESC on SRXL2, battery out: calibration started from the tab (waiting in phase 1,
full throttle on the wire), protocol changed to DSHOT300 without saving, phase read back with
MSP2_INAV_ESC_SRXL2_STATUS:The aborted status, the ignored late reply and the start still on its way came after that test, and I've checked them in the code only.
yarn testpasses, apart from the MZTC test that fails on Windows on maintenance-10.x as well (#2826 fixes it).Found while reviewing #2815, which moves the calibration into its own box; the two merge cleanly.