Open rominetb44 opened 1 year ago
We are not developing or supporting Grbl_Esp32 . All of our efforts have switched to FluidNC. FluidNC's telnet works much better than Grbl_Esp32's.
Hello, Thank you for your answer.
So, I'll tried FluidNC.
Regards.
Hi,
I finally managed to fix the issue.
I thunk there is many problems.
The first cames from the low_level library used by WiFiClient which is not thread safe.
The second was the use of a Mutex in Serial.cpp to protect data. But it only prevents from multi-core access. When the threads are in the same core, there is no protection. So I added a semaphore in Serial.cpp and it seems to fix all problem (no more bad or missing characters and no more crash).
Oddly, there is no more crash just fixing the second problem. Maybe an heap overflow, but everytime it was the same exception in lwip_recvfrom (pbuf_free).
I'll share my modification.
Thanks
Hi,
I finally also fixed the first issue and get no more crash (test 20 job of one hour with telnet connection).
Thanks
Hi,
When using telnet to send GCODE for more than 20mn, GRBL crash with this assertion :
This is the decoding code result :
I spend lot of time to dig this issue without resolved it.
It seems to be similar to this issue : https://github.com/espressif/arduino-esp32/issues/4418
Is the TelnetServer class thread safe ?
The most I increase the value of "COMMANDS::wait(0);" in the Telnet_Server::handle() function, longer is the time before crash. Almost 1 hour with COMMANDS::wait(5);
Could you help ?
Thanks