diff --git a/README.md b/README.md index 8e70e541..77ab6f49 100644 --- a/README.md +++ b/README.md @@ -2,20 +2,18 @@ # Grbl (CNC Controller) For ESP32 -![ESP32](http://www.buildlog.net/blog/wp-content/uploads/2018/07/20180718_175943.jpg) +![ESP32](http://www.buildlog.net/blog/wp-content/uploads/2018/08/20180819_170123.jpg) ### Status: Functional Beta (See minor issues below) - - ### Project Overview -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 +This is a port of [Grbl](https://github.com/gnea/grbl) for the ESP32. The ESP32 is a great target for Grbl for the following reasons - **Faster** - Faster step rates and additional features could be added - **Lower Cost** - - **Small footprint** - -- **More Flash and RAM** - A larger planner buffer could be used and more features could be added. +- **Lots of 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. @@ -23,10 +21,12 @@ This is a port of [Grbl](https://github.com/gnea/grbl) for the ESP32. The ESP32 ### Issues / Changes 1. **Direction pin delay** - Not implemented yet. Some drivers require a couple of microseconds after the direction pin is set before you start the step pulse. The original plan was to [use the RMT feature](http://www.buildlog.net/blog/?s=rmt), but that has issues when trying to use it in an Interrupt. **This is typically a option in Grbl that is not used.** -2. **Limit Switch debouncing** is not supported yet. It does not seem to be a problem on my test rigs. It might be better to us an R/C filter for now. +2. **Limit Switch debouncing** is not supported yet. It might be better to us an R/C filter for now. The controller shown above uses R/C filters, which seems to solve the problem. 3. **Step Pulse Invert:** This has not been fully tested. I suggest...leaving $2=0 +### Hardware: +The hardware in the image above is an open source, reference design that is [for sale at Tindie](https://www.tindie.com/products/33366583/grblesp32-cnc-development-board/). The source files are on this [blog post](http://www.buildlog.net/blog/2018/08/grbl_esp32-cnc-development-board/). ### Using It @@ -40,20 +40,16 @@ Note: Unlike Grbl on Arduinos, the controller does not reboot when you connect t Be sure you have external pullup resistors on any GPIO34-39 that you use. These default to door, start, hold and reset functions. -Using Bluetooth: +[Bluetooth wiki page](https://github.com/bdring/Grbl_Esp32/wiki/Using-Bletooth) -- [See the Wiki page](https://github.com/bdring/Grbl_Esp32/wiki/Using-Bletooth) +[SD Card wiki page](https://github.com/bdring/Grbl_Esp32/wiki/Using-the-SD-Card) ### TODO List - RMT. The RMT feature is a ideal for direction and step features, but apparently has issues working in interrupts. See [this forum post](https://www.esp32.com/viewtopic.php?f=19&t=6397&hilit=grbl) and [this blog post](http://www.buildlog.net/blog/?s=rmt). It would be great to get it working. -- Add spindle enable and direction. -- Add SD card. Initially only these features will be supported. - - Mount Card - - List Files - - Run File - - Get job status (bytes send / file size) - - (Optional) Update firmware from SD card +- Add spindle enable and direction +- Wifi +- Web Server with browser based control and setup. ### Credits @@ -69,7 +65,9 @@ I would love to have help with this project. There are many things that need to Start asking questions...I'll put the frequent ones here. - +### Donate? +Please considering donating to this open source project. +[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3ZAF7SF5PCXTN)