It takes time to get the bugs out of new code. And that is for just 1 single new feature.
With every change or modification you have to update the test firmware on a device, then see if it will do what you want it to do, then you have to see if any new bugs or errors have crept in. IE did adding this break something else? With every change you make it gets more and more complicated. With every feature you add it gets more complicated.
Sometimes you just plain get painted into a corner, and can't get it to do the way you tried to do it. So then you have to start from scratch again.
And everything you do has to be documented, so you don't waste effort and repeat your mistakes. It all takes time, and a whole lot of effort. And all the while people are saying "if I could only get _____"!
|