Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Generally I prefer the original ESP-IDF instead of the Arduino framework, because it seems to me less magical and more predictable.
So I tried to make this library compile in ESP-IDF without Arduino. Took much less work than I feared, which I guess shows again that this library is very well made. Thanks to everybody involved.
What I did not implement in ESP-IDF is the SPI interface, because I do not have any experience in that field and at first glance I wasn't able to match the Arduino SPI interface and the ESP-IDF API. Maybe someone with more experience can have a look at that.
But then I'm not actually sure the hardware SPI is actually required, because the SW solution exists.
To make sure nobody uses it accidentally (and to make it compile) I conditionally removed the affected constructors when ESP-IDF platform is configured.
I was able to test it on my ESP32 board with a TCM2208 stepper, but I neither have Arduino in place to try it nor any other stepper driver. So I would probably a good idea if someone with Arduino and other stepper drivers would test it before merging it upstream.