On the subject, what function does the software in an ESC actually perform? ISTM that the unit's job is to output a power to a motor that matches the amount commanded via a simple variable pulse-width incoming digital control signal. It used to be done by fairly simple hardware rather than a processor - but processors are cheaper than discrete logic these days so many things are achieved via software that used to be done in hardware. The most clumsy software could achieve that in milliseconds on a slow processor, so I would not have thought there is much to play around with in software, any more than one software in a calculator could make it give better answers than another - the power to the motor is either correct with respect to the input command or it is not. The only thing I can think of is that the commutation for the brushless motor is also done in software (is it?), in which case I suppose better acceleration/deceleration could be achieved by dynamically changing the "advance/retard" (commutation angle, like rotating the brushes on a conventional DC motor) - though I imagine the optimum would be pretty heavily dependent on the model of motor and loading (propeller) - but I suppose it would be possible for the software to "learn" after a few acceleration/deceleration cycles, and maybe that's the difference being touted. Much as a modern car's EMU computer "learns" the characteristics of the individual motor it is controlling. Anyone know whether I'm on the right track?