-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
big issue in communication with GRBL at least with UART #16
Comments
And what's about usb cdc? |
I have not yet test with USB. |
Ok. |
@mstrens There is a native port of GRBL for ESP32 (not for 6 axes though) https://github.com/bdring/Grbl_Esp32 |
I know the ESP32 project but I wanted a system that can run is stand alone with a display, a touch screen and a sd card. ESP32 does not have enough pins to manage all this. My ESP32 project seems OK (just some more tests to finalise) but the issues are now with GRBL on STM32. With some other people we already made some PCB for the Blue pill and for the ESP32. |
I made some more analysis. |
I have a GRBL controller running on a ESP32. It sent commands to GRBL (e.g. based on a SD file, waiting OK between each command) and it send also "?" every 300 msec (to get the current status).
If I let it communicate with the original AVR 328P GRBL version1.1, it works perfectly.
When I try to let it communicate with STM32 using UART, it does not work.
GRBL gives errors saying that there are syntax errors. So, it seems GRBL is loosing some characrers being sent.
I put a digital scope to analyse the exchanged data and timing.
It confirms that my micro is sending the right data but GRBL replies on regular basis with an error 8:
While the original AVR GRBL is always giving a fast answer to a "?" , the STM32 takes from time to time much more time to reply.
I also noticed that when I sent a command, GRBL takes more and more time to give the OK.
Sometime I get the "O" (from OK) and I get the "K" abour 100msec later.
So it seems something is "freezing" GRBL and it loose some char being sent in the UART.
I do not know if someone uses UART and already noticed such an issue.
This is blocking my project currently.
I can reproduce this issue when I send a file like this (whis is the same as the command generated by my micro controller when I use a joystick to move the motors):
`
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.01 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y0.10 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y1.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
$j=G91 G21 Y3.00 F2000
`
The text was updated successfully, but these errors were encountered: