Description
I am the author of FastAccelStepper. This provides for esp32 a high speed stepper motor driver (up to 200kStep/s) supporting up to six parallel active motors. This is enabled by the use of mcpwm and pcnt modules of the esp32. While upgrading to espidf 4.4 a deprecation warning has popped up:
warning: 'esp_err_t mcpwm_isr_register(mcpwm_unit_t, void (*)(void*), void*, int, intr_handle_data_t**)' is deprecated: interrupt events are handled by driver, please use callback [-Wdeprecated-declarations]
NULL, ESP_INTR_FLAG_IRAM | ESP_INTR_FLAG_SHARED, NULL);
Now I have checked for the proposed callback alternative. Apparently this callback only supports the capture events, but not the other great features of the mcpwm module. The library FastAccelStepper relies on interrupts linked to op0_tea_int_st
, op1_tea_int_st
and op2_tea_int_st
.
That's why I request to either NOT deprecate this API call, or add a callback for interrupts related to these opX_tea_int_st
.
BTW: I have noticed, that espressif has dropped the mcpwm modules in all new derivates. This means, espressif does not want its users to use the esp32-derivates for any kind of high performance stepper motor application ?