Yes, here’s a recent thread where @mwinter and I tried and failed https://community.simplefoc.com/t/speed-limit-on-b-g431b-esc1-with-2212-920kv-motor/6488
@Anthony_Douglas has also tried various strategies without success.
Have you tried SmoothingSensor yet? It’s easy to use. Download the drivers repository and #include SimpleFOCDrivers.h and encoders/smoothing/SmoothingSensor.h, declare it like SmoothingSensor smooth(sensor, motor);
and then in setup(), do motor.linkSensor(&smooth);
instead of linking the HallSensor directly. It used to be you also had to set smooth.phase_correction for hall sensors, but if you use the dev branch version it’s done automatically now with a specialized constructor.
Current sense would allow you to use the sensorless flux observer, which is what mwinter eventually settled on. It’s tedious to tune the parameters for it, but works well when you only need velocity control.