HI, we have existing ESP32 firmware.
The main tasks are:
1) Drive a stepper motor via TMC2226 - mostly working
2) Monitor a thermo module for overheating, if overheating, stop motor - mostly working
3) SD card module to store data - not implemented
4) MPU6050 to monitor linear movement in one dimension (Y) and use it for automatic start in case of shaking, or stall guard, in case linear motion is blocked, switch of motor - partially working - with bugs
5) 2 fan motors for cooling driven by transistor coupled to a step down/up converter for voltage smoothing and noise reduction.
6) UI via webserver, mostly working for basic and advanced control, OTA firmware update iffy, the file upload dialogue does not pop up in Android 11 and 12.
Bug we have:
1) The MPU6050 is only recognized by our ESP32 if the ESP32 runs at 240Mhz, not otherwise. We'd prefer to run the ESP32 at 80MHz. For some reason the MPU6050 is not recognized at that frequency.
2) MPU5060 gives non-sensical values and is only read out every few seconds, even though it should be read out at 10Hz.
Mainly the data module, i.e. storing data and pulling it from the SD card module, then displaying it on the UI.
We are trying to get the debugging of the MPU stuff done asap, like this week. Further development has more time, we can ship upgraded firmware to users as firmware file and then have them run OTA upgrades.
More details, please ask. Existing code will be shared of course.