Skip to content

bdring/FluidNC

Repository files navigation

Introduction

FluidNC is a CNC firmware optimized for the ESP32 controller. It is the next generation of firmware from the creators of Grbl_ESP32. It includes a web based UI and the flexibility to operate a wide variety of machine types. This includes the ability to control machines with multiple tool types such as laser plus spindle or a tool changer.

Firmware Architecture

  • Object-Oriented hierarchical design
  • Hardware abstraction for machine features like spindles, motors, and stepper drivers
  • Extensible - Adding new features is much easier for the firmware as well as gcode senders.

Machine Definition Method

There is no need to compile the firmware. You use an installation script to upload the latest release of the firmware and then create config file text file that describes your machine. That file is uploaded to the FLASH on the ESP32 using the USB/Serial port or WIFI.

You can have multiple config files stored on the ESP32. The default is config.yaml, but you can change that with $Config/Filename=<myOtherConfig.yaml>

Basic Grbl Compatibility

The intent is to maintain as much Grbl compatibility as possible. It is 100% compatible with the day to day operations of running gcode with a sender, so there is no change to the Grbl gcode send/response protocol, and all Grbl gcode are supported. Most of the $ settings have been replaced with easily readable items in the config file.

WebUI

FluidNC includes a built-in browser-based Web UI (Esp32_WebUI) so you control the machine from a PC, phone, or tablet on the same Wifi network.

Wiki

Check out the wiki if you want the learn more about the feature or how to use it.

Credits

The original Grbl is an awesome project by Sungeon (Sonny) Jeon. I have known him for many years and he is always very helpful. I have used Grbl on many projects.

The Wifi and WebUI is based on this project.

Discussion

We have a Discord server for the development this project. Ask for an invite

Donations

This project requires a lot of work and often expensive items for testing. Please consider a safe, secure and highly appreciated donation via the PayPal link below or via the GitHub sponsor link at the top of the page.