Hi Casainho, thank you!casainho wrote: ↑Jan 18 2019 4:28amI think there is a BIG issue with your pull request!! You should make small pull request, one pull request for each feature / bug (you gave the title "Higher cadence" to the pull request but it includes much more!!). That would be easier to make previous discussion of each feature / bug and also the testing. I understand it seems to make development kind of slow but has the advantage to involve the other developers and users, but make things going a bit slow, as for me, I need more time than you to review the code and understand it - going slow can be a good investment, I see the firmware getting more and more complex and can be a big issue if is hard for the users, I think we should take time to think very well the new additions.
I understand that you did previous discuss here some features, but it was to fast and not discuss all of them.
Can you please go back and submit small pull requests??
I think I need to explain something and why the sudden large pull request.
Back before you released the stable version 0.17.0 I was continually working on small pull requests with frequent updates. After my last merged pull request I asked you what to do for the next pull request and you said it would be good to implement the current ramp up (adjustable acceleration). So I started working on that together with another small update that introduced a new sub menu where users can switch to an experimental higher cadence version for the 48 V motor. I was close to submitting that when all of the sudden you released the stable version 0.17.0 even though I was still working on said improvements.
At that point I did not want to submit the pull request as users were downloading the stable version 0.17.0 and IF there were more bugs on 0.17.0 we should ONLY solve that particular bug and not add more firmware that is untested and prone to bugs. If I submitted my code with the new functionality users would be in a constant loop of updates, possible bugs and consequent patches. This is not how the stable version releases should work.
As such I waited and quietly observed this thread where all the great users are constantly giving input (THANKS!). If anyone would report something I was prepared to make a simple and fast change to the version 0.17.0 code and not introduce new firmware with new functions, just work on fixing that particular bug.
In the meantime I worked on a separate branch with the new functions as planned. Naturally, it grew.
Created an account on GitHub and learned everything just for this project and to make it easier for you, Casainho, to receive development from me. I learned how the code works in the last couple of weeks simply by reading line by line, from scratch. Implemented each and every function by my own implementation and with comments all over so that ANYONE can take over and understand the code. My mentality has always been KISS: Keep It Simple Stupid. And NEVER send you code that does not work.
I think if I have made these things and implemented the mentioned functions in less than a week on someone else’s code that I did not understand nor look at less than a week ago, it is really not that complicated for you who is vastly more experienced at this than me to understand the changes. I can even Skype with you or write down every piece of code you find strange and explain my thought process. I have done everything I can to lessen the work load.
This post is large enough. Hopefully you know that I also prefer smaller more frequent pull requests. Please, at least take a look at the code.