esp8266 / esp8266/Arduino

BasicOTA

Open
#8,456 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
16.7k
Forks
13.1k
PR merge metrics
No merged PRs in 30d

Description

ArduinoOTA.onProgress function in example BasicOTA.ino create long log:
`Start updating sketch
Progress: 0%
Progress: 0%
Progress: 0%
Progress: 1%
Progress: 1%
Progress: 2%
Progress: 2%
Progress: 3%
Progress: 3%
Progress: 4%
Progress: 4%
Progress: 5%
Progress: 5%
Progress: 6%
Progress: 6%
Progress: 6%
Progress: 7%
Progress: 7%
Progress: 8%
Progress: 8%
Progress: 9%
Progress: 9%
Progress: 10%
Progress: 10%
Progress: 11%
Progress: 11%
Progress: 12%
Progress: 12%
Progress: 12%
Progress: 13%
Progress: 13%
Progress: 14%
Progress: 14%
Progress: 15%
Progress: 15%
Progress: 16%
Progress: 16%
Progress: 17%
Progress: 17%
Progress: 18%
Progress: 18%
Progress: 18%
Progress: 19%
Progress: 19%
Progress: 20%
Progress: 20%
Progress: 21%
Progress: 21%
Progress: 22%
Progress: 22%
Progress: 23%
Progress: 23%
Progress: 24%
Progress: 24%
Progress: 24%
Progress: 25%
Progress: 25%
Progress: 26%
Progress: 26%
Progress: 27%
Progress: 27%
Progress: 28%
Progress: 28%
Progress: 29%
Progress: 29%
Progress: 30%
Progress: 30%
Progress: 30%
Progress: 31%
Progress: 31%
Progress: 32%
Progress: 32%
Progress: 33%
Progress: 33%
Progress: 34%
Progress: 34%
Progress: 35%
Progress: 35%
Progress: 36%
Progress: 36%
Progress: 36%
Progress: 37%
Progress: 37%
Progress: 38%
Progress: 38%
Progress: 39%
Progress: 39%
Progress: 40%
Progress: 40%
Progress: 41%
Progress: 41%
Progress: 42%
Progress: 42%
Progress: 42%
Progress: 43%
Progress: 43%
Progress: 44%
Progress: 44%
Progress: 45%
Progress: 45%
Progress: 46%
Progress: 46%
Progress: 47%
Progress: 47%
Progress: 48%
Progress: 48%
Progress: 48%
Progress: 49%
Progress: 49%
Progress: 50%
Progress: 50%
Progress: 51%
Progress: 51%
Progress: 52%
Progress: 52%
Progress: 53%
Progress: 53%
Progress: 54%
Progress: 54%
Progress: 54%
Progress: 55%
Progress: 55%
Progress: 56%
Progress: 56%
Progress: 57%
Progress: 57%
Progress: 58%
Progress: 58%
Progress: 59%
Progress: 59%
Progress: 60%
Progress: 60%
Progress: 60%
Progress: 61%
Progress: 61%
Progress: 62%
Progress: 62%
Progress: 63%
Progress: 63%
Progress: 64%
Progress: 64%
Progress: 65%
Progress: 65%
Progress: 66%
Progress: 66%
Progress: 66%
Progress: 67%
Progress: 67%
Progress: 68%
Progress: 68%
Progress: 69%
Progress: 69%
Progress: 70%
Progress: 70%
Progress: 71%
Progress: 71%
Progress: 72%
Progress: 72%
Progress: 72%
Progress: 73%
Progress: 73%
Progress: 74%
Progress: 74%
Progress: 75%
Progress: 75%
Progress: 76%
Progress: 76%
Progress: 77%
Progress: 77%
Progress: 78%
Progress: 78%
Progress: 78%
Progress: 79%
Progress: 79%
Progress: 80%
Progress: 80%
Progress: 81%
Progress: 81%
Progress: 82%
Progress: 82%
Progress: 83%
Progress: 83%
Progress: 84%
Progress: 84%
Progress: 84%
Progress: 85%
Progress: 85%
Progress: 86%
Progress: 86%
Progress: 87%
Progress: 87%
Progress: 88%
Progress: 88%
Progress: 89%
Progress: 89%
Progress: 90%
Progress: 90%
Progress: 90%
Progress: 91%
Progress: 91%
Progress: 92%
Progress: 92%
Progress: 93%
Progress: 93%
Progress: 94%
Progress: 94%
Progress: 95%
Progress: 95%
Progress: 96%
Progress: 96%
Progress: 96%
Progress: 97%
Progress: 97%
Progress: 98%
Progress: 98%
Progress: 99%
Progress: 99%
Progress: 100%
End`

I suggest changing the code to:

```cpp
ArduinoOTA.onProgress([](unsigned int progress, unsigned int total)
{
static unsigned int old_progress;
unsigned int now_progress;

now_progress = (progress / (total / 100));
if (now_progress >= (old_progress + 10))
{
Serial.printf("Progress: %3u%%\r\n", now_progress);
old_progress = now_progress;
}
});
```

Then the output will be like this:

Start updating sketch
Progress: 10%
Progress: 20%
Progress: 30%
Progress: 40%
Progress: 50%
Progress: 60%
Progress: 70%
Progress: 80%
Progress: 90%
Progress: 100%

End

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.