Serial Port Usage - bdring/FluidNC Wiki
The serial port is most basic connection. It can fully control FluidNC and it also receives useful messages before other interfaces like WiFi and Bluetooth are running. If the ESP32 crashes, detailed information about the reason is sent there.
The default settings are 115200 baud, N-8-1. One of the easiest serial terminals to use is the one that comes with the Arduino IDE. You get to it via the magnifying glass icon and you need to adjust the settings in the lower right per the image below.
You can change FluidNC's baud rate in the config.h file. You will need to recompile. It is not recommended if you are just getting started. The default baud rate for the ESP32 is 115200. It uses that rate when before it runs your code and after a crash. It is nice to be able to read that text. Otherwise It should work fine. I would try the standard 115200, 230400, 460800, 921600 rates first. I have run rate up to 1Mbps with success in a desktop environment.
If you want to reboot to see the startup info, send $bye or click the boot button on your module.
Serial Port Rebooting ESP32 (Technical Details)
In order for you to be able to automatically program an ESP32 through the serial port. The serial port must be able to reboot the ESP32 and tell it to enter bootloader mode. It does this using a sequence of pulses on the RTS and DTR signals coming out of the USB to serial chip on the dev kit module.
It does this using this circuit...
And this sequence...
- RTS low, DTR high = Reset low, GPIO0 high -> Reset the chip
- RTS high, DTR low = Reset high, GPIO0 low -> Switch to boot mode
- RTS high, DTR high = Reset high, GPIO high -> normal operation
If your serial terminal does the first step of this when opening a connection, it will reboot the ESP32. If you are trying to connect to a running ESP32 and don't want to reboot it, you must make sure the serial terminal does not do this.
- Arduino IDE (Windows) Does not reboot the ESP32
- PlatformIO (Windows) Inconsistent, but usually reboots the ESP32
- fluidterm Does not reboot the ESP32
- GCode senders
- Some reboot it the ESP32
- Some send a Grbl reset command
- Some do neither.
If you are having issues with dropped USB connections, keep in mind the firmware and the ESP32 have very little to do with this connection. There is a USB to serial chip that maintains the connection and turns it into serial data. The firmware and ESP32 cannot cause a drop in the USB connection. If there is a problem in that area, the transfer of data may stop, but the USB connection is not affected. The firmware does not know that the connection was lost.
The typical problem is related to electrical noise, physical connection or voltage drop. Be sure you are using a high quality cord that is as short as possible. Tie it down, so it cannot wiggle at the connector. Consider using a powered USB hub to make sure it have plenty of voltage. Route it away from any wires on your machine, especially motor wires and power wires.
We are sorry, but we can only provide limited help with this problem.