luc-github / ESP3DLib

ESP3D library for Marlin and ESP32 boards
GNU General Public License v3.0
99 stars 32 forks source link

Errors when compiling Esp3DLib and Marlin with esp32-s2 #66

Closed JoseAntonioMG closed 1 year ago

JoseAntonioMG commented 1 year ago

I have designed a 3d printer with Esp32-S2 and have searched for a version of marlin for this purpose, I have found this fork of Marlin:

https://github.com/simon-jouet/Marlin

It works fine, but when incorporating Esp3DLib, compile errors occur, both in version 1.0 and 3.0.

github-actions[bot] commented 1 year ago

Thank your for submiting, please be sure you followed template or your issue may be dismissed. if you deleted the template it is here

luc-github commented 1 year ago

ESP3DLib is not compatible with S2 because it works on different core as Marlin, using a wifi on same core as Marlin will result: when steppers are running to loose steps / hiccups with stepper

Using ESP32 mono core (S2/C3) for your board is bad idea if you want WiFi or BT on your ESP32, but ok if you use it without.

I had discussion with Simon Jouet about that and he agreed - his version was a POC without WiFi

JoseAntonioMG commented 1 year ago

I've managed to compile Simon Jouet's version in Arduino IDE with esp32 core 2.0.0:

Target: Esp32s2 dev module Upload Speed: 921600 USB CDC On Boot: Enabled USB Firmware MSC On Boot: Disabled USB DFU On Boot: Disabled Upload Mode: Internal USB CPU Frequency: 240mhz Flash Frequency: 80mhz Flash Size: 16Mb Partition Schema: Default 4Mb with spiffs (1.22Mb App/1.5Mb SPIFFS) Core debug Level: Verbose PSRAM: Disabled Port: COM24 (Esp32s2 Dev Module)

I don't want to use WiFi, however I don't get a signal on the USB port, nor on the UART port.

My Espressif board is ESP32-S2 Wrover-1 16Mb Flash

I have made some sample sketches to test the development board and they all work:

Wi-Fi WebServer Example Example of USB Serial port output etc etc

Any way how I can compile the source code with a target that allows communication with the board?

JoseAntonioMG commented 1 year ago

I am also interested in buying Esp32-S3, as long as there is a source version of Marlin for this purpose. I have noticed that you have a branch with this specific project, Marlin to compile it in Esp32-S3, is that correct?

luc-github commented 1 year ago

My porting for S3 is lacking the I2S support because I am not familiar with it and need to study it, the S3 I2S API is totally different compare to ESP32 and ESP32-S2

About UART I do not remember any issue during my test but there recent issue raised https://github.com/luc-github/ESP3DLib/issues/65

so there is some compatibility issue for sure

that said on ESP3D I have no issue with basic usage of serial, I did not have dig in yet

JoseAntonioMG commented 1 year ago

I don't use I2S, my development board is simpler and I only use the pins that ESP32 offers. But I would like to know if the source code works on an ESP32-S3, since I would have to redesign my board.

JoseAntonioMG commented 1 year ago

The pinouts of the ESP32-S2 Wrover and the ESP32-S3 Wroom are different, so I have to redesign everything.

luc-github commented 1 year ago

The board I have with S3 MCU use I2S, so I cannot say if imy porting works without I2S as I did not tested fully because i2S is not working

JoseAntonioMG commented 1 year ago

Ok, thank you very much for the information. I will try Esp32S3 and redesign my board. I'll tell you how it worked for me.

luc-github commented 1 year ago

Sure - I close issue then Good luck