# Grbl (CNC Controller) For ESP32 ![ESP32](http://www.buildlog.net/blog/wp-content/uploads/2018/10/20181007_153826.jpg) ### Project Overview [![Build Status](https://travis-ci.com/odaki/Grbl_Esp32.svg?branch=master)](https://travis-ci.com/odaki/Grbl_Esp32) This is a port of [Grbl](https://github.com/gnea/grbl) for the ESP32. The ESP32 is potentially a great target for Grbl for the following reasons - **Faster** - At least 4x the step rates over Grbl - **Lower Cost** - - **Small footprint** - - **More Flash and RAM** - A larger planner buffer could be used and more features could be added. - **I/O** - It has just about the same number of pins as an Arduino UNO, the original target for Grbl - **Peripherals** - It has more timers and advanced features than an UNO. These can also be mapped to pins more flexibly. - **Connectivity** - Bluetooth and WiFi built in. - **Fast Boot** - Boots almost instantly and does not need to be formally shutdown (unlike Raspberry Pi or Beagle Bone) - **RTOS (Real Time operating System)** - Custom features can be added without affecting the performance of the motion control system. ### Using It The code should be compiled using the latest Arduino IDE. [Follow instructions here](https://github.com/espressif/arduino-esp32) on how to setup ESP32 in the IDE. The choice was made to use the Arduino IDE over the ESP-IDF to make the code a little more accessible to novices trying to compile the code. I use the ESP32 Dev Module version of the ESP32. I suggest starting with that if you don't have hardware yet. For basic instructions on using Grbl use the [gnea/grbl wiki](https://github.com/gnea/grbl/wiki). That is the Arduino version of Grbl, so keep that in mind regarding hardware setup. If you have questions ask via the GitHub issue system for this project. ### Roadmap The roadmap is now [on the wiki](https://github.com/bdring/Grbl_Esp32/wiki/Development-Roadmap). ### Credits The original [Grbl](https://github.com/gnea/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. I only ported because of the limitation of the processors it was designed for. The core engine design is virtually unchanged. The Wifi and WebUI is based on [this project.](https://github.com/luc-github/ESP3D-WEBUI) ### Contribute ![](http://www.buildlog.net/blog/wp-content/uploads/2018/07/slack_hash_128.png) There is a slack channel for the development this project. Ask for an Invite ### FAQ Start asking questions...I'll put the frequent ones here. ### Donation 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. [![](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=TKNJ9Z775VXB2)