For years now, Grbl has been the gold standard in G-code interpretation and DIY machine control. It’s powerful software that can be used to control everything from 3D printers to CNC mills. The standard implementation runs on Arduino development boards, which is impressive in its own right when you consider their limited processing power. Now you can have that same capability on an ESP32, thanks to this project from Bart Dring.
Virtually all modern CNC (Computer Numerical Control) machines take their instructions from G-code commands. Those commands are individually very simple — something like “move the tool down 1 mm in the Z-axis.” But, when hundreds or thousands of commands are chained together, very complex operations are possible. That process is the key to all 3D printing and CNC machining. Dring’s code makes it possible to run all of that on an ESP32, which has a number of advantages when compared with an Arduino.
The most obvious advantage is the potential for sending G-code commands over WiFi or Bluetooth. But, the ESP32 is also fast, very affordable, and compact. Most of the standard Grbl features appear to be working already, and Dring’s custom breakout controller board includes stepper drivers, limit switches, touch probe, and outputs for the coolant, spindle, and control switches. The code is still early in the development and testing process, but you can go ahead and start using it now.