This sounds great guys! I agree that the sudden change in direction and/ or value is hard on some systems. We have successfully toasted several brand new (and expensive) ESC's. I make prototypes for a living and we are investing a lot into this project so that's not really a problem. As long as we know why it fails we can correct it. I've had a steep learning curve as to how the code works under certain conditions. Still not on top of things quite yet. Not by a long shot.
Am I right to assume that the heritage from planes or copters makes the code a bit "messy"?
I would, wherever possible, swap out all the notations like "roll" "yaw" "throttle" etc to something simpler like numbers. A few days ago we swapped one of our remotes for a taranis q x7. It was a blessing seeing their approach to "start from scratch" and how intuitive and clean setting it up is. "That stick will do that and output on this channel". Simple!
Hopefully this will be the case one day for future firmwares. Ardupilot and rover has a LOT of potensial in pure robotic applications where, for instance, "yaw" might not make any sense in that particular system.
But, it is a great system now even with its flaws. If you manage to iron these kinks out I'll buy the first round.