Grbl Controller Manual
I was using Universal G-Code Sender, but have switched to GRBL Controller. The CNC Shield/Arduino is flashed with the latest GRBL. Everything works fine with as far as jogging the axis from the software interface, but again, I just wanted to jog manually with the encoder. I've seen schematics for the EasyDriver/Rotary Encoder/Stepper Motor jogging circuit, but even when I tried to implement that it wasn't working.
Maybe my rotary encoder is bad. I wouldn't mind having to use an extra Arduino UNO, but would like to at least be able to switch easily between the software GRBL Controller mode and manual jog mode. I should've been more specific. So, I have the Arduino/CNC shield flashed with GRBL which allows me to jog the axis via computer interface. But, I would like to be able to jog the axis manually using the rotary encoder.
GRBL doesn't necessarily need to be involved with this, as I could write my own program. I was just wondering if there was anyway to connect the encoder to the shield. There doesn't seem to be any outputs on the shield that would allow you do this.
I think the only way to use the shield and the encoder would be to have a second Arduino. The shield does have SCL/SDA I2C connections so I think technically you could connect it to another Arduino that would be hooked up to the rotary encoder to jog the axis. This, however, seems like an overkill.
I could use an EasyDriver, one for each of the 3 steppers, but this would be a mess of wires, and after it was all connected, I don't think I'd have enough free space on the Arduino to interface the rotary anyway. I'm stabbing in the dark here and my comment might not be useful but couldn't you use the encoder to add a value to the step value. In essence, if the computer adds a step, or the encoder adds a step, shouldn't matter to the arduino. Not being the best at code, I would assume it's an easy thing to do. I can't begin to imagine your code but having two different input to a 'field' shouldn't be that big of a deal. I plan on learning, and doing, the same thing you appear to be doing.
Standard and GRBL Gcode Generator for Image Engraving May 2016 Photo courtesy of Mr. Jeffery Woodcock. Electronic circuit to convert cnc stepper control signals (as output by Mach3, Linuxcnc, and other. Manual editing of saved profiles may cause PEP5 to malfunction. Only certain ports are actual serial ports connected to Grbl/Arduino. If enabled, when you enter a command in the Manual GCode entry, the values are.
Model j bolt obj 2. When I want to use my mill in manual mode, I should just be able to attach a handwheel to an encoder and make it move, OR I could send the instructions via the computer. On a mill, sometimes you just want to move things manually and not with a keyboard. Rotary dial jogging isn't part of GRBL, so you only have two choices here: 1) Simply use the PC to send your jog commands 2) use a secondary arduino that will convert your rotary encoder movements into step / direction pulses. If you're going to attempt the second option, you again, have two options: 1) send the step data directly to the CNC shield, using G-code generated in the encoder arduino. 2) send the pulses directly to the steppers, bypassing the CNC shield altogether by using seperate stepper drivers (Such as the bigeasy stepper driver) If option 1) Simply code the encoder arduino to translate rotary encoder movements to usable g-code and send to GRBL arduino after movements have stopped for Nth amount of time (to keep from overflowing GRBL's buffer, you can't simply stream in a bucketload of 'move 0.01mm' commands and still be useful) If option 2) Simply code the encoder arduino to send the appropriate pulses to the stepper driver (bigeasy) as the encoder generates pulses.