I've recently purchased a 3020 CNC machine with a large control box, and I'd like to go down the route of using an Arduino loaded with GRBL to control it. I have some familiarity with Arduino's and AVR's generally, using them for robotics projects.
I have the most recent version of GRBL (0.8) loaded on an Arduino, and can communicate with it. I am able to power up the 3020 control box, and spin up the spindle, I've also verified that with the control board powered up, the 3 axis steppers are stopped - which I take as being powered.
What I've then attempted to do is wire the Arduino digital pins to the Parallel pins of the control board such that:
The Axis Pulse outputs of the Arduino Go to the Axis Pulse inputs of the 3020 box
The Axis Dir outputs of the Arduino Go to the Axis Dir inputs of the 3020 box
The Reset button output of the 3020 box goes to the Abort/Reset input of the Arduino.
The control box appears to be based on 2 boards, one with a parallel port + 3 toshiba TB6560 stepper controllers, big heatsinks, a huge toroidial transformer, a pot connected to a 555 for the spindle, and some rectifier + 7812 vreg for the stepper board - roughly described.
Using the standard pinout of GRBL from https://github.com/grbl/grbl/wiki/Connecting-Grbl, and the 3020 "DesktopCNC.doc" - showing the Mach3 pin settings for the board.
The GRBL settings pulse width appears to match the settings shown on the mach3 screenshots in the router manual too - 3us for pulses. Both parallel and Arduino board (an Uno R3 style board) are at 5v.
However, when attempting a couple of basic G code commands to see if anything happens - I get not a peep from the router.
So connected, I see the GRBL greeting, and "?" will show the status. It is all defaults - 9600, using putty, and local echo so I can see what I am doing.
I then try:
G00 X 50
Which I would expect to start moving the X axis from the current position. Nothing happens.
However "?" repeatedly show GRBL "thinking" the coordinates are moving.
I have some routes to diagnose this - but experience from someone else doing the same would help.
My next task will be connecting an oscilloscope to various places in the control board carefully, to see if GRBL is pulsing them...
I think getting this working and documented would be a great alternative to an additional PC, or some Parallel/USB interface that is capable.
Has anyone experience of connecting GRBL to a parallel control board this way?
Am I off the mark in considering the parallel board to be just a GPIO breakout, and that PWM from a mach3 controlled parallel port compared with PWM from GRBL should be the same?
Is there any reason why this definitely wouldn't work as a plan (something I am missing)?