Der innere Aufbau des Prozessor des ESP32 (xTensa LX6) unterscheidet sich grundlegend von einem Atmel328. Deswegen funktioniert die Timer_ISR_Encoder.h auf dem ESP32 nicht.
Beim ESP32 ist aber fast jeder IO-pin interruptfähig. Beim Uno gibt es nur zwei interruptfähige IO-Pins. Beim ESP32 ist alles viel flexibler deswegen finde ich ja auch dass der ESP32 der bessere Ardino-"Uno" ist.
Auf dem ESP32 kannst einfach die NewEncoder-lib nehmen so lange du nicht den zweiten Kern oder auf FreeRTOS-Ebene mehrere Tasks startest.
Das heisst so lange du "klassisches C++" mit Arduino-IDE ohne Multicore spezial-libraries programmierst funktioniert das mit NewEncoder.h
Ja und auch Servos werden da anders angsteuert aber mit einer servo-library die für ESP32 programmiert wurde müsste das problemlos gehen servos anzusteuern.
vgs