Closed androot2 closed 5 months ago
This happens already in an include file. Appears to me, that the arduino/espressif libs have an internal issue. Could you please start a new project and just drop these lines into it:
#include <driver/periph_ctrl.h>
#include <driver/pcnt.h>
#include <driver/rmt.h>
#include <soc/pcnt_reg.h>
#include <soc/pcnt_struct.h>
With only included above resources it's compiling without errors.
Thanks for the quick check.
Apparently the issue is related to this line in FastAccelStepper: RMT.data_ch[channel] = 0;
and that error has been already fixed 8 months ago. As this is already long time, I have forgotten about it and do not immediately recognize the old error.
The error was present in 0.30.0 and fixed in 0.30.1 Just the arduino library manager still delivers only 0.30.0. And apparently they are not going to fix it. Please complain here.
Or use something professional like platformio. They are up to date
Thank you. I just installed 30.1 from zip file and it seems working well :)
better to use 0.30.10 Includes some more bugfixes. you can check the Changelog.md
c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\StepperISR_esp32_rmt.cpp: In member function 'void StepperQueue::startQueue_rmt()': c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\StepperISR_esp32_rmt.cpp:410:26: error: no match for 'operator=' (operand types are 'volatile rmt_chndata_reg_t' and 'int') RMT.data_ch[channel] = 0; ^ In file included from C:\Users\andro\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.14/tools/sdk/esp32s2/include/driver/include/driver/rmt.h:20, from c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\common.h:134, from c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\FastAccelStepper.h:5, from c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\StepperISR.h:3, from c:\Users\andro\Documents\Arduino\libraries\FastAccelStepper\src\StepperISR_esp32_rmt.cpp:1: C:\Users\andro\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.14/tools/sdk/esp32s2/include/soc/esp32s2/include/soc/rmt_struct.h:26:3: note: candidate: 'rmt_chndata_reg_t& rmt_chndata_reg_t::operator=(const rmt_chndata_reg_t&)' } rmt_chndata_reg_t; ^
~~~~ C:\Users\andro\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.14/tools/sdk/esp32s2/include/soc/esp32s2/include/soc/rmt_struct.h:26:3: note: no known conversion for argument 1 from 'int' to 'const rmt_chndata_reg_t&' C:\Users\andro\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.14/tools/sdk/esp32s2/include/soc/esp32s2/include/soc/rmt_struct.h:26:3: note: candidate: 'rmt_chndata_reg_t& rmt_chndata_reg_t::operator=(rmt_chndata_reg_t&&)' C:\Users\andro\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.14/tools/sdk/esp32s2/include/soc/esp32s2/include/soc/rmt_struct.h:26:3: note: no known conversion for argument 1 from 'int' to 'rmt_chndata_reg_t&&'exit status 1
Compilation error: exit status 1